概述
文章目录
- 数据链路层导图
- 3 数据链路层
- 3.1 研究思想
- 3.2 概念
- 3.4 功能概述
- 3.5 封装成帧
- 3.6 透明传输
- 3.7 字符计数法(易出差错,不常用)
- 3.8 字符填充法
- 3.8.1 实现方法
- 3.9 零比特填充法
- 3.9违规编码法
- 3.10 差错控制
- 3.10.1 检错编码
- 3.10.1.1 差错从何而来
- 3.10.1.2 数据链路层的差错控制
- 3.10.1.3 检错编码----奇偶校验码
- 3.10.1.4 检错编码----CRC循环冗余码
- 3.11 纠错编码-----海明码
- 3.11.1 海明距离
- 确认校验码位数r
- 确认校验码和数据的位置
- 求出校验码的值
- 检错并纠错
- 3.12 数据链路层的流量控制
- 3.12.1 流量控制的方法
- 3.12.2 可靠传输、滑动窗口、流量控制
数据链路层导图
3 数据链路层
3.1 研究思想
3.2 概念
数据链路层(搬运费,节点间互相搬运信息)
3.4 功能概述
数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。
功能举例:
功能
3.5 封装成帧
封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。
首部和尾部包含许多的控制信息,他们的一个重要作用:帧定界(确定帧的界限)。
帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。
3.6 透明传输
透明传输是指不管所传数据是什么样的比特组合,都能在链路上传送。因此,链路层就“看不见”有什么妨碍数据传输的东西。
当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,接收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。
3.7 字符计数法(易出差错,不常用)
3.8 字符填充法
3.8.1 实现方法
3.9 零比特填充法
3.9违规编码法
普遍使用:由于字节计数法中Count字段的脆弱性(其值若有差错将导致灾难性后果〉及字符填充实现上的复杂性和不兼容性,目前较普遍使用的帧同步法是比特填充和违规编码法。
3.10 差错控制
3.10.1 检错编码
3.10.1.1 差错从何而来
3.10.1.2 数据链路层的差错控制
3.10.1.3 检错编码----奇偶校验码
3.10.1.4 检错编码----CRC循环冗余码
例:要发送的数据是11010110 11,采用CRC校验,生成多项式是10011,那么最终发送的数据应该是?
发送端:
接收端
3.11 纠错编码-----海明码
在数据链路层仅仅使用循环冗余检验CRC差错检测技术,只能做到对帧的无差错接收,即“凡是接收端数据链路层接受的帧,我们都能以非常接近于1的概率认为这些帧在传输过程中没有产生差错”。接收端丢弃的帧虽然曾收到了,但是最终还是因为有差错被丢弃。“凡是接收端数据链路层接收的帧均无差错”。
链路层使用CRC检验,能够实现无比特差错的传输,但这还不是可靠传输(有些帧被丢弃了)。
3.11.1 海明距离
确认校验码位数r
m为数据位数
确认校验码和数据的位置
n为码距
求出校验码的值
X 4=0理由:当X4=0时,4、5、6、7位对应的值1100,采用偶校验1出现了偶数次
检错并纠错
3.12 数据链路层的流量控制
较高的发送速度和较低的接收能力的不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作。
数据链路层的流量控制是点对点的,而传输层的流量控制是端到端的。
数据链路层流量控制手段:接收方收不下就不回复确认。
传输层流量控制手段:接收端给发送端一个窗口公告。
3.12.1 流量控制的方法
3.12.2 可靠传输、滑动窗口、流量控制
最后
以上就是朴实小蝴蝶为你收集整理的计算机网络Part3:数据链路层数据链路层导图3 数据链路层的全部内容,希望文章能够帮你解决计算机网络Part3:数据链路层数据链路层导图3 数据链路层所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复