数据链路层的基本协议

为了保证bit数据的可靠传输,帧的引入,检验码。

 

传输过程中的超时重发机制,序列号确认机制。

 

 

协议1 ARQ

发送方在准备下一个数据项目之前,必须等待一个肯定的确认,这样的协议叫ARQ(Automatic Repeat reQuest,自动重复请求协议)。

 

发送方记录了下一个要发送的帧的序列号,接收方也记录了下一个期望收到的序列号。

发送方在发送一帧之后启动定时器。

当一个有效帧(校验码正确的情况下)到达时,接收方首先检查它的序列号,如果是个重复的分组,丢弃;如果是希望接受到的序列号,传递给网络层,并生成一个确认返回。

 

捎带确认(piggybacking)-----将确认暂时延迟以便可以勾到下一个外发数据帧。这能更好的利用信道的带宽。

 

协议2 滑动窗口协议(sliding window protocol)

三个滑动窗口协议。每个外发的帧都包含一个序列号,其范围从0到一个最大值,通常为2^n-1。这样序列号正好可以填入到一个n位的域中。

本质:在任何时刻,发送方总是维持着一组序列号,分别对应于允许它发送的帧,对应于发送窗口。类似的,接收方也维持着一个接收窗口,对应于一组允许它接受的帧。发送窗口与接收窗口大小是独立无关的。

 

发送窗口

上界--------要发送的下一帧的窗口;

下界--------未得到确认的帧的最小标号。

 

接收窗口(总是保持最初始的大小)

上界--------允许接收的序号最大的帧;

下界--------希望接收到的帧。

 

 

 

协议2.1  停-等协议(窗口大小为1,限制序列号为0与1)

只能顺序的接收帧,接收端无缓存。


协议2.2 回退N帧(发送窗口大,而接收窗口只有1)
只能顺序的接收帧,无NAK(negative acknowlegement),采用超时重发。

一个帧到达接收方所需要的传输时间加上确认帧回来的传输时间是不可以忽略不记的,因此有必要提高发送方发送的效率。

将发送窗口设置成合适的位置,避免带宽的浪费。


协议2.3 选择性重传(发送窗口、接收窗口 > 1)
需要用到NAK,NAK可以激发重传操作,不需要回退N帧,之需要重传出错的那帧。
如果接收到坏帧,丢弃。同时坏帧后面的好帧被缓存起来。当发送发超时以后,它只重传最早的未被确认的那一帧,如果那

一帧正确到达接收方后,则接收方再依次将它缓存的帧递交给网络层。

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值