计算机网络-数据链路(二)8-31
可靠传输 —(8-30)
相关概念
使用差错检测技术(例如循环冗余校验CRC),接收方的数据链层就可以检测出帧在传输过程中是否产生了误码(比特差错)。
数据链层向其上层提供的服务类型
不可靠传输服务:仅仅丢弃误码的帧,其他什么也不做
可靠传输服务:通过某种机制实现发送方发送什么,接收方最总终就能收到什么。
传输差错的类型:
误码(比特差错):出现在数据链路层及其下层
分组丢失 —–>
分组失序 —–> 出现在数据链路层的上层
分组重复 —–>
可靠传输服务并不局限于数据链路层,其他各层均可选择实现可靠传输。
实现机制
- 停止-等待(Stop-and-Wait,SW)协议
- 原理:收发双方通过因特网进行通信,首先发送方发送一个数据分组(DATA),接收方进行差错检测,确认无误码之后接受,并向接收方发送确认分组(ACK),发送方发送下一个数据分组,这次出现误码,接收方检测到误码后,直接丢弃,并向发送方发送否认分组(NAK),发送方收到之后重传之前的数据分组,再次重复前面的工作。
- 后面应对特殊的情况又增加了超时传输和确认丢失分组需要编号。
$$
T^D是发送数据分组所消耗的发送时延,RTT是信号往返传播的时间,T^A是接收方发送确认分组消耗的时间\\
信道利用率:U\approx\dfrac{T^D}{T^D+RTT+T^A}\quad TA<<T^D\quad\longrightarrow U\approx\dfrac{T^D}{T^D+RTT}\\
RTT>>T^D \longrightarrow U很低,例如卫星链路的RTT很大\\
RTT<<T^D \longrightarrow U比较高,例如无线局域网的RTT远小于T^D
$$
- 列题:
回退N帧(Go-back-N,GBN)协议
- 原理:使用流水线传输可以显著提高信道的利用率,并且利用发送窗口来限制发送方连续发送数据分组的数量,这是属于连续ARQ协议。
- 运行机制:发送方需要维护一个发送窗口WT,在没收到接收方确认分组的情况下,发送发可将序号落入WT内的所有数据分组连续发送出去。
- 采用n个比特给分组编序号,WT的取值范围是1~(2n-1).
例题:
$$
发送时延=\dfrac{发送分组大小(b)}{发送速率(b/s)}
$$
- 选择重传(Selective Repeat, SR)协议
原理:哪一个分组没有正确接受就重新发送该分组。但是还是需要保证发送窗口WT的取值范围是1~(2n-1)。
注:(以上内容来自中国MOOC慕课湖南科技大学计算机网络)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 离患小站!













