计算机网络(4.1)——数据链路层的功能概述、封装成帧和透明传输

【计算机网络】—— 封装成帧 & 透明传输 目录 阅读详情

基本概念

结点:主机、路由器

链路:网络中两个结点之间的物理通道,链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。

数据链路:网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路。

帧:链路层的协议数据单元,封装网络层数据报。

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

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

也是就数据链路层是对网络层提供服务,为了防止物理层传输错误而多的一层屏障。

功能一:为网络层提供服务。无确认无连接服务,有确认无连接服务,有确认面向连接服务。有连接一 定 有确认!

功能二:链路管理,即连接的建立、维持、释放(用于面向连接的服务)。

功能三:组帧。

功能四:流量控制。

功能五:差错控制(帧错/位错)。

封装成帧和透明传输

封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。

首部和尾部包含许多的控制信息,他们的一一个重要作用:帧定界(确定帧的界限)。

一帧多大呢?MTU就是帧的数据部分的最大长度,也就是IP数据报的最大长度。

帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。

组帧的四种方法: 1.字符计数法,2.字符(节)填充法,3.零比特填充法,4.违规编码法。

会根据不同的协议有不同的长度。

透明传输

透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就“看不见”有什么妨碍数据传输的东西。

数据链路层对于数据来说像是透明的。为了使传输的数据不会被认为是帧头部或者帧尾部,就需要以下措施来保证数据传输的透明性。

当所传数据中的比特组合恰巧与某一一个控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。

字符计数法

帧首部使用一个数字来代表长度,来表明帧内字符数。缺点就是,如果帧首部的字符出错,之后的帧都会出错。很少用。

字符填充法

 

当传送的帧是由文本文件组成时(文本文件的字符都是从键盘上输入的,都是ASCIl码) 。不管从键盘上输入什么字符都可以放在帧里传过去,即透明传输。

当传送的帧是由非ASCII码的文本文件组成时(二进制代码的程序或图像等)。就要采用字符填充方法实现透明传输。

总之,就是利用传输信息中不可能出现的信息来当作首部和尾部。如果还是很出现了一样的,如上图,就可以用转义字符来表示这不是首部和尾部,如下图。

零比特填充法

违规编码法

 

差错控制

当数据信号从发送端发送到物理线路时,由于物理线路存在噪声,因此数据信号经过物理线路的噪声,到达接收端时,已经是数据+噪声的叠加。这就是差错的来源。

全局性1. 由于线路本身电气特性所产生的随机噪声(热噪声),是信道固有的,随机存在的。

解决办法:提高信噪比来减少或避免干扰。(对传感器下手)

局部性2.外界特定的短暂原因所造成的冲击噪声,是产生差错的主要原因。

解决办法:通常利用编码技术来解决。

无确认无连接的错误交给传输层。

链路层有差错检测是防止传输错误的帧,代价大。

物理层主要是对单个比特进行编码,数据链路层是对传输的一组比特进行编码。

冗余编码

奇偶校验码

只能检查出奇数个比特错误,检错能力为50%。一个、三个、五个错误可以检查出来,但是要是两个位发生变化,0变1,1变0,检查不出来。

CRC循环冗余码

CRC只能保证不出现比特差错,但是不能保证不出现帧差错,所以他也不是可靠的传输。

就是把被除数和除数相加 在除以除数,看是否余数为0.

 

在数据链路层仅仅使用循环冗余检验CRC差错检测技术,只能做到对帧的无差错接收,即“凡是接收端数据链路层接受的帧,我们都能以非常接近于1的概率认为这些帧在传输过程中没有产生差错”。接收端丢弃的帧虽然曾收到了,但是最终还是因为有差错被丢弃。“凡是接收端数据链路层接收的帧均无差错”。

“可靠传输”:数据链路层发送端发送什么,接收端就收到什么。

链路层使用CRC检验,能够实现无比特差错的传输,但这还不是可靠传输。因为还是有丢弃的帧。

纠错编码——海明码

这个在计组也有涉猎。但是过程有点复杂,可以参考https://www.cnblogs.com/godoforange/p/12003676.html

 

 

 

 

 

 

 

 

【计算机网络】第八话 · 数据链路层的功能 从今天开始,我将正式开启一个新的打卡专题——【计算机网络·宇宙计划】,没错!这是今年上半年的一整个系列计划!本专题目的是通过百天刷题计划,通过题目和知识点串联的方式,刷够1000道题!完成对计算机网络相关知识的全方位复习和巩固;同时还配有专门的笔记总结和文档教程哦!想要搞定,搞透计算机网络的同学,欢迎订阅本专栏!... 阅读详情

相关推荐

【计算机网络】数据链路层深度解析

文章主要内容如下:概述、三个重要问题、封装成帧、差错检测、可靠传输、使用广播信道的数据链路层、数据链路层的互连设备、媒体接入、MAC地址、集线器与交换机区别、以太网交换机生成树协议STP

小洁洁 2018

【链路层】数据链路层的三个基本问题:封装成帧、透明传输和差错检测

数据链路层属于计算机网络的低层。数据链路层使用的信道主要有以下两种类型:点对点广播所谓链路(link),就是从一个节点到相邻节点的一段物理线路,而中间没有任何其他的交换节点。数据链路(data link)除了必须有一条物理线路外,还必须有一些必要的通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。//数据链路=物理链路+通信协议实现这些通信协议最常用的方法是使用网络适配器(既有硬件,也包括软件)。一般的适配器都包括了数据链路层和物理层这两层的功能。

swadian2008的博客 2876

流媒体学习之路(mediasoup)——simulcast 与 svc 简介(7)

流媒体学习之路(mediasoup)——simulcast 与 svc(7) 文章目录流媒体学习之路(mediasoup)——simulcast 与 svc(7)

qw225967的博客 7339

计算机网络学习笔记(三):数据链路层

数据链路层 数据链路层概述 链路:就是从一个结点到相邻结点的一段物理链路,中间没有任何其他的交换节点 数据链路:指把实现通信协议的硬件和软件加到链路上,构成数字链路 数据链路层以帧为数据单位传输数据 数据链路层的三个问题 封装成帧 差错检验 可靠传输 封装成帧 两种帧格式 数据链路层将上层交付的协议数据单元添加帧头和帧尾使之称为帧 帧头和帧尾中包含重要的控制信息 帧头和帧尾的重要作用是帧定界 透明传输 透明传输指数据链路层对上层交付的传输数据没有任何限制,跟透明一样 向计算机网络这种分层的结构,我

qq_51088445的博客 1318

5G R18标准:AI/ML如何重塑空口优化与网络架构

人工智能与机器学习正逐步成为通信网络优化的核心技术。其核心原理在于通过数据驱动模型,从海量网络数据中学习信道变化、用户行为等统计规律,替代传统的基于固定规则的优化方法。这一技术范式能显著提升网络性能与效率,尤其在空口资源管理、干扰协调和能耗控制等场景中价值突出。在5G Advanced(R18)标准化框架下,AI/ML被系统性地引入空口设计,聚焦于信道状态信息反馈增强、波束管理与预测等关键用例。通过定义网络侧AI、终端侧AI及联合学习的标准化接口与流程,R18旨在实现跨厂商设备的智能协同,推动无线网络向自适

weixin_35671843的博客 242

vasp和ms_武汉理工大学赵焱课题组开发脚本 MS建模一键获取VASP输入文件POSCAR

本文给大家推介并分享一个通过Materials Studio一键获取VASP输入文件POSCAR的脚本,xsd2pos.pl。此脚本是武汉理工大学首席教授赵焱在帮助学生解决VASP计算问题时编写,解决了其他间接非手动获取POSCAR存在的问题,同时也相较于其他方法更为便捷,相信会对从事VASP计算的同行们带来便利。赵焱老师怀着哺育天下学子的情怀,希望给大家分享一下。下文介绍一下它的使用方法以及它所...

weixin_39706367的博客 2286

什么是透明传输

透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。 透明传输就是在传输过程中,对外界透明,就是说你看不见他是传送网络不管传输的业务如何,我只负责将需要传送的业务传送到目的节点,同时保证传输的质量即可,而不对传输的业务进行处

斜阳雨陌 1万+

YOLOv10改进策略【模型轻量化】| 替换骨干网络为MoblieNetV2,含模型详解和完整配置步骤

本文记录的是。采用深度可分离卷积将标准卷积分解为深度卷积和1×1卷积。同时,引入来,避免非线性层导致的性能下降问题。本文将应用到YOLOv10中,借助其高效的结构和特性,在保持一定精度的前提下,显著降低YOLOv10的计算复杂度和内存占用。

Limiiiing的博客 532

数据链路层实现透明传输的方法

实现透明传输的方法 数据链路层三个基本问题 1.封装成帧 封装举例: 2.透明传输 实现透明传输的方法:

zijin-jdd的博客 5008

ReAct 智能体 Agent:架构解析与实践拓展

ReAct 智能体 Agent 凭借其推理与行动协同的独特架构,在众多人工智能应用场景中展现出巨大的潜力。从智能办公到教育辅导,从智能家居到工业物联网,ReAct 智能体通过精准推理和高效行动,为用户提供了更加智能、便捷的服务体验。然而,在实际应用过程中,仍面临工具调用安全、模型持续学习、多智能体协作管理以及性能优化等多方面的挑战。通过合理的策略和技术创新,如强化工具审核机制、构建持续学习框架、设计高效协作协议和采用性能优化手段,我们有望逐步克服这些挑战,进一步提升 ReAct 智能体的性能和可靠性。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 1686

【从零开始入门unity游戏开发之——C#篇37】进程、线程、C# 中实现多线程有多种方案和async/await异步编程

进程、线程、C# 中实现多线程有多种方案和async/await异步编程

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1468

计算机网络:数据链路层 - 封装成帧 & 透明传输 & 差错检测

讲解计算机网络中的基本概念,封装成帧、透明传输、差错检测

博客网站 https://async-area.com 2892

AutoSAR从0开始实战 --- 目录

​​​​​​本专栏是全网最真实的AutoSAR实战专栏,博主将从一个0基础小白的身份来讲解AutoSAR工具的配置,以及相应代码的讲解。

wj博客 1728

【计算机网络篇】数据链路层(2)封装成帧和透明传输

因为数据链路层会对上层交付的协议数据单元有限制,其内容不能包含帧定界符,很显然,这样子的数据链路层没有什么应用价值。接收方的数据链路层在物理层交付的比特流中提取帧,遇到第一个帧定界符的时候,认为这是帧的开始,当遇到转移字符时就知道了其后面的1个字节的内容,虽然与帧定界符相同,但是它是数据而不是帧定界符。这是发送方的数据链路层封装成的一个帧,然而,在该帧的数据载荷部分,恰好包含有作为帧定界符的特定位串,发送方的数据链路层在将该帧交付给物理层进行发送之前,会扫描帧的时间载荷。帧定界符是一个特殊数值。

小吉妙妙屋 5005

Qt:一个强大而灵活的跨平台应用程序开发框架

代码示例中的源代码是简单的示例,用于演示Qt框架的一些基本特性。实际应用中,开发人员可以根据自己的需求和项目要求,使用Qt框架提供的丰富功能和组件进行开发。在Qt的官方文档和示例代码中,您可以找到更多详细的教程和示例,以帮助您更好地理解和使用Qt框架。它提供了丰富的工具和功能,支持跨多个平台进行开发,并具有高度的可定制性和灵活性。它提供了丰富的工具和功能,使得开发人员能够创建高性能、可扩展和易于维护的应用程序。下面将详细介绍Qt框架的优点,并提供一些相关的源代码示例。

CodeVorter的博客 848

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

【计算机网络】数据链路层|封装成帧|透明传输|差错检测|PPP协议|CSMA/CD协议

本篇主要介绍了链路层功能:封装成帧、透明传输、差错检测,巧记密封,透气性差;还有数据链路层重要协议:PPP协议、CSMA/CD协议(重点掌握原理)

qq_73017178的博客 2770

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

计算机网络笔记7 数据链路层的三个基本问题(封装成帧、透明传输、差错检测)

数据链路层协议有许多种,但有三个基本问题则是共同的。这三个基本问题是:封装成帧、透明传输、差错检测。本文详细介绍数据链路层的三个基本问题。 ...

Lora青蛙的博客 4658

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

数据链路层的主要功能

数据链路层主要功能数据传输差错控制数据链路层的三个基本问题1.封装成帧2. 透明传输3. 差错检测 数据传输 透明传输其实就是指无论是什么报文都可以传输。在数据链路层将网络层协议封装成帧时,会在首部和尾部分别添加SOH以及EOT这两个特殊字符,接收方是根据这两个字符来确定帧首和帧尾的,如果上层协议发送过来的数据(即链路层的数据部分)包含EOT,那么接收方在解析这个帧的时候就会误以为数据已经结束,据...

Lzc的博客 9万+

计算机网络之数据链路层

在研究数据链路层时,我们可忽略网络体系中的其他层只关注与数据链路层本身。虚拟局域网(Virtual Local Area Network,VLAN)是一种将局域网内的站点划分成与物理位置无关的逻辑组的技术,一个逻辑组就是一个VLAN,VLAN中的各站点具有某些共同的应用需求。属于同一VLAN的站点之间可以直接进行通信,而不属于同一VLAN的站点之间不能直接通信。网络管理员可对局域网中的各交换机进行配置来建立多个逻辑上独立的VLAN。

我的博客 3190

【计算机网络】第三章——封装成帧

【计算机网络】第三章——封装成帧

m0_74352571的博客 2516

组帧,封装成帧是什么?什么是透明传输?组帧的四种方法(字符计数法,字符填充法,零比特填充法,违规编码法)

透明传输是什么意思?组装成帧的四种方式。

wangyuxiang946的博客 1万+

计算机网络——数据链路层-封装成帧(帧定界、透明传输-字节填充,比特填充、MTU)

如下图所示,接收方在收到第一个帧定界标志时,认为这是帧的开始,这并没有错误;接收方数据链路层在物理层交付的比特流中提取帧遇到第一个帧定界符时,认为这是帧的开始,当遇到转义字符时,就知道其后面的1字节内容虽然与帧定界符相同,但它是数据而不是定界符。这是发送方数据链路层收到其上层交付的协议数据单元,给其添加帧头和帧尾,使其成为帧,为了简单起见,只画出了帧头和帧尾中的帧定界标志。,并不是每一种数据链路层协议的帧都包含有帧定界标志,例如在以太网版本2的MAC帧格式中,其帧头和帧尾中,并没有包含帧定界标志。

li13437542099的博客 8408

数据链路层的三个基本问题——封装成帧、透明传输和差错检测

封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,这样就构成了一个帧,接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。 透明传输中的“透明”是一个很重要的术语,它表示某一个实际存在的事物看起来却好像不存在一样,在数据链路层透明传送数据表示无论什么样的比特组合的数据,都能够按照原样没有差错地通过这个数据链路层。 现实的通信链路都不会是理想的,因此数据帧在传输中通常可能发生两种错误:比特差错和传输差错。

stepondust 的课堂 8846

计算机网络(三)—— 数据链路层(2、3):封装成帧、差错检测

2. 封装成帧2.1 总结2.2 课后练习3. 差错检测3.1 总结3.2 课后练习 2. 封装成帧   封装成帧是指数据链路层给上层交付的协议数据单元添加帧头和帧尾,使之成为帧。    ⋄\diamond⋄ 在帧头和帧尾中包含有重要的控制信息。    ⋄\diamond⋄ 帧头和帧尾的作用之一就是帧定界。   并不是每一种数据链路层协议的帧都包含有帧定界标志。例如,下图是以太网版本2的MAC格式,在其帧头和帧尾中并没有包含帧定界标志。那么接收方又是如何从物理层交付的比特流中提取出一个个的以太网帧呢?.

大彤小忆的博客 4223

数据链路层 要解决的三个问题 封装成帧 透明传输 差错控制

链路 (link) 是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。 一条链路只是一条通路的一个组成部分。 数据链路 (data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。 现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。(网卡工作在数据链路层) 一般的适配器都包括了数据链路层和物理层这两层的功能。(路由器的接口也是工作在数据链路层) 也有人采用另外的术语。这就是把链路分为物理链路和逻辑链路

小楼一夜听春雨,深巷明朝卖杏花 7928

数据链路层三个基本问题(封装成帧 、透明传输和差错检测 )

文章目录1 使用点对点信道的数据链路层1.1 数据链路和帧1.2 三个基本问题1. 封装成帧2 点对点协议 PPP3 使用广播信道的数据链路层4 扩展的以太网5 高速以太网 数据链路层使用的信道主要有以下两种类型: 点对点信道:这种信道使用一对一的点对点通信方式。 广播信道:这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。 1 使用点对点信道的数据链路层 1.1 数据链路和帧 链路 (link) 是

自成背后的博客 1万+
上一篇: 计算机网络(3)——物理层、通信模型、码元、香农和奈氏、数据的编码与调制、传输介质、物理层设备(中继器、集线器)
下一篇: 计算机网络(4.2)——流量控制和可靠传输
yebulk
博客等级 码龄8年 352粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值