TCP Window Management Issues
(Page 3 of 3)
Handling a Closed Window and Sending Probe Segments
Another special window management problem is how to deal with the case where a device must reduce the send window size all the way down to zero. This is called closing the receive window. Since the server's receive window is the client's send window, reducing its size to zero means the client cannot send any more data, as we saw at the end of the example in the previous topic. This situation continues until the client receives from the server a new acknowledgment with a non-zero Window field, which reopens the window. Then the client is able to send again.
The problem with this situation is that the client is dependent upon receipt of the window opening segment from the server. Like all TCP segments, this segment is carried over IP, which is unreliable. Remember, TCP is reliable only because it acknowledges sent data and retransmits lost data if necessary, but it can never guarantee that any particular segment gets to its destination.This means that when the server tries to re-open the window with an acknowledgment segment containing a larger Window field, it's possible that the client never gets the message. The client might conclude that a problem had occurred and terminate the connection.
To prevent this from happening, the client can regularly send special probe segments to the server. The purpose of these probes is to prompt the server to send back a segment containing the current window size. The probe segment can contain either zero or one byte of data, even when the window is closed. The probes will continue to be sent periodically until the window reopens, with the particular implementation determining the rate at which the probes are generated.
When the server decides to reopen the closed window, there is another potential pitfall: opening the window to too small a value. In general, when the receive window is too small, this leads to the generation of many small segments, greatly reducing the overall efficiency of TCP. The next topic explores this well-known problem and how it is resolved through changes to the basic sliding windows mechanism.
Home - Table Of Contents - Contact Us
The TCP/IP Guide (http://www.TCPIPGuide.com)
Version 3.0 - Version Date: September 20, 2005
© Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.