Acknowledgments
Written on 09:27 by Ahmet Emir
Reliable data delivery ensures the integrity of a stream of data sent from one machine to the
other through a fully functional data link. It guarantees that the data won’t be duplicated or
lost. This is achieved through something called positive acknowledgment with retransmission—
a technique that requires a receiving machine to communicate with the transmitting
source by sending an acknowledgment message back to the sender when it receives data. The
sender documents each segment it sends and waits for this acknowledgment before sending the
next segment. When it sends a segment, the transmitting machine starts a timer and retransmits
if it expires before an acknowledgment is returned from the receiving end.
In Figure 1.12, the sending machine transmits segments 1, 2, and 3. The receiving node
acknowledges it has received them by requesting segment 4. When it receives the acknowledgment,
the sender then transmits segments 4, 5, and 6. If segment 5 doesn’t make it to the destination,
the receiving node acknowledges that event with a request for the segment to be
resent. The sending machine will then resend the lost segment and wait for an acknowledgment,
which it must receive in order to move on to the transmission of segment 7.