TCP's Reliability Tools Packet Acknowledgement - for each packet received at the remote host, an acknowledgement is sent back to the sending host. Timers And Retransmissions - for each packet sent, a timer is started. If an acknowledgment is received, the timer is stopped. If the timer is set off before an acknowledgement is received, the packet is re-transmitted, and a new timer is started, with a double time span (this is known as exponential back-off, and is used to avoid traffic congestion). Each packet has a CRC calculated for it by the sending host. The receiving host re-calculates the CRC. If it does not match the CRC inside the packet, a NACK (Negative Acknowledgment) is sent to the originating host, which then re-sends the packet.