Unformatted text preview: use another error to be
returned, depending on whether an ICMP error related to the connection is received. We
look at all four scenarios in the next section.
A perpetual question by people discovering the keepalive option is whether the 2-hour idle time value
can be changed. They normally want it much lower, on the order of minutes. As we show in Appendix
E, the value can usually be changed, but in all the systems described in this appendix, the keepalive
interval is a system-wide value, so changing it affects all users of the option.
The Host Requirements RFC says that an implementation may provide the keepalive feature, but it must
not be enabled unless the application specifically says so. Also, the keepalive interval must be
configurable, but it must default to no less than 2 hours. 23.3 Keepalive Examples
We'll now go through scenarios 2, 3, and 4 from the previous section, to see the packets
exchanged using the keepalive option.
Other End Crashes
Let's see what happens when the server host crashes and does not reboot. To simulate this
we'll do the following steps:
q q q Establish a connection between a client (our sock program on the host bsdi)
and the standard echo server on the host svr4. The client enables the keepalive
option with the -K option.
Verify that data can go across the connection.
Watch the client's TCP send keepalive packets every 2 hours, and see them
acknowledged by the server's TCP.
Disconnect the Ethernet cable from the server, and leave it off until the example is
complete. This makes the client think the server host has crashed.
We expect the client to send 10 keepalive probes, 75 seconds apart, before
declaring the connection dead. file:///D|/Documents%20and%20Settings/bigini/Docum.../homenet2run/tcpip/tcp-ip-illustrated/tcp_keep.htm (3 of 9) [12/09/2001 14.47.30] Chapter 23. TCP Keepalive Timer Here is the interactive output on the client:
bsdi % sock -K svr4 echo -K for keepalive option
type this at beginning, to verify connection is up
and see this...
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