Exam 400-101 | Question id=1166 | Network Principles |
Which of the following TCP features can cause TCP starvation in a network with a large amount of UDP traffic and no QoS mechanism?
A. |
window scaling | |
B. |
sliding window | |
C. |
MSS adjustment | |
D. |
selective acknowledgment |
The Transmission Control Protocol (TCP) sliding window feature can cause TCP starvation in a network with a large amount of User Datagram Protocol (UDP) traffic and no Quality of Service (QoS) mechanism. TCP starvation, which is also known as UDP dominance, occurs when congestion and packet loss cause TCP data streams to scale back their transmission window sizes, thereby enabling UDP data streams to dominate the available network bandwidth. TCP starvation can introduce additional latency and reduce the overall throughput of a network link.
TCP has flow control mechanisms to prevent a sending device from transmitting data faster than the receiver can process it. When TCP detects dropped packets, it reduces the TCP transmission window size and retransmits the dropped packets. Reducing the window size slows the rate at which TCP sends traffic. If multiple TCP data streams exist and no QoS mechanism is in place, the streams typically reduce their window sizes in unison because they experience dropped packets in an equal distribution. If there are a large number of UDP data streams on the same network link as the TCP data streams, they will quickly consume the network bandwidth that was made available by the reduction of TCP traffic.
However, because UDP does not have an inherent flow control mechanism like TCP does, the UDP data streams are not directly affected by dropped packets and the network congestion will likely continue or possibly get worse.
Window scaling is not a TCP feature that can cause TCP starvation in a network with a large amount of UDP traffic and no QoS mechanism. Window scaling enables a router to store the equivalent of a 32bit value in the 16bit TCP header field that specifies the window size. This enables the router to process a significantly larger number of bytes before it is required to send an acknowledgment. Larger window sizes are of particular use on networks with high bandwidth and high delay, which are known as Long Fat Networks (LFNs).
Selective acknowledgment is not a TCP feature that can cause TCP starvation in a network with a large amount of UDP traffic and no QoS mechanism. Selective acknowledgment enables TCP to acknowledge packets that were received out of order. Without selective acknowledgment, the receiving router would only be able to acknowledge packets in order.
Fo example, if 10 packets were sent and only packets 1, 2, 3, 5, 7, 8, 9, and 10 were received, a router without selective acknowledgment would acknowledge the receipt of only packets 1, 2, and 3. This would likely cause packets 5, 7, 8, 9, and 10 to be retransmitted. However, with selective acknowledgment, the router could acknowledge the receipt of all of the packets and only the missing packets would be retransmitted. Selective acknowledgment reduces wasted transmissions and increases the overall efficiency of TCP on a particular link.
Maximum segment size (MSS) adjustment is not a TCP feature that can cause TCP starvation in a network with a large amount of UDP traffic and no QoS mechanism. MSS adjustment enables a router to override the MSS value of TCP SYN packets. Hosts use the MSS option in the TCP header to negotiate a maximum size of an IP segment. However, if an intervening device cannot support this size, the packets might get dropped and the TCP session might terminate.
With the TCP MSS adjustment feature, you can modify the TCP MSS value for transient packets, which are packets that neither originate from nor terminate on the router. This can ensure that the router will not drop the packets because they exceed the maximum transmission unit (MTU) of one of its interfaces.