Reliability
Reliability provided by:
- Reliable connection startup: Data on old connection does not confuse new connections
- Graceful connection shutdown: Data sent before closing a connection is not lost.
- Data segmented for transmission and acknowledged by destination. Timeout + Retransmission provided if data unacknowledged. This is formally called “soft-state”
- Checksum provided to catch errors.
- Re-sequencing of out-of-order data; discarding of duplicate data.
- Window flow control => sender cannot overrun receiver buffers