目录

数据链路层

数据链路层基本概念

数据链路层功能概述

封装成帧

透明传输

组帧的四种方法:

1.字符计数法

​2.字符填充法

​3.零比特填充法

4.违规编码法

差错控制

差错从何而来?

数据链路层的差错控制​

检错编码

1.奇偶校验码

2.CRC循环冗余码

纠错编码-海明码

1.确定校验码位数r

2.确定校验码和数据的位置

3.求出校验码的值

4.检错并纠错​

流量控制与可靠传输机制

数据链路层的流量控制

流量控制的方法

可靠传输、滑动窗口、流量控制


 个人主页:个人主页
 系列专栏:计算机网络专栏

数据链路层

数据链路层基本概念

结点:主机、路由器
链路:网络中两个结点之间的物理通道,链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。
数据链路:网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路。
:链路层的协议数据单元,封装网络层数据报。

数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报。

数据链路层功能概述

数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。

功能一:为网络层提供服务。无确认无连接服务,有确认无连接服务,有确认面向连接服务。有连接一定有确认!
功能二:链路管理,即连接的建立、维持、释放(用于面向连接的服务)。
功能三:组帧。
功能四:流量控制。限制发送方哦~
功能五:差错控制(帧错/位错)。

封装成帧

封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。
首部和尾部包含许多的控制信息,他们的一个重要作用:帧定界(确定帧的界限)。
帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。
组帧的四种方法: 1.字符计数法,2.字符(节)填充法,3.零比特填充法,4.违规编码法。

透明传输

透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就“看不见”有什么妨碍数据传输的东西。
当所传数据中的比特组合恰巧与某一个控制信息完全一样时, 就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。

组帧的四种方法:

1.字符计数法

当帧错误时,后面的也会一起错误。

就比如第一个帧中的5变成4:那么 第一个帧就会变成4个字符 第二个帧变成4字符

2.字符填充法

字符填充法中     我们以00000001判断为开始   00000100判断为结束

如果传输的文本由二进制组成 中间含有  00000100  那么接收方会认为是结束

故此我们要采用字节填充 如下图

字节填充 :在文本中  00000001  和  00000100 前面填充ESC 这样就不会认为是结束

3.零比特填充法

4.违规编码法

差错控制

差错从何而来?

概括来说,传输中的差错都是由于噪声引起的。
全局性  1.由于线路本身电气特性所产生的随机噪声(热噪声),是信道固有的,随机存在的。
             解决办法:提高信噪比来减少或避免干扰。(对传感器下手)
局部性  2.外界特定的短暂原因所造成的冲击噪声,是产生差错的主要原因。
             解决办法:通常利用编码技术来解决。

数据链路层的差错控制

冗余编码
在数据发送之前,先按某种关系附加上一-定的冗余位,构成一个符合某一规则的码字后再发送。
当要发送的有效数据变化时,相应的冗余位也随之变化,使码字遵从不变的规则。接收端根据收
到码字是否仍符合原规则,从而判断是否出错。

检错编码

1.奇偶校验码

更多详情:校验码(奇偶校验码)_大图书馆的牧羊人的博客-CSDN博客_奇偶校验码

2.CRC循环冗余码

更多详情:CRC循环冗余校验码_出走刺猬的博客-CSDN博客_crc循环冗余校验

纠错编码-海明码

1.确定校验码位数r

2.确定校验码和数据的位置

3.求出校验码的值

4.检错并纠错

更多详情:汉明码——计算机网络——全网最通俗的讲解_刘扬俊的博客-CSDN博客_汉明码

流量控制与可靠传输机制

数据链路层的流量控制

较高的发送速度较低的接收能力的不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作。
数据链路层的流量控制是点对点的,而传输层的流量控制是端到端的。
数据链路层流量控制手段:接收方收不下就不回复确认。
传输层流量控制手段:接收端给发送端一一个窗口公告。(后面文章会提到)

数据链路层流量控制手段 就像下图一样:

养了一只猫(接收方),在碗里放入猫粮给猫(接收方)送去,只有当猫吃完猫粮,主人才会拿回碗(回复确认),此后继续添加猫粮给猫(接收方)。

流量控制的方法

提示:下面的内容下一篇博客会详细讲解

可靠传输、滑动窗口、流量控制

可靠传输:发送端发啥,接收端收啥。
流量控制:控制发送速率,使接收方有足够的缓冲空间来接收每--个帧。

3.1.1计算机网络(数据链路层 差错控制 循环冗余码 海明码 流量控制)相关推荐

  1. 【计算机网络】数据链路层 : 差错控制 ( 纠错编码 | 海明码 | “海明码“ 原理 | “海明码“ 工作流程 | 确定校验啊位数 | 确定校验码和数据位置 | 求校验码值 | 检错纠错 )★

    文章目录 一. "海明码" 工作原理 二. "海明码" 工作流程 三. 确定校验码位数 四. 确定校验码和数据位置 0. 确定校验码位置 1. 引入二进制位 2 ...

  2. 差错控制:海明码、循环冗余校验码

    海明码 海明码的编码方法 例题: D B 循环冗余校验码 奇偶校验

  3. 【计算机网络】数据链路层 : 总结 ( 封装成帧 | 流量控制与可靠传输 | 差错控制 | 介质访问控制 | 局域网 | 广域网 | 数据链路层设备 ) ★★★

    文章目录 一.数据链路层 功能 二.封装成帧 ★ 三.流量控制 和 可靠传输 ★★ 1.停止等待协议 ★ 2.后退 N 帧 ( GBN ) 协议 ★ 3.选择重传 ( SR ) 协议 ★ 四.差错控制 ...

  4. 数据链路层-差错控制(奇偶校验,定比码,正反码)

    差错控制 概述 由来:信道传输中的差错都是由于噪声引起的. 噪声类别 产生原因 解决方法 产生差错 随机热噪声 信道本身固有的.持续存在的,是由导体中分子的热运动引起的,是无法完全消除的 提高信噪比来 ...

  5. 【笔记】计算机网络-数据链路层

    目录 概念 封装成帧&透明传输 1.字符计数法 2.字符填充法 3.零比特填充法 4.违规编码法 差错控制(检错编码) 奇偶校验码 CRC循环冗余码 海明码 流量控制与可靠传输机制 停止-等待 ...

  6. 3.3.1网络原理数据链路层之差错控制(检错编码和纠错编码)->(奇偶校验码、CRC循环冗余码、海明码)(转载)

    原文链接:https://blog.csdn.net/weixin_43914604/article/details/104864783 本博客为个人学习.研究或者欣赏用,如有侵权,请与我联系删除,谢 ...

  7. 计算机网络(十)-数据链路层-差错控制

    一.差错控制 1.1 差错: 噪声引起 全局性:由于线路本身电气特性所产生的随机噪声(热噪声),是信道固有的,随机存在.解决办法:提高信噪比来减小或避免干扰. 局部性:外界特定的短暂原因所造成的的冲击 ...

  8. 【计算机网络】数据链路层 : 差错控制 ( 检错编码 | 差错来源 | 差错分类 | 冗余编码 )

    文章目录 一. 差错来源 二. 差错分类 三. 差错控制 四. "物理层" 编码 与 "数据链路层" 编码 对比 五. 冗余编码 一. 差错来源 "差 ...

  9. 数据链路层差错控制——奇偶校验码、循环冗余码和汉明码(海明码)

    差错控制 传输中的差错由噪声引起.一类称为热噪声,是信道所固有的.持续的,并且随机的.另一类是外界环境造成的短暂的冲击噪声.热噪声可以通过提升信噪比降低干扰.而后者不可以通过提升信号幅度来避免干扰,带 ...

最新文章

  1. python默认数据类型转换_Python 数据类型转换
  2. 创新创新再创新(4)
  3. jquery书写一个简易的二级联动
  4. js前端实现多图图片上传预览的两个方法
  5. 同步和异步概念(由DZW前端框架引发的百度地图api无法加载问题总结)
  6. 行为设计模式 - 策略设计模式
  7. 数据结构系统学习(1)数据类型和数据结构的概念
  8. 【Android】16.3 带Intent过滤器的Services
  9. 一个CPU核可以设计为两个以上的线程
  10. Eclipse环境搭建-scala
  11. 复试口语常见话题整理以及华师18 19年topic
  12. 概率论在实际生活的例子_概率论在实际生活中的应用
  13. android裸眼图片,一种Android应用的裸眼3D显示方法与流程
  14. 万字长文带你轻松了解LSTM全貌
  15. 求一个n*n矩阵对角线元素之和C语言,求一个n*n矩阵主对角线之和,次对角线元素之和.用指针完成...
  16. Action Recognition Using Attention-Joints Graph Convolutional Neural Networks翻译
  17. SubstancePainter零基础快速入门教程
  18. 离散数学 (II) 习题 1
  19. IOS---UIColor RGB颜色对照表
  20. 智能床垫监测体征助力智慧养老,更加智能化的智能床垫-新导智能

热门文章

  1. Command ‘yum‘ not found, did you mean
  2. 接私活赚到W了!!!!
  3. Android SDK简介
  4. 知识图谱课程报告-关系抽取文献综述
  5. linux电脑支持5g吗,支持5G的全键盘掌上电脑设备Astro Slide
  6. 事业单位笔试:《综合知识》大纲
  7. 人工智能基础 | 机器学习介绍(一)
  8. 大话西游手游服务器维护要多久,大话西游手游2017年1月5日维护公告
  9. 秒杀设计 mysql_秒杀项目-数据库表设计
  10. 北大计算机陈鹏,陈鹏(北大教授)