TCP Reno: timeout
When the retransmission timer does not expire:
- Every time a packet is sent, if the retransmission timer is not working, start it.
- If all outstanding data has been received, turn off the retransmission timer.
- Restart the retransmission timer when an ACK for new data is received.
When the retransmission timer expires:
- Retransmit the earliest segment that has not been acknowledged.
- Set the RTO to 2 RTO (backoff scheme).
- Start the retransmission timer after RTO.