理想的传输条件有以下两个特点:
1.传输信道不产生差错。
2.不管发送方以多快的速度发送数据,接收方总是来得及处理收到的数据。
在这样的理想传输条件下,不需要采取任何措施就能够实现可靠传输。
然而实际的网络都不具备以上两个理想条件。必须使用一些可靠传输协议,在不可靠的传输信道实现可靠传输。
停止等待协议
1.停止等待。发送方每次只发送一个分组。在收到确认后再发送下一个分组。
2.编号。对发送的每个分组和确认都进行编号。
3.自动重传请求ARQ (Automatic Repeat reQuest)。发送方为每个发送的分组设置一个超时计时器。若超时计时器超时,发送方会自动重传分组。
TCP 会在以下两种情况发生超时重传:
数据包丢失
确认应答丢失
停止等待协议的优点是简单,缺点是信道利用率太低。
连续ARQ协议
1.发送方一次可以发出多个分组。
2.滑动窗口协议
3.累积确认
即不必对收到的分组逐个发送确认,而是对按序到达的最后一个分组发送确认,这样就表示:到这个分组为止的所有分组都已正确收到了。