TCP IP Illustrated

If the connection is idle for 10 minutes plus 75

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: d does this close will our end move from the FIN_WAIT_2 to the TIME_WAIT state. This means our end of the connection can remain in this state forever. The other end is still in the CLOSE_WAIT state, and can remain there forever, until the application decides to issue its close. Many Berkeley-derived implementations prevent this infinite wait in the FIN_WAIT_2 state as follows. If the application that does the active close does a complete close, not a half-close indicating that it expects to receive data, then a timer is set. If the connection is idle for 10 minutes plus 75 seconds, TCP moves the connection into the CLOSED state. A comment in the code acknowledges that this implementation feature violates the protocol specification. 18.7 Reset Segments file:///D|/Documents%20and%20Settings/bigini/Docu...homenet2run/tcpip/tcp-ip-illustrated/tcp_conn.htm (18 of 37) [12/09/2001 14.47.16] Chapter 18. TCP Connection Establishment and Termination We've mentioned a bit in the TCP header named RST for "reset." In general, a reset is sent by TCP whenever a segment arrives that doesn't appear correct for the referenced connection. (We use the term "referenced connection" to mean the connection specified by the destination IP address and port number, and the source IP address and port number. This is what RFC 793 calls a socket.) Connection Request to Nonexistent Port A common case for generating a reset is when a connection request arrives and no process is listening on the destination port. In the case of UDP, we saw in Section 6.5 that an ICMP port unreachable was generated when a datagram arrived for a destination port that was not in use. TCP uses a reset instead. This example is trivial to generate-we use the Telnet client and specify a port number that's not in use on the destination: port 20000 should not be in use bsdi % telnet: svr4 20000 Trying telnet: Unable to connect to remote host: Connection refused This error message is output by the Telnet client immediately. Figure 18.14 shows the packet exchange corresponding to this command. 1 0.0 2 0.003771 (0.003...
View Full Document

This test prep was uploaded on 04/04/2014 for the course ECE EL5373 taught by Professor Guoyang during the Spring '12 term at NYU Poly.

Ask a homework question - tutors are online