数据链路层传输协议(点到点):停等协议、GBN、SR协议

发布时间 2023-10-18 22:40:58作者: 子酱

数据链路层的传输协议:停等协议、GBN、SR

停止等待协议(单窗口的滑动窗口协议

 

滑动窗口协议:GBN、SR

GBN协议

 

GBN发送方需响应的三件事

1. 上层调用(网络层)

上层要发送数据时,发送方先检查发送窗口是否已满。

如果未满,则产生一个帧并将其发送;如果窗口已满,发送方只需将数据返回给上层,暗示窗口已满.

2. 收到一个ACK

G B N \rm GBNGBN协议中,对n nn号帧的确认采用累计确认,标明接收方已经收到n nn号帧和它之前的全部帧

3. 超时事件

若出现丢失和时延过长帧时,发送方将重传所有已发送但未收到确认的帧


GBN接收方

1. 若正确收到n号帧,并且按序,那么接收方为n帧返回一个ACK,并将该帧中的数据部分交给上层

2. 其余情况都丢弃帧,并为最近按序接收的帧重新发送ACK.接收方无需缓存任何失序帧,只需要维护一个信息:expectedseqnum(下一个按序接收的帧序号)

心里有数:一定要等到自己期待的的帧,后面的帧我都不管

一个GBN协议的工作图解

 例题:

 选:C

累计确认   导致   批量重传问题 

改进协议——> SR

选择重传协议(SR)

 

 

 

 

 

 

 重传两个:0和2号帧