Unformatted text preview: omenet2run/tcpip/tcp-ip-illustrated/tcp_pers.htm (9 of 11) [12/09/2001 14.47.29] Chapter 22. TCP Persist Timer The persist timer goes off again at time 25.151, and the sender transmits 1 byte. The
receive buffer then has 1279 bytes of space, which is the window advertised in segment
The sender has only 511 additional bytes of data to transmit, which it sends immediately
upon receiving the window advertisement of 1279 (segment 18). This segment also
contains the FIN flag. The receiver acknowledges the data and the FIN, advertising a
window of 767. (See Exercise 22.2.)
Since the sending application issues a close after performing its six 1024-byte writes, the
sender's end of the connection goes from the ESTABLISHED state to the FIN_WAIT_1
state, to the FIN_WAIT_2 state (Figure 18.12). It sits in this state until receiving a FIN
from the other end. There is no timer in this state (recall our discussion at the end of
Section 18.6), since the FIN that it sent in segment 18 was acknowledged in segment 19.
This is why we see no further transmissions by the sender until it receives the FIN
The receiving application continues reading 256 bytes of data every 2 seconds from the
receive buffer. Why is the ACK sent at time 39.99 (segment 20)? The amount of room in
the receive buffer has gone from its last advertised value of 767 (segment 19) to 2816
when the application reads at time 39.99. This equals 2049 bytes of additional space in
the receive buffer. Recalling the first rule at the start of this section, the receiver now
sends a window update because the amount of room has increased by one-half the room
in the receive buffer. This implies that the receiving TCP checks whether to send a
window update every time the application reads data from TCP's receive buffer.
The final application read occurs at time 51.99 and the application receives an end-of-file
notification, since the buffer is empty. This causes the final two segments (21 and 22),
which complete the terminati...
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