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

简介: 数据链路层 数据链路层基本概念 数据链路层功能概述封装成帧 透明传输组帧的四种方法:1.字符计数法​2.字符填充法​3.零比特填充法 4.违规编码法差错控制差错从何而来?数据链路层的差错控制​检错编码1.奇偶校验码2.CRC循环冗余码纠错编码-海明码1.确定校验码位数r2.确定校验码和数据的位置 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博客_汉明码


流量控制与可靠传输机制


数据链路层的流量控制


较高的发送速度和较低的接收能力的不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作。


数据链路层的流量控制是点对点的,而传输层的流量控制是端到端的。


数据链路层流量控制手段:接收方收不下就不回复确认。


传输层流量控制手段:接收端给发送端一一个窗口公告。(后面文章会提到)


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


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






流量控制的方法


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






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


可靠传输:发送端发啥,接收端收啥。


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


相关文章
|
5天前
|
网络协议 网络安全 数据中心
|
1月前
|
网络协议 网络架构
【网络】TCP/IP 五层网络模型:数据链路层
【网络】TCP/IP 五层网络模型:数据链路层
41 1
|
2月前
|
缓存 算法 网络协议
一文详细理解计算机网络 - 数据链路层(考试和面试必备)
这篇文章详细介绍了计算机网络中数据链路层的概念、基本问题、点对点信道和广播信道的数据链路协议(如PPP和CSMA/CD),以及局域网和以太网的相关知识。
194 0
一文详细理解计算机网络 - 数据链路层(考试和面试必备)
|
1月前
|
移动开发 网络协议 测试技术
Mininet多数据中心网络拓扑流量带宽实验
Mininet多数据中心网络拓扑流量带宽实验
49 0
|
3月前
|
弹性计算 网络协议
计算机网络-数据链路层
计算机网络-数据链路层
计算机网络-数据链路层
|
3月前
|
云安全 安全 物联网
惊叹:《黑神话:悟空》所在 Steam 发行平台遭网络狂袭,威胁流量猛增两万倍!
8月24日,热门游戏《黑神话:悟空》的玩家发现主要发行平台Steam无法登录,引发“#Steam崩了#”登上微博热搜。起初猜测是在线人数过多导致,但完美世界竞技平台公告表示系遭受DDoS攻击。奇安信Xlab实验室详细解析了此次攻击,发现攻击指令暴增两万多倍,涉及多个僵尸网络。此次攻击对Steam造成严重影响,但也凸显了网络安全的重要性。为保障游戏环境安全,需加强服务器防护并选择可靠的防御公司。德迅云安全提供高防服务器、DDoS高防IP和安全加速SCDN等服务,助力游戏企业提升安全性。
|
3月前
|
监控 安全 Serverless
SAE 防火墙的震撼之举:默认拦截公网一切流量,开启网络安全的无敌模式!
【8月更文挑战第7天】在数字化时代,网络安全至关重要。SAE(Serverless Application Engine,无服务器应用引擎)的防火墙功能默认阻止所有公网流量,为应用与数据提供坚实保护。这像坚固城门,将潜在威胁拒之门外,减少恶意攻击风险。如同在混沌中建立秩序,划定网络安全边界。但依赖默认设置不足,需根据业务需求配置规则,如开放特定端口或IP范围。还需持续监控防火墙效果,通过分析访问日志等手段及时调整优化,确保最佳防护效果。
63 0
|
4月前
|
算法 网络协议 应用服务中间件
(五)网络编程之流量接入层设计:基于性能怪兽从零构建日均亿级吞吐量的网关架构!
在前篇关于《Nginx》的文章中曾经提到:单节点的Nginx在经过调优后,可承载5W左右的并发量,同时为确保Nginx的高可用,在文中也结合了Keepalived对其实现了程序宕机重启、主机下线从机顶替等功能。
|
5月前
计算机网络学习记录 数据链路层 Day3 (上)(1)
计算机网络学习记录 数据链路层 Day3 (上)(1)
33 2
|
4月前
|
算法 网络协议 Shell
掌握Linux网络:深入理解TC —— 你的流量控制利器
目前需要做一款关于Linux下对于某IP限制的一个工具(QOS),在网上寻找了许多关于TC的教程,大多数都是一些比较基础的教学,且多数都是对网口的一些限制,然后自己研究了一段时间,最后有一些小小的了解,故在此分享给大家。
662 0
下一篇
无影云桌面