CS 372 - Finals

Pataasin ang iyong marka sa homework at exams ngayon gamit ang Quizwiz!

EstimatedRTT value

(1-a) EstimatedRTT + a * SampleRTT typical value a = 0.125

Select the proper equation for TCP's calculation of EstimatedRTT.

(1-a) EstimatedRTT + a * SampleRTT typical value a = 0.125

CIDR

(Classless Inter-Domain Routing) address includes specification for number of bits to use for the netmask

Detecting congestion

- inferred by end-to-end systems - network core assistance

Network congestion costs

- long delays from queuing in router buffers - dropped packets - slow ACKs cause unnecessary retransmission - eventual congestion collapse

Datagram networks

- no call setup at network layer -no state of end-to-end connections is kept in routers -no network-level concept of "connection"opackets forwarded using destination host address

Congestion control goals

- optimize utilization - handle causes of network congestion - detect congestion - avoid congestion - react to congestion

Optimizing utilization

- smarter timeouts - better sliding-window size management - more efficient acknowledgements

TCP avoiding congestion

- timeouts -sliding windows - f receiving application drains a few data bytes, receiver will advertise a small window , and sender will immediately send small segment to fill window

Connection/connectionless service

- virtual-circuit network provides network-layer connection service -datagram network provides network-layer connectionless service

TCP's "Slow Start" mode allows for a very slow start, but a rapid increase (exponential), in the size of the congestion window. What is its purpose?

-This allows TCP to rapidly probe for available bandwidth in the core. - This allows TCP to rapidly infer the level of congestion in the core. - This allows TCP to rapidly adjust its CongWin to a size that will not impact congestion. - This allows TCP to start sending amounts of data that do not significantly impact congestion, if it exists.

List and describe the 4 steps of the TCP connection takedown.

1) FIN: Client host sends a segment to the Server host with the FIN bit set, the ACK bit cleared, and its next sequence number. 2) FIN ACK: Server host sends a segment to the Client host with the ACK bit set and Finbit cleared. The ACK number is the next expected sequence number. (This is anormal TCP ACK segment). 3) FIN: Server host sends a segment to the Client host with the FIN bit set, the ACK bitcleared, and its next sequence number. 4) FIN ACK: Client host sends a segment to the Server host with the ACK bit set and theFIN bit cleared, and the ACK number is the previous segment's sequencenumber plus one. (This is a normal TCP ACK segment)

List and describe the 3 steps of the TCP connection setup

1) SYN: Client host sends a segment to the Server host with the SYN bit set, the ACK bit cleared, and some pre-generated sequence number. 2) SYN ACK: Server host sends a segment to the Client host with the SYN and ACK bitsset, a locally generated sequence number, and an ACK number equal to the firstsegment's sequence number plus one. 3) ACK: Client host sends a segment to the Server host with the ACK bit set, the SYN bitcleared, and the ACK number is the previous segment's sequence number plusone. Note that this segment may contain actual application data in the payload.

Select the appropriate new CongWin sizes for the following TCP Reno congestion scenario. Assume ssthresh is initially set to 8 MSS: 1. Connection Established with new server host. CongWin = ___ 2. ACK(s) received from first segment set. CongWin = ____ 3. ACK(s) received from next segment set. CongWin = _____ 4. ACK(s) received from next segment set. CongWin = _____ 5. ACK(s) received from next segment set. CongWin = ____ 6. ACK(s) received from next segment set. CongWin =_____ 7. Timeout occurs. CongWin = ____ ssthresh =______ 8. ACK(s) received from next segment set. CongWin =______

1. 1 MSS 2. 2 MSS 3. 4 MSS 4. 8 MSS 5. 9 MSS 6. 10 MSS 7. 1 MSS, 5 MSS 8. 2 MSS When timeout occurs, Limit set to CongWin/2 and CongWin is set to 1 MSS. Since congwin is linear, once it's reached its limit (8), it gets incremented by 1.

Select the appropriate new CongWin sizes for the following TCP Reno congestion scenario. Assume ssthresh is initially set to 8 MSS: Connection Established with new server host. 1. Connection Established with new server host. CongWin = ___ 2. ACK(s) received from first segment set. CongWin = ____ 3. ACK(s) received from next segment set. CongWin = _____ 4. ACK(s) received from next segment set. CongWin = _____ 5. ACK(s) received from next segment set. CongWin = ____ 6. ACK(s) received from next segment set. CongWin =_____ 7. Triple Duplicate ACK occurs. CongWin = ____ ssthresh =______ 8. Another ACK received. CongWin =

1. 1 MSS 2. 2 MSS 3. 4 MSS 4. 8 MSS 5. 9 MSS 6. 10 MSS 7. 8 MSS, 5 MSS 8. 9 MSS When a triple duplicate ACK occurs, Limit set to CongWin/2 and CongWin set to Limit. Since congwin is linear, once it's reached its limit (8), it gets incremented by 1.

Fill in the empty information: IPv4 CIDR Address: _____________ Netmask (dotted decimal): 255.255.240.0 Network Address: 128.193.224.0 Broadcast Address: _____________ Host Number: 500 Total # Host Addresses: _____________

1. 128.193.225.244 /20 2. 128.193.239.255 3. 4096-2 = 4094

Give the steps undergone when a new device enters a DHCP-enabled network

1. A new device attaches to a network. It broadcasts a "DHCP discover" message on the MAC broadcast address later we'' learn this FF:FF:FF:FF:FF:FF:FF, containing its own MAC address. 2. A DHCP-enabled server will pick up this message and send back a "DHCP offer" message to the MAC address of the new device. 3. The DHCP-enabled server, in response, sends a "DHCP acknowledgement" message, including a new complete IP address for the device, to the device's hardware address. 4. The new device sends a "DHCP request" message, again to the MAC broadcast address, requesting an IP address.

Steps in DHCP

1. Arriving host has no IP address > broadcast "DHCP discover" with hardware address 2. DHCP server responds to host hardware address > DHCP offer 3. Host request IP address > DHCP request 4. DHCP server sends complete IP address > DHCP acknowledgement 5. DHCP also returns > address of first-hop router for client > name and IP address of DNS server > netmask

Convert the following 32-bit binary number to a dotted-decimal IP address format. 10000000 11000001 00000100 01110000

128.193.4.112

How many host addresses can be assigned in each subnet?

16,382 host addresses in each subnet. Each of the four subnets has an 18-bit netmask, which leaves 14 bits for host numbers. Asnwer: 2^14 = 16,384 so 16,384 − 2 = 16,382.

The minimum size of the IP header is ________ bytes.

20

Assume a TCP sender is continuously sending 1,230-byte segments. If a TCP receiver advertises a window size of 7,679 bytes, and with a link transmission rate 11 Mbps an end-to-end propagation delay of 10.1 ms, what is the utilization? Assume no errors, no processing or queueing delay, and ACKs transmit instantly. Also assume the sender will not transmit a non-full segment. Give answer in percentages, rounded to one decimal place, without units (e.g. for an answer of 10.43% you would enter "10.4" without the quotes).

25.4

HostA has established a TCP connection with HostB in a remote network. HostA is sending packets to HostB. Assume we have configured TCP, somehow, to ACK every segment (no ACKing every other segment). Assume that the timeout is the same for all packets. HostB's "window size" is 20000 bytes. HostB has already received and acknowledged everything sent by HostA's application up to and including byte #2,157. HostA now sends segments of the same application data stream in order: P: 266 bytes Q: 436 bytes R: 471 bytes Suppose that segments P, Q, and R are received, but the acknowledgements for segments P and Q are lost. If there are more segments waiting to be transmitted, what is the sequence number of the next segment transmitted after the ACK for segment R is received?

3,331

Hostmask

32 - x = .. bits for ex: x = 22 so 10 bits 00000000 00000000 00000011 11111111

Given a nodal delay of 32.7ms when there is no traffic on the network (i.e. usage = 0%), what is the effective delay when network usage = 7.9% ? (Give answer is miliseconds, rounded to one decimal place, without units. So for an answer of 0.10423 seconds you would enter "104.2" without the quotes).

32.7/ 1 - 0.079 = 35.5

Given a 4 Gbps link with TCP applications A, B, and C. Application A has 15 TCP connections to a remote web server Application B has 4 TCP connection to a mail server Application C has 11 TCP connections to a remote web server. According to TCP "fairness", during times when all connections are transmitting, how much bandwidth should Application C have? (Give answer in Mbps, rounded to one decimal place, without units. So for an answer of 1234,567,890 bps you would enter "1234.6" without the quotes.)

4 Gbps/ 15 + 4 + 11 = 133.33 Application C = 11 connections x 133.33 = 1,466.7

The maximum size of the IP header is _______ bytes.

60

Theoretically, what is the maximum number of bytes of "payload" (actual application data) that can be transmitted in an IP datagram carrying a TCP segment?

65495 bytes. The "length" field of the IP datagram header is 16 bits, so the maximum datagram size is 65,535 bytes. The TCP header and the IP datagram header are each at least 20 bytes. 65535 - 40 = 65495 (It would not be practical to send a datagram of this size through the internet)

Given a effective delay of 54ms when network usage is 27%, what is the effective delay when network usage = 45% ? (Give answer is miliseconds, rounded to one decimal place, without units. So for an answer of 0.10423 seconds you would enter "104.2" without the quotes).

71.672 = 71.7 ms

Convert he following 32-bit binary number into hexadecimal format. 10000000 11000001 00000100 01110000

80 C1 04 70

Imagine a mythical set of protocols with the following details. Maximum Link-Layer data frame: 1,004 bytes Network-Layer header size: 17 bytes Transport-Layer header size: 16 bytes What is the size, in bytes, of the MSS? (Give answer without units)

= 1004-17-16 = 971

What is a virtual-circuit network? What are some benefits of this type of network?

A connection-oriented network layer implies a virtual-circuit network. This type of network has a call setup at the beginning of a host-to-host connection, and from that point the state of the connection is preserved in all routers from source to destination, until the call is taken down. Some primary benefits of VC networks are guaranteed bandwidth and timing (jitter), which makes them ideal for streaming audio/video.

What is a datagram network? What are some benefits of this type of network?

A connectionless network layer implies a datagram network. The internet is a datagram network. The advanatages are similar to those of UDP - there is FAR less overhead. Each network need not preserve the state for every host-to-host communication passing through it. With the billions of devices on the internet, this would be terribly implausible regardless of the rapid development of storage space and access times.

Given a 1 Gbps link with TCP applications A, B, and C. Application A has 3 TCP connections to a remote web server; application B has 1 TCP connection to a mail server; application C has 4 connections to a remote web server. According to TCP "fairness" ... during times when all connections are transmitting, how much bandwidth should each application have?

A gets

What are the netmasks for each subnet?

All four subnets have an 18-bit netmask: 255.255.192.0

Why does an arriving DHCP client have to broadcast its hardware address?

An arriving DHCP client has no IP address. By broadcasting its hardware address to the entire network, it is received by the DHCP server. The DHCP server can then offer an IP address lease to the client, by (again) broadcasting.

What is the purpose of the network layer?

At a very high level, the purpose is to ensure logical communication from host to host. In a more nuts-and-bolts view, the purpose is to determine a path from source to destination that a datagram can take, and to move it on that path (within the network layer).

A host starts a TCP transmission with an EstimatedRTT of 50ms (from the "handshake"). The host then sends 3 packets and records the RTT for each: SampleRTT1 = 30 ms SampleRTT2 = 40 ms SampleRTT3 = 20 ms (NOTE: SampleRTT1 is the "oldest"; SampleRTT3 is the most recent.) Using an exponential weighted moving average with a weight of 0.4 given to the most recent sample, what is the EstimatedRTT for packet #4 (nearest .1 ms)?

Correct Answer is 32.72 ms 0.6 * 50 + 0.4 * 30 = 42 0.6 * 42 + 0.4 * 40 = 41.2 0.6 * 41.2 + 0.4 * 20 = 32.72

Given a effective delay of 5ms when network usage is 93%, what is the effective delay when network usage = 8% ? (Give answer is miliseconds, rounded to one decimal place, without units. So for an answer of 0.10423 seconds you would enter "104.2" without the quotes).

D0 = 5 ms * ( 1 - 0.93) = 0.35 D = 0.35 / (1-0.08) = 0.38043 = 0.4 ms

What is the purpose of DHCP?

DHCP is intended to streamline the connection of new devices to a network. Rather than having a sysadmin hard-code a relationship between hardware (MAC) addresses and IP- addresses, a new device can enter a network and automatically obtain an IP address valid in the network.

Arrival of in-order segment with expected sequence number. All data up to expected sequence number already acknowledged.

Delayed ACK. Wait up to 500ms for arrival of another in-order segment. If next in-order segment does not arrive in this interval, send an ACK.

What is the TCP DevRTT and how is it calculated?

DevRTT is a factor which increases when the most recent sampled round trip time is different from the most recent estimated round trip time. It is another exponential weighted moving average, strongly weighted toward the most recent deviation value. DevRTT_n = (1-β)DevRTT_(n-1) + β(SampleRTT_new - EstimatedRTT_(n-1))

Select the proper equation for TCP's calculation of DevRTT.

DevRTT_n = (1-β)DevRTT_(n-1) + β(SampleRTT_new - EstimatedRTT_(n-1))

Final timeout with safety margin

DevRTT_n = (1-β)DevRTT_(n-1) + β(SampleRTT_new - EstimatedRTT_(n-1)) typical value b = 0.25

DHCP

Dynamic Host Configuration Protocol - application layer protocol, dhcp client-server - ip address can be reused by other hosts if released - ip lease can be renewed while still connected

Suppose that "no-traffic delay" D0 is 2 ms, the network is used at 65% of capacity. (utilization U = 0.65)

Effective delay: 2 ms/ 1- 0.65 = 5.7 ms - when utilization is 0, D = D0. - when utilization is 1, congestion collapse is guaranteed.

Timeout interval

EstimatedRTT + 4*DevRTT

IP address hierarchy

Every ISP network in the internet is assigned network address that is unique within the internet. ISP network addresses are unique, assigned by ICANN: Internet Corporation for Assigned Names and Numbers - assignment of ISP network addresses must be coordinated globally -assignment of sub-nets and host numbers can be managed locally

Where do Network-layer protocols run?

Everywhere in the internet

TCP implements network fairness directly.

False

UDP has a congestion control mechanism.

False

UDP implements network fairness.

False

What does a routing algorithm do? Where is the output of a routing algorithm stored?

Finds a path from a router to destination, and selecting it appropriately. The result of the algorithm is used to construct the router forwarding table (or routing table), which is stored in the router.

What is the goal of congestion control?

For optimizing network utilization, such that a high throughput is ensured, with the restriction that the utilization is not pushed so high that delay and packetloss become major factors.

What reliability services does the IP network-layer protocol implement?

Header Checksum

How does the source host help with congestion control?

Host inference: A source host attempts to infer congestion in the network core based on observables (e.g. round trip time, dropped packets)

Why can't we use hardware addresses for our network address.

IP addresses are hierarchically organized, allowing for streamlined routing throughout the internet. If we used hardware addresses, we would not be able to use longest-prefix matching. Indeed, some routers would have to keep lookup tables for every single hardware address connected to the internet. To make it worse, some hardware types use different addressing schemes than others.

Datagram forwarding

IP header contains all information needed to deliver datagram to destination computer - destination address -source address - identifier - other delivery info

Fill in the empty information: IPv4 CIDR Address: 128.193.43.35 /23 Netmask (dotted decimal): _________ Network Address: _________ Broadcast Address: _________ Host Number: _________ Total # Host Addresses: _________

IPv4 CIDR Address: 128.193.43.35 /23 Netmask (dotted decimal): 255.255.254.0 Network Address: 128.193.42.0 Broadcast Address: 128.193.43.255 Host Number: 291 Total # Host Addresses: 512-2 = 510

Arrival of in-order segment with expected sequence number. One other in-order segment waiting for ACK transmission.

Immediately send single cumulative ACK, ACKing both in-order segments.

IP addressing (v4)

In IPv4, each host is assigned a 32-bit number, called the IP address or Internet address - number of unique ip addresses possible 2^32 = 4,294,967,296

What is network congestion? What causes it?

In the simplest terms, network congestion is the increase in end-to-end delay due to high bandwidth utilization at some point in the network. It is caused by end systems sending data faster than the network is capable of handling (those darned routers!).

The rate of CongWin size increase (in terms of MSS) while in TCP's Congestion Avoidance phase is ______

Linear

How does the network core help with congestion control?

Network core assistance: The network core senses when congestion is an issue - directly - and sends messages (either to the destination host, which bounces it back to the source host, or directly back to the source host) indicating congestion in the core, and possibly advising on a course of action.

What organization manages IP network addresses globally.

Nominally, the IP address space is managed by ICANN: Internet Corporation for Assigned Names and Numbers.

What is a next-hop router?

Once a prefix match is made within a routing table, a packet is forwarded to its appropriate output link. The router at the other end of that link is the next-hop router.

What is the difference between routing and forwarding?

Routing is the process of determining the path a datagram will take from source to destination in the internet, whereas forwarding is the process within a router of moving a datagram from an input port to the appropriate output port, so that it may take the next step in its journey from source to destination.

A _______________ -type retransmission protocol will retransmit one segment at a time upon a countdown timer interrupt.

Selective Repeat

Sender/Receiver side in network layer

Sender side: - get segments from transport layer - encapsulated segments into datagrams Receiver side: - delivers segments to transport layer

virtual circuit (VC)

Source-to-destination path behaves much like a telephone circuit

How does a router know which output port each one of the billions of IP addresses are located at?

The forwarding table in a datagram network's router matches ranges of addresses to output ports, rather than matching each address to its own output port. By doing this, it saves tremendously on time and required storage/access capability.

What is 'fairness' in TCP?

The goal is to share bandwidth evenly amongst all connections through a router. TCP works toward fairness due entirely to its congestion window size algorithm. This is on a per-connection basis, so for example a web browser which spins off a connection for every image it has to download (in parallel) would not be "fair" to a single-connection FTP transfer.

What is switching fabric in terms of networking? How is it controlled?

The hardware switching circuitry used, within routers, to switch datagrams from an input port to an output port (or queue) without any collisions occurring. This is controlled by the routing processor, which utilizes the stored routing table. The IP address of incoming datagrams are used to determine the output port.

What are the two addresses in a subnet which are reserved, and what are they reserved for?

The network address cannot be assigned to a host. To find the network address, set the host part of the IP address to all zeros. (mask it with the netmask) The broadcast address is also reserved. To find the broadcast address, set the host part of the IP address to all ones.

What do you find when you make an HTTP GET (port 80) request at this IP address of 128.193.4.112?

The oregonstate.edu main website!

Is IP address space exhaustion a problem?

This depends on your outlook. There are some mechanisms that are proving a stopgap, but really we've already run out.

How is congestion control accomplished?

This is accomplished by attempting to detect and avoid congestion, and if congestion is un-avoidable, the sender should reduce their data output.

What is the Maximum Segment Size (MSS)?

This is the maximum amount of transport-layer data which can be sent, such that it will fit within one link-layer data frame.

Transport layer/network layer

Transport layer: relies on, enhances, network layer services - The transport-layer unit is called a segment Network layer: logical communication between hosts. - relies on, enhances, link layer services - the network-layer unit is called a datagram

TCP has a congestion control mechanism

True

TCP implements network fairness indirectly.

True

The "first hop" router is the first router a datagram is passed to from the source host on the path to the destination host.

True

Given the network address "block" 128.193.0.0 /16. Suppose that we want to split all of the addresses into 4 equal-sized subnets. What are the network addresses of each subnet?

We can get 4 networks by using two additional bits of the network address: The network address is 10000000 11000001 00000000 00000000 Subnet #0: 10000000 11000001 00000000 00000000 It's network address is 128.193.0.0 /18 Subnet #1: 10000000 11000001 01000000 00000000 It's network address is 128.193.64.0 /18 Subnet #2: 10000000 11000001 10000000 00000000 It's network address is 128.193.128.0 /18 Subnet #3: 10000000 11000001 11000000 00000000 It's network address is 128.193.192.0 /18

CIDR examples

What is the netmask for /20? 32 - 20 = 12. 11111111.11111111.11110000.00000000 or 255.255.240.0 What is the netmask for /24? 32 - 24 = 8. 255.255.255.0 or 11111111.11111111.11111111.00000000 What is the netmask for /27? 32 -27 - 5. How many hosts can be supported in /28? 2^4 - 2 (2 for reserved hosts) = 14.

In basic terms, how is congestion control implemented in TCP? What is this method called?

When no congestion is perceived, the sliding window size gradually increases (additive increase). When there is perceived congestion, the sliding window size is drastically reduced (multiplicative decrease). Together this makes up an additive-increase multiplicative-decrease (AIMD) scheme.

Is it possible to have a queueing delay at the input port of a router? How? What about packet loss?

Yes, due to head-of-line blocking or output port contention: if the datagram at the front of the line in the input port queue cannot be transferred to the output port because there is already a transfer occurring to, or a full queue at, the desired port. This would cause a delay in transferring the HOL datagram to its output port. Packet loss can occur here as well, if the input buffer overflows.

Is it possible to have a queueing delay at the output port of a router? How?What about packet loss?

Yes, due to transmission rate limitations on the output port link: if several datagrams were switched to the same output port, they will have to wait for access to the transmission medium. Packet loss can also occur, if the buffer overflows.

For the IP addresses as follows, how many bits are used for the network part, and how many bits are used for the host part?

a. 128.145.22.44 / 28 Network part: 28 bits (directly from above) Host part: 32 - 28 = 4 bits b. 142.33.54.71 / 26 Network part: 26 bits (directly from above) Host part: 32 - 26 = 6 bits c. 193.111.54.4 / 16 Network part: 16 bits (directly from above) Host part: 32 - 16 = 16 bits

Given the following routing table: Prefix Match Port: 10001100 00011011 01011101 0 10001100 00011011 01011101 000 1 10001100 00011011 01011101 01 2 10001100 00011011 01011110 00100 3 Default 4

a. 140.27.93.25 : port 1 b. 140.27.94.39 : port 3 c. 140.27.95.32: port 4 d. 140.27.93.98 : port 2 e. 140.27.93.156 : port 0

D = D0/ 1 - u

d = effective delay u = network utilization D0 = delay when the network has no other traffic

The TCP sliding window is used to implement ____________

flow control

In _________ congestion control, congestion is detected based on delayed and/or dropped packets.

host-inferred

TCP fairness

if K TCP sessions share same bottleneck link of bandwidth R, each should have average rate of R/K TCP is fair to each connection

A subnet __________

is a network where all interfaces have the same IP address prefix and can communicate with each other without using a router.

Fill in the empty information: IPv4 CIDR Address: 128.193.43.35 /16 Netmask (dotted decimal): ___________ Network Address: ___________ Broadcast Address: ___________ Host Number: ___________ Total # Host Addresses: ___________

netmask : 255.255.0.0 network address: 128.193.0.0 (bit-wise and of address in binary and netmask) broadcast address: 128.193.255.255 host number: (bit-wise and of address in binary and hostmask) = 11043 total #host addresses: 2^16 - 2 = 65,534

Two network-layer functions

routing: determine route taken by packets from source to destination forwarding: move packets from router's input to router's output

In a _________ acknowledgement scheme, a received ACK indicates only that the ACK'd segment was received.

selective

mss (maximum segment size)

the upper limit of data that can be sent in the largest link-layer frame on the sending host (usually 1460 bytes).

Router architecture overview

two key router functions: run routing algorithms/protocol (RIP, OSPF, BGP) forwarding datagrams from incoming to outgoing link

A host has started a TCP transmission with MSS = 1460 bytes. It uses "slow-start", with a limit of 11680 bytes.

​​​​​What is the congestion window size after sending 15 packets? Assume all packets have length = MSS. 13140 bytes


Kaugnay na mga set ng pag-aaral

Economics Unit 4 Multiple Choice

View Set

AP Language and Composition Glossary of Literary and Rhetorical Terms

View Set

Joint Design and Welding Terms Review

View Set

Microeconomics Chapter 2: Demand

View Set

Real Estate Broker Unit 3 sections 16-20

View Set

Process for Planning and Preparing Spoken and Written Messages

View Set

Manufacturing Processes Wk. 3 Ch. 9

View Set

History of American Baseball FINAL EXAM (Bisson/BelmontU)

View Set

Chapter 8 - Smartbook Questions & Quiz

View Set