Chapter 5
Unlike many UDP-based protocols, TFTP takes steps to ensure packet delivery. However,
because UDP doesn't provide any underlying means for reliable delivery, TFTP must do so. It's
worth a quick review of how regular FTP, over TCP, operates, so that TFTP's method can be
better understood.
In TCP, the sender's protocol stack sends packets of data in sequential order. The receiving
computer reassembles these packets. The recipient maintains a sliding window, as illustrated in
Figure 5.4. As illustrated, this recipient is missing one packet from the sequence, indicating a
network failure of some kind. Because the sliding window is full of packets, the recipient will
stop acknowledging new packets and will ask the sender to retransmit the missing packet.
Figure 5.4: Sliding window on recipient's TCP/IP stack.
Once the missing packet is retransmitted and received, the sliding window will advance, and the
client will begin accepting new packets, as Figure 5.5 shows.
Figure 5.5: Sliding window ready to accept new packets.
The underlying TCP is doing all the work. The benefit of this method is that the sender doesn't
need to keep track of individual packets that have been received, and the recipient doesn't need
to acknowledge each packet received. With UDP, however, none of this underlying architecture
exists. Instead, TFTP is designed to transmit one packet from sender to recipient, then wait for
the recipient to confirm receipt. If the recipient doesn't do so promptly, the sender simply
retransmits the packet until either a confirmation is sent back or the TFTP session times out and
the sender gives up. Figure 5.6 illustrates the interaction between a TFTP server and client.
96
Summary :
Chapter 5 Unlike many UDP-based protocols, TFTP takes steps to ensure packet delivery. Because the sliding window is full of packets, the recipient will stop acknowledging new packets and will ask the sender to retransmit the missing packet. The benefit of this method is that the sender doesn't need to keep track of individual packets that have been received, and the recipient doesn't need to acknowledge each packet received.
Tags :
recipient,packets,packet,sliding,figure,tftp,sender,window,doesnt,missing,tcp,receied,underlying