This preview shows page 1. Sign up to view the full content.
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
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
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
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.
- Spring '12