计算机网络3.4.1可靠传输的实现机制:停止等待协议

停止等待协议SW
回退N帧协议GBN
选择重传协议SR

停止等待协议:
发送方对接收方发送分组,接收方接收进行差错检测,如果没有误码就接收并给发送方发送确认分组,简称为ACK,
发送方接收后才能发送下一个分组
如果产生了误码,则丢弃分组并给发送方发送否认分组,简称为NAK,发送立刻重新发送。因此发送方不能直接删除数据,还需要在缓存中保留到受到确认分组。

当数据分组丢失时,接收方收不到数据分组,不会发送ACK和NAK,不采取其他措施的话发送方就会一直等待接收ack。
超时重传
因此就有了超时计时器,超过了重传时间仍然收不到ack或nak时就重传数据分组,叫做超时重传。一般选择为略大于发送方到接收方的平均往返时间。
当否认分组或者确认分组丢失时又会出现错误。
因此有了为避免分组重复这种传输错误,给每个分组带上序号。
数据分组发送方只需要保证与上一个不同就好了。
ack分组编号与数据分组编号所用比特数量一样。
数据链路层一般不会出现ack分组迟到的情况,因此在数据链路层实现停止等待协议可以不给ack分组编号。
重复的丢弃。
在运输层设置往返时间不容易。
当往返时延远大于数据帧发送时延时,信道利用率非常低。
若出现重传,信道利用率还要降低。
为了克服这个缺点,产生了后退N帧协议GBN和选择重传协议SR

posted @ 2022-04-14 21:17  吕洞玄  阅读(693)  评论(0编辑  收藏  举报