Lock-step communication is a sequential exchange in which the sender waits for a reply before sending the next message. TFTP uses it to provide reliable, ordered file transfer over UDP. section 8.1.1 section 8.4
A TFTP transfer proceeds as follows:
- The server divides the file into ordered blocks. section 8.1.1
- The sender transmits one block and waits for its acknowledgment before sending another. section 8.1.1
- Each device starts a timer after sending; expiration causes retransmission of the previous message. section 8.1.1
Recovering a lost block
After acknowledging block 1, the client waits for block 2. If block 2 is lost, the client retransmits its acknowledgment for block 1; the server interprets this as evidence that block 2 was not received and retransmits it. section 8.1.1
Figure 8.2 TFTP lock-step communication. The client and server alternate between sending and waiting to receive messages. The server divides the requested file into ordered blocks, and the client acknowledges receipt of each block. Lost messages result in retransmissions.
Visualizes alternating messages, acknowledgments, ordered blocks, and retransmissions during a TFTP transfer. section 8.1.1
