数据链路层:5、停止等待协议
- 思维导图:
- 停止等待协议、滑动窗口协议到底属于哪一层?
- 为什么要有停止等待协议?
- 停止等待协议无差错和有差错:
- 停止等待协议的效率:
思维导图:
停止等待协议、滑动窗口协议到底属于哪一层?
早些时候,链路的质量还没有那么可靠的时候,就需要数据链路层负责起可靠传输的功能,就会用到 停止等待协议、滑动窗口协议;随着链路质量的不断发展,链路的通信已经非常的可靠,这个时候就不需要数据链路层担负可靠传输的任务了,也就用不着停止等待协议、滑动窗口协议
不管停止等待协议、滑动窗口协议是在数据链路层还是传输层,其功能都是进行可靠传输,只不过数据链路层的传输对象是帧,传输层的传输对象是分组
为什么要有停止等待协议?
停止等待协议无差错和有差错:
无差错:
有差错:
当发送1帧时,启动一个超时计时器,若1帧在发送的过程中丢失或者是出错,接收方就不返回确认帧,此时发送方因为收不到确认而超时计时器时间到,发送方再次发送1帧
接收方接收到1帧后确认帧发生了丢失,发送方因为收不到确认而超时计时器时间到再次重传1帧;接收方接收到了重复的1帧直接丢弃再次返回确认帧
接收方接收到0帧后由于信道太忙接收方无法及时接收确认帧,发送方超时计时器到就认为接收方未接收到帧再次发送;接收方返回确认帧。这时候第一次的确认帧到达了,接收方收下并丢弃
停止等待协议的效率: