第三章 数据链路层
数据链路层协议有许多种,但有三个基本问题则是共同的。分别是:封装成帧、差错控制、透明传输。
参考:计算机网络 谢希仁 p71
王道MOOC哔哩哔哩(谷歌浏览器):https://www.bilibili.com/video/av40248430/?p=12
2020版王道
第一部分、封装成帧
第二部分、差错控制
一、差错从何而来
二、解决办法:差错控制(检验编码)
只针对位错/比特错,帧错在运输层讨论
实现无比特差错的传输,但这还不是可靠传输。
三、具体实现(只针对位错/比特错,帧错在运输层讨论)
第一种方法:检错编码——奇偶校验码
第二种方法:检错编码——循环冗余码CRC
做上几道题,考前记一记,基本就可以打遍天下无敌手! paper tiger
第三种方法:纠错编码——海明码
百度到的海明码
四步得到海明码
STEP1 根据海明不等式求r
STEP2 放在2的几次方里面 再按序把空填满
STEP3 写出二进制 异或求出校验码的值 得到数据海明码
STEP4 异或运算得到各校验码的值1010 反序写0101再对应十进制5 找到出错位置第五位
第三部分、链路层的流量控制与可靠传输机制p227(教材放在运输层)
part 1
非常重要,不仅和传输层的协议有交叉,同时第一次提及了滑动窗口机制。
选择题一定会考,自主命题大题也会出。
建议:把这几个重点的协议 所规定的内容掌握好 把滑动窗口机制原理、流程弄清楚
可靠传输、滑动窗口、流量控制三者区分,了解一下他们之间的关系 What
数据链路层的流量控制 Why
流量控制的方法——3种协议 How
part 2
具体介绍以上实现流量控制的三种协议2019-02-04 18:24:03
第一种:停止等待协议
Q: 停止等待协议究竟是哪一层的?
F: 计算机网络,计算机网络 自顶向下方法中将其放在运输层中,王道辅导书放在数据链路层。
《计算机网络》p76
无需纠结,最后影响到的只是传输对象:传输层(分组),数据链路层(帧) 对象上命名的不同,本质都是传送到数据
why 前提 分类(应用情况)
以下两种情况
情况1 无差错情况
情况2 有差错情况——1出现差错(丢失或检测到)、2ACK丢失、3ACK迟到
总结:使用上述的确认和重传机制,我们可以在不可靠的传输网络上实现可靠的通信。
分割线结束
SO,为了提高传输效率,我们使用流水线传输(教材用语),引入以下两种重要的协议。
停等协议的弊端
针对这两张解决方案,我们有如下两种协议
第二种:后退N帧协议(GBN协议)
1 滑动窗口=发生窗口+接收窗口
2
专一的接收方 不三不四
3
数据部分交付给上层:相当于第一章中的解封装过程,把数据部分交给网络层。
最近按序接受的帧是2
4 把发送方、接收方所做的事放到一张图中 看下整个GBN协议的运作流程
接收任何帧后都发送ACK1——ACK1催更的过程,发送方赶紧把2号帧送过来
生活化的例子:汉堡的各层
之前给我的全都不要,全都扔掉,只等我的番茄,其他的番茄之后再给我一遍。
接收方有一个变量,用来存放接下来想要接收到的序号,如果没有收到那个序号帧,她来什么帧都不要,全都拒绝。来者都拒,无情舍弃。
5 接下来强调一点,关于滑动窗口的长度问题
帧的序号可以重复利用
6
7 09年考研真题 非常重点的一定会考
把书本的知识弄清楚 把王道的练习题全做明白
8
第三种 :选择重传协议(SR协议)
选择重传协议 目前最好的
0
1
区别于GBN协议
帧的编号是用了三位比特
2
3
4
5
6
7
至此
流量控制,可靠传输机制over
再次看视频或看书补充理解和笔记。
2019-02-0613:03:56