数据链路层

合集下载

《计算机网络教学资料》第4章数据链路层

《计算机网络教学资料》第4章数据链路层
24
❖ 循环冗余码 CRC码又称为多项式码。 任何一个由二进制数位串组成的代码都可由 一个只含有0和1两个系数的多项式建立一一 对应的关系。
110001,表示成多项式 x5 + x4 + 1
25
循环冗余码 (CRC)
❖ 循环冗余码(CRC码,多项式编码) ➢ 110001,表示成多项式 x5 + x4 + 1
110101 111011 110101 111010 110101 111110 110101 101100 110101 110010 110101 01110 ← R 余数
30
发送方 接收方
举例: 1 0 0 0 0Q(1x) G(x) 1 1 0 0111 0 0 1 1 0 f0(x0.)xk0
01011010010 信 源 01011010010 信 源
➢ 随机性错误 前后出错位没有一定的关系
➢ 突发性错误 前后出错位有一定的相关性
(a) 理想状态
噪音干扰
(b) 实际环境
信 宿 01011010010 信 宿 01010010110
出错
14
2.差错控制的方式
❖ 反馈纠错 ❖ 前向纠错 ❖ 混合纠错 ❖ 反馈检验
在数据通信和计算机网络中,几乎都采用ARQ差错控制 技术。在采用无线电信道的通信系统中,由于信道误 码率较高,大多采用HEC方式的差错控制技术。
18
4.反馈检验 反馈校验方式又称回程校验。
接收端把收到的数据序列原封不动地转发回发送端,发端 将原发送的数据序列与返送回的数据序列比较。如果发现错 误,则发送端进行重发,直到发端没有发现错误为止。
11001 10000 11001
1 0 0 1R(x)

第三章数据链路层

第三章数据链路层

定义:在星形拓扑中, 每个设备只与中心控 制器有点到点专用链 路。设备并不互相连 接。中心控制器通常 为集线器Hub。 HUB是一个共享设备,主要提供信号放大和中转 的功能,它把一个端口接收的所有信号向所有端 口分发出去。一些集线器在分发之前将弱信号加 强后重新发出,一些集线器则排列信号的时序以 提供所有端口间的同步数据通信。
连接中设备间相互关系:
对等式:设备平等地共享链路。如环形、 网状拓扑。
主从式:由一个设备控制通话而其他设备 必须通过它进行传输。如星形、树形拓扑。 总线式拓扑适合于任意一种模式。
1、Mesh Topology(网状拓扑) 定义:在网状拓扑中,设备之间实现点对点连接, 每条链路只承载所连接的两站点之 间的通信流量。
CRC是基于二进制除法的。 定义
CRC是通过在数据单元末尾附加一串循环冗余码 或循环冗余校验余数使得整个数据单元可被另一个预 定二进制数(生成函数)所整除。在传输终点,用同一 个数去除输入的数据单元。如果此时不产生余数,则 认为数据单元完全正确,接受该数据单元。有余数则 意味着该数据单元在传输过程中被破坏而拒绝该数据 单元。
余数为0, 所以码字正确。
② 因生成码共5位,所以: 冗余码有4பைடு நூலகம்,为1001 ;
信息码是:110011。
注意:
循环冗余校验CRC只能做到差错检测而不能进行 差错纠错。 循环冗余校验CRC只能做到无差错接受,即“凡 是接收端数据链路层接受的帧,都以非常接近于1的 概率认为这些帧在传输过程中没有产生差错”。 但要使传输到接收端的帧无差错、无丢失、无重 复,按发送顺序接受,就必须加上确认和重传机制。
到达接收方的数据单元首先是数据,然后是 CRC码,接收方将整个数据串(数据+CRC码)当作 一个整体去除以用来产生CRC码的同一个除数。 如果数据串无差错到达接收方,则产生余数0, 数据单元将通过校验;如果在传输中数据单元被改 变,则除法将产生非零余数,数据单元将不能通过 校验。

408考研计算机网络——第三章 数据链路层

408考研计算机网络——第三章 数据链路层

408考研计算机网络——第三章数据链路层第3章数据链路层结点:主机、路由器链路:网络中两个结点之间的物理通道,传输介质有双绞线、光纤和微波。

分为有线、无线链路数据链路:网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路帧:链路层的协议数据单元,封装网络层数据报功能:为网络层提供服务、链路管理、组帧、流量控制、差错控制3.1 数据链路层的功能数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。

其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路·为网络层提供服务无确认无连接服务有确认无连接服务有确认面向连接服务·链路管理即连接的建立、维持、释放(用于面向连接的服务)·组帧(帧定界、帧同步、透明传输)封装成帧:在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。

接收端在收到物理层上交的比特流后,根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束首部和尾部包含许多的控制信息,他们的一个重要作用:帧定界(确定帧的界限)帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。

最大传送单元MTU:帧的数据部分的长度上限透明传输:当所传数据中的比特组合恰巧与某一个控制信息完全一样时,采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。

保证数据链路层的传输是透明的组帧的四种方法:字符计数法、字符(节)填充法、零比特填充法、违规编码法·流量控制限制发送方的数据流量,使其发送速率不超过接收方的接受能力✳对于数据链路层:控制的是相邻两结点之间数据链路上的流量对于传输层:控制源端到目的端之间的流量·差错控制位错:循环冗余校验CRC差错控制:自动重传请求ARQ帧错:定时器、编号机制*三个基本问题:封装成帧、透明传输、差错检测3.2 组帧·字符计数法帧首部使用一个计数字段(第一个字节,八位)来标明帧内字符数。

第4章数据链路层

第4章数据链路层

说明:在很多数据链路协议中,使用字符 计数法和一种其它方法的组合
第四章
数据链路层
4.3 差错控制
差错原因与类型
原因:主要是因为在通信线路上噪声干扰的结果 类型:随机错和突发错
热噪声----〉 随机错误 冲击噪声--〉 突发错误 通信过程中产生的传输差错是随机错误和突发错误构成的
误码率Pe
计算机通信的平均误码率要求< 10 -9
发端连续发送M帧,接收端收到后,依 次检验并发出应答帧 若第N帧出错,丢弃第N帧,则缓存第n 帧以后的所有正确帧(要有足够缓存) 接收端发送出错信息(第N帧出错) 发送端收到出错信息则重发第N帧
第四章
数据链路层
帧丢失情况
两种可能
数据帧丢失 确认帧丢失
解决办法:超时重发
可 能 导 致
重复帧情况 解决重复帧问题:采用帧编号
用物理层信息编码中未用的电信号来作为帧的边界
只适用于物理层编码有冗余的网络
802 LAN:Manchester encoding or Differential Manchester encoding 用 high-low pair/low-high pair表示1/0, high-high/low-low不表示数据,可以用来做 定界符。
N(S) S M 3 4
P/F P/F P/F 5 6
N(R) N(R) M 7 8
A是地址字段(Address),由8位组成 C是控制字段(Control)
信息帧:第一bit为0,2至4比特为当前发送的信息帧的序号 6至8比特则代表为接收序号即期望收到的帧的发送序号 监控帧:1至2比特为“10”, 3至4比特用以代表四种不同 类 型的监控帧,协调双方通信状态(流量控制,差错控 制) 无序号帧:第1至2比特为“11”, 3、4、6、7和8比特用M (Modifier)表示,M的取值不同表示不同功能的无序号帧, 用于建立连接和拆除连接

第三章数据链路层

第三章数据链路层

第三章数据链路层重点内容(⼀)数据链路层的功能(⼆)组帧(三)差错控制1、检错编码2、纠错编码(四)流量控制与可靠传输机制1、流量控制、可靠传输与滑动窗⼝机制2、停⽌-等待协议3、后退N帧协议(GBN)4、选择重传协议(SR)⼀、使⽤点对点信道的数据链路层1、数据链路和帧链路是⼀条⽆源的点到点的物理线路段,中间没有任何其他的交换结点数据链路除了物理线路外,还必须有通信协议来控制这些数据的传输。

若把实现这些协议的硬件和软件加到链路上,就构成了数据链路常常在两个对等的数据链路层之间有⼀个数字管道,⽽在这条数字管道上传输的数据是帧2、基本问题(功能)(1)封装成帧封装成帧就是在⼀段数据的前后分别添加⾸部和尾部,这样就构成了⼀个帧。

接收端在收到物理层上交的⽐特流,就能根据⾸部和尾部的标记,从收到的⽐特流区别帧的开始和结束(⾸部和尾部还夹杂着控制信息)数据链路帧的特点数据部分的前⾯和后⾯分别添加上⾸部和尾部,构成⼀个完整的帧。

帧是数据链路层的数据传送单元。

⾸部和尾部还包括许多必要的控制信息每⼀种链路层协议都规定了所能传送的帧的数据部分长度上限——最⼤传送单元MTU⼀个控制字符SOH放在⼀个帧的最前⾯,表⽰帧的⾸部开始。

另⼀个控制字符EOT表⽰帧的结束(⼀般情况下,⾸部和尾部的长度加起来⼀般⼩于原始报⽂的长度)(2)透明传输“在数据链路层透明传输数据”表⽰⽆论什么样的⽐特组合的数据都能够通过这个数据链路层链路采⽤字节填充法,来确保上⽅情况的发⽣(3)差错检测传输错误的⽐特占所传输⽐特总数的⽐率称为误码率BER。

例如,误码率为10的负⼗次⽅时,表⽰平均每传送10的⼗次⽅个⽐特就会出现⼀个⽐特的差错在计算机⽹络传输数据时,必须采⽤各种差错检测措施。

⽬的在数据链路层⼴泛使⽤了循环冗余校验技术(CRC)CRC①在发送端,先把数据划分组,假定每组k个⽐特。

现假定待传送的数据M=1010001101(k=10)。

CRC运算就是在数据M的后⾯添加供差错检验⽤的冗余吗,然后构成⼀个帧发送出去,⼀共发送(k+n)位设n=5,P=110101(P是除数),模2运算的结果是:Q=1101010110余数R=01110将余数R作为冗余码添加在数据M的后⾯发送出去,即发送的数据是101000110101110,或2的n次⽅乘以M+R在数据后⾯添加上的冗余码称为帧检验序列FCS循环冗余检验CRC和帧检验序列FCS并不等同CRC是⼀种常⽤的检错⽅法,⽽FCS是添加在数据后⾯的冗余码FCS可以⽤CRC这种⽅法得出,但CRC并⾮⽤来获得到FCS的唯⼀⽅法②在接收端把接收到的数据以帧为单位进⾏CRC检验:把收到的每⼀个帧都除以同样的除数P(摸2运算),然后检验得到的余数R③在接收端对收到的每⼀帧经过CRC检验后,有以下两种情况:(a)若得出的余数R=0,则判定这个帧没有差错,就接受(b)若余数R≠0,则判定这个帧有差错,(但⽆法确定究竟是哪⼀位或哪⼏位出现了差错),就丢弃仅⽤循环冗余检验CRC差错检测技术只能做到⽆差错接受“⽆差错接受”是指:“凡是接受的帧(不包括丢弃的帧),我们都能以⾮常接近于1的概率认为这些帧在传输过程中没有产⽣差错”。

三、数据链路层

三、数据链路层

三、数据链路层内容摘要:数据链路层协议有很多,但有三个基本问题是共同的:封装成帧、透明传输、差错检测数据链路层主要分两种:点对点信道:使⽤PPP协议⼴播信道:使⽤CSMA/CD协议使⽤⼴播信道的数据链路层——局域⽹使⽤⼴播信道的以太⽹——以太⽹在局域⽹⾥占有绝对优势,⼏乎成了局域⽹的同义词适配器、转发器、集线器、⽹桥、以太⽹交换机点对点和⼴播信道的结合——使⽤以太⽹进⾏宽带接⼊需要先知道的⼀些名词和概念:链路:两点之间的物理线路(可以是有线也可以是⽆线)数据链路:链路+协议⽹络适配器:通过其中的软件和硬件来实现数据链路上的协议。

⼀般的适配器都包括了物理层和数据链路层的功能路由器在转发分组时使⽤的协议栈只有下⾯三层。

(不⼀定,当路由器之间交换路由信息时,根据所使⽤的路由协议的不同,也可能需要使⽤运输层协议,见4.5节)数据链路层的三个基本问题封装成帧发送端对IP数据报添加⾸部和尾部,封装成帧⾸部+尾部的作⽤就是帧定界,指明从哪到哪是⼀个完整的帧。

接收端根据帧定界符丢弃不完整帧帧的构成:⾸部+尾部+IP数据报(帧的数据部分)各种数据链路层协议都对帧的⾸部和帧的尾部格式有明确的规定,还都规定了各⾃的最⼤传送单元 MTU(帧数据部分的最⼤长度)透明传输透明表⽰⼀个实际存在的事物看起来却好像不存在⼀样(例如玻璃)ASCLL码7位编码,⼀共128个不同的编码,可打印的95个,不可打印的33个SOH(00000001)和EOT(00000100)是帧的⾸尾定界符,都占有8bit,⽽ASCLL码7bit。

当帧是⽤⽂本⽂件(ASCLL码)组成的时候,不管从键盘上输⼊什么字符,都会通过这个数据链路层,仿佛是透明的⼀样。

但是图像⽂件等不保证不会出现SOH和EOT所以可能会出现阻碍(数据传输错误),解决办法是加转义字符ESC(00011011),这种⽅法称为“字节填充”或“字符填充”差错检测传输差错:①帧丢失②帧重复③帧失序⽐特差错:现实通信链路中,⽐特在传输时会出现,0变1,1变0。

osi层模型各层传输单位

osi层模型各层传输单位

osi层模型各层传输单位OSI层模型是一种标准的网络体系结构,用于规范计算机网络中不同层次的功能和协议。

它由七个层次组成,每个层次都负责特定的任务和功能。

本文将介绍OSI模型的各个层次及其传输单位。

第一层:物理层物理层是OSI模型的最底层,负责处理网络中的物理连接。

其主要任务是传输比特流,将比特流转化为电压、频率等物理信号。

物理层的传输单位是比特。

第二层:数据链路层数据链路层负责将物理层传输的比特流划分为数据帧,并通过物理介质进行传输。

它还负责错误检测和纠正,以确保数据的可靠传输。

数据链路层的传输单位是帧。

第三层:网络层网络层负责将数据包从源主机发送到目标主机,通过路由选择来确定传输路径。

它使用IP协议来定义主机的逻辑寻址和路由选择。

网络层的传输单位是数据包。

第四层:传输层传输层提供端到端的可靠数据传输和错误控制。

它使用TCP和UDP协议来实现数据传输。

传输层的传输单位是段(TCP)或用户数据报(UDP)。

第五层:会话层会话层负责建立、管理和终止应用程序之间的会话。

它提供会话控制和同步,以确保应用程序之间的有效通信。

会话层的传输单位是会话数据。

第六层:表示层表示层负责处理应用程序数据的格式和编码方式。

它将数据转换为适合传输的格式,并提供数据加密和解密等功能。

表示层的传输单位是表示数据。

第七层:应用层应用层是用户与网络之间的接口,负责处理特定的应用程序协议。

它包括HTTP、FTP、SMTP等应用层协议。

应用层的传输单位是报文。

总结起来,OSI层模型的各层次传输单位分别是:物理层传输比特、数据链路层传输帧、网络层传输数据包、传输层传输段或用户数据报、会话层传输会话数据、表示层传输表示数据,以及应用层传输报文。

通过OSI层模型,网络工程师可以更好地理解和分析网络中各个层次的功能和协议。

这种模型的标准化有助于不同厂商的设备和系统之间的互操作性,使网络通信更加可靠和高效。

现代网络技术 第2章 数据链路层

现代网络技术 第2章   数据链路层
《现代网络技术》
第2章 数据链路层
2.3 连续ARQ协议
2.3.1 连续ARQ协议的工作原理 连续ARQ协议的主要思想是发送端在发送完一个数 据帧后,不是停下来等待应答帧,而是连续再发送若 干个数据帧。如果这时收到了接收端发来的确认帧, 那么还可以接着发送数据帧。由于减少了等待时间,
整个通信的吞吐量得到了提高。
DAT A
送主机 B
图2-2 两种数据传输情况对比 (a) 完全理想化的数据传输; (b) 具有最简单的流量控制的数据链路层协议 《现代网络技术》
第2章 数据链路层
2.2.3 实用的停止等待协议
图2-3(a)是数据在传输过程中不出差错的情况。 收方在收到一个正确的数据帧后,即交付给主机B,同 时向主机A发送一个确认帧ACK。当主机A收到确认帧 ACK后才能发送一个新的数据帧。这样就实现了收方 对发方的流量控制。
《现代网络技术》
第2章 数据链路层
为了防止不必要的超时重发,可以把tout 取稍大些,
例如,取tout=2tp+2tf于是得出 tT=tf+tout = 2tp+3tf α=tT/ tf= 3+2tp / tf 在这种情况下,连续ARQ协议明显优于停止等待
协议。
如果将线路速率从9.6 kb/s提高到56 kb/s,则对1200 bit长的数据帧, tf =1200/56000≈ 21 ms
《现代网络技术》
第2章 数据链路层
在发送端,设数据帧的实际到达率为λ(即每秒到
达λ个帧),则λ不应超过最大吞吐量λmax,即 λ≤(1-p)/tr 用时间tf进行归一化,得出归一化的吞吐量ρ为 ρ≡λtf≤(1-p) /α< 1
其中参数α是tf的归一化时间:
α ≡ tr / tf ≥ 1 当重发时间远小于发送时间时,α≈1,此时的归一 化吞吐量 ρ≤1- p, 当α≈1时

网络原理 第4章:数据链路层

网络原理  第4章:数据链路层
9
比较: • 纠错码能自动纠正错误,但实现困难, 在一般通信场合不易采用。 • 检错码需通过重传机制达到纠错目的, 但工作原理简单,实现容易。
10
常用的检错码
• 奇偶校验码 垂直奇(偶)校验 水平奇(偶)校验水平 水平垂直奇(偶)校验(方阵码) 特点:方法简单,但检错能力差,只用于通信 要求较低的环境。 • 循环冗余编码CRC 目前应用最广的检错码编码方法之一
差错产生的过程如图:
数据信号 与噪声信号 叠加后的波形 采样时间 接收数据 原始数据 0 0 1 1 0 0 1 1 1 1 0 0 1 0 1 1 1 1 0 0 0 0 1 1 0 0 0 1 0 0
出错的2位 (b)差错产生过程示意图
5
《计算机网络》第4章 数据链路层
物理线路的噪声分类: (1)热噪声: 由传输介质导体的电子热运动产生。 特点:时刻存在,幅度较小,强度与频率无关, 频谱很宽。 是一种随机噪声,由其引起的差错是随机差错。 (2)冲击噪声: 由外界电磁干扰引起。 •特点:幅度较大,是引起传输差错的主要原因。 •其引起的传输差错是一种突发差错。
实际发送: f(x)
.
x + R(x)
R'(x)= R(x) 接收正确 R'(x)≠ R(x) 接收错误
数据字段 校验字段 f(x)
.
x
k
+ R(x) 发送
12
《计算机网络》第4章 数据链路层
CRC校验的工作原理: • 任意一个由二进制位串组成的代码都可以和一个系数仅 为‘0’和‘1’取值的多项式一一对应。 • 例如:发送数据比特序列为10111,其对应的多项式为 f(x)=x4+x2+x+1. • 生成多项式为事先约定好的,如:G(x)=x4+x3+1;则对 应G(x)的二进制代码为: 11001 • f(x)﹒xk,k为生成多项式的最高幂值,即生成多项式 用二进制表示的位数-1。上例k=4=5-1。表示将发送数 据比特序列左移k位,用来存放余数。 • f(x)﹒xk/G(x),得到余数R(x) • 将f(x)﹒xk+R(x)作为整体,发送到接收端。 • 接收端用接收到的数据f′(x)采用相同的算法,去除 G(x),得到余数R′(x)。如果R′(x)等于 R(x),表示 发送没有出错。 13

第03章数据链路层

第03章数据链路层
停止等待协议的优点是简单,但缺点是信道利用率太低。
B
t
A
t TD
RTT TD + RTT + TA
TD U TD RTT T A
14
2. 连续ARQ协议
连续ARQ协议的工作原理就是在发送完一个数据
帧后,不是停下来等待确认帧,而是可以连续再发送 若干个数据帧。如果这时收到了接收端发来的确认帧,
34
数据链路层的两个子层
为了使数据链路层能更好地适应多种局域网标准, 802 委员会就将局域网的数据链路层拆成两个子层: 逻辑链路控制 LLC (Logical Link Control)子层 媒体接入控制 MAC (Medium Access Control)子层。 与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种传输媒体对 LLC 子层来说都是透明的。

9
接收端对收到的每一帧进行 CRC 检验
接收端对收到的每一帧进行 CRC 检验后,可能出现 两种情况: (1) 若得出的余数 R = 0,则判定这个帧没有差错, 就接受(accept)。 (2) 若余数 R 0,则判定这个帧有差错,就丢弃。


这种检测方法并不能确定究竟是哪一个或哪几个比特出现 了差错。 只要经过严格的挑选,并使用位数足够多的除数 P,那么 出现检测不到的差错的概率就很小很小。
(4)每收到对一个帧的确认,发送窗口就向前(即 向右方)滑动一个帧的位置。
19
20
接收窗口的规则很简单,归纳如下: (1)只有当收到的帧的序号与接收窗口一致时才 能接收该帧。否则,就丢弃它。 (2)每收到一个序号正确的帧,接收窗口就向前 (即向右方)滑动一个帧的位置。同时向发送端发送对该 帧的确认。

第4章---数据链路层ppt课件(全)

第4章---数据链路层ppt课件(全)
一个n位的二进制序列,它的码多项式为: Xn-1 到 X n次多项式的系数系列。
例如:110110的码多项式
循环码的定义:如果分组码中各码字中的码元 循环左移位(或右移位)所形成的码字仍然是 码组中的一个码字(除全零码外),则这种码 称为循环码。例如n长循环码中的一个码为 [C]=Cn-1Cn-2……C1C0 ,
(3)在串行通信中通常使用的三种生成多项式G (X)来产生校验码。
(4)编码特点
由于码的循环性,它的编解码的设备比 较简单。
纠错能力强,特别适合检测突发性的错 误,除了正好数据块的比特值是按除数 变化外,循环冗余校验(CRC)将检测出 所有的错误。
所以在计算机通信中得到广泛的应用。
差错控制方式
新加入的码元愈多,冗余度愈大,纠错能力欲 强,但效率越低。
分组码:将信息码分组,并为每个组附加若干 监督的编码,称为“分组码”。在分组码中, 监督码元仅监督本码组中的信息码元。
分组码一般可用符号(n,k)表示,n是码组中 的总位数,k是每组码二进制信息码元的数目。
n-k = r是监督码元的数目。
(3) 流量控制 发方发送数据的速率必须使得收方来得 及接收。当收方来不及接收时,就必须及时控制发方 发送数据的速率。这种功能称为流量控制(flow conctrol)。采用接收方的接收能力来控制发送方的发 送能力这是计算机网络流量控制中采用的一般方法。
(4) 差错控制 在计算机通信中,一般都要求有极低的 比特差错率。为此,广泛采用了编码技术,编码技术 有两大类。一类是前向纠错,也就是收方收到有差错 的数据帧时,能够自动将差错改正过来。这种方法的 开销较大,不大适合于计算机通信。另一类是差错检 测,也就是收方可以检测出收到的数据帧有差错(但 并不知道出错的确切位置)。当检测出有差错的数据 帧就立即将它丢弃,但接下去有两种选择:一种方法 是不进行任何处理(要处理也是有高层进行),另一 种方法则是由数据链路层负责重传丢弃的帧。

理解计算机网络的数据链路层

理解计算机网络的数据链路层

理解计算机网络的数据链路层计算机网络是现代社会中必不可少的工具,它将彼此独立的计算机、设备和用户连接在一起,实现了信息的传递与共享。

而在计算机网络中,数据链路层是其中一个重要的组成部分,它承担着数据的传输和控制功能,保证了数据的可靠性和安全性。

本文将深入探讨数据链路层的概念、作用、工作原理以及常见的链路层协议。

一、概念数据链路层是计算机网络体系结构中的一层,位于物理层和网络层之间。

它负责将数据帧从一个节点传输到另一个节点,并确保数据的可靠传输。

二、作用数据链路层的主要作用是通过物理传输介质(如电缆、光纤等)提供直接传输数据的能力,并对数据帧进行控制、错误检测与纠正,以保证数据的可靠性和安全性。

三、工作原理数据链路层采用了多种技术和协议来实现数据的传输和控制。

其中,常见的工作原理包括以下几个方面:1. 帧封装数据链路层将网络层传来的IP数据报封装成帧,添加帧起始标识符、地址信息、控制信息、数据信息和帧检错序列等,并在帧尾部添加帧结束标识符,以便接收端识别和解析帧。

2. 帧同步数据链路层通过定时发送字节和特殊控制字符来保持发送端和接收端的时钟同步,以确保数据的稳定传输。

3. 错误控制数据链路层使用差错检测机制,例如循环冗余检验(CRC)等,在接收端对接收到的数据进行检验,如果检测到错误,则请求发送端重新发送。

4. 流量控制数据链路层采用流量控制技术,例如停-等协议、滑动窗口协议等,通过控制发送速率和接收速率来防止数据的丢失和拥塞。

5. 访问控制数据链路层使用访问控制协议,如以太网的CSMA/CD协议,来协调多个节点共享同一物理媒介的访问,以避免冲突和碰撞。

四、常见链路层协议数据链路层有许多协议,常见的包括以太网协议、无线局域网协议(Wi-Fi)、点对点协议(PPP)等。

1. 以太网协议以太网协议是应用最广泛的有线局域网协议,它采用CSMA/CD协议进行多个节点的访问控制,常见的传输速率有10Mbps、100Mbps和1000Mbps等。

第3章数据链路层

第3章数据链路层



计 算 机 网 络
数据链路层的主要功能:
(1)链路管理 数据链路的建立、维持和释放 (2)帧同步 接收方从比特流中能区分帧开始与结束 (3)流量控制(flow control)发送方的发送速率必须是接收 方来得及接收
第 3 章 数 据 链 路 层
(4)差错控制
前向纠错:采用纠错编码(卫星通信) 差错检测:采用检错编码(CRC) (5)将数据和控制信息区分开 (6)透明传输:对传输的数据没有限制 (7)寻址
停止等待协议的算法
在发送结点: (1)从主机取一个数据帧。 (2)V(S)←0。 {发送状态变量初始化} (3)N(S)←V(S); {将发送状态变量的数值写入 发送序号} 将数据帧送交发送缓存。 (4)将发送缓存中的数据帧发送出去。 (5)设置超时计时器。 {选择适当的超时重传 时间tout } 第 3 章 数 据 链 路 层


计 算 机 网 络
6、字符填充法: 发送方在可能产生争议的DLE位串之前再增加一 个转义字符(DLE),如 DLE DLE SOH;接收方每 接收到两个连续的DLE则丢弃其中的一个DLE
第 3 章 数 据 链 路 层


计 算 机 网 络
第 3 章 数 据 链 路 层


计 算 机 网 络
第 3 章 数 据 链 路 层


计 算 机 网 络
第 3 章 数 据 链 路 层


计 算 机 网 络
5、字符的转义: 在控制字符之前增加一个转义字符(DLE),防 止数据的二义性。BSC主要支持字符数据的传输,也 可以支持二进制数据传输,但二进制数据时必须被组 合,例如:七位形成一个位组。由于二进制位组合的 随机性,可能出现等同控制字符组的位串(例如: DLE SOH),为了保证数据的透明性(即数据中允许任 意的二进制数据),同时保证这些等同控制字符组的 位串不会导致控制的混乱,BSC采用了字符转义的方 法——字符填充法。 第 3 章 数 据 链 路 层

计算机网络原理——数据链路层

计算机网络原理——数据链路层
• 工作原理:
– 发送方发送一块数据后, 就停止发送动作,开始计时, 等待接收方的反馈结果。 – 接收方对收到的数据进行校验,并根据校验的结果向 发送方作出肯定确认或否定确认。 – 当发送方收到“正确”的确认(ACK)之后,继续发送 后继数据块; – 如果发送方收到“否定”确认(NAK) ,或者计时器超 时,重新传送本数据块。
数据链路层
11
4.1.3 流量控制功能
• 目的:防止接收方发生数据溢出而控制发 送方发送数据的速率 • 主要方法:停—等流控、滑动窗口流控来自数据链路层12
4.1.4 链路管理功能
• 主要功能:帧序号的初始化、建立连接、 维护连接、重置连接、释放连接等
数据链路层
13
4.2 差错控制
• • • • 4.2.1 差错检测 目的:发现和纠正接收到的数据的差错 产生差错的原因:噪声 突发长度:从突发错误发生的第一码元到 有错的最后一个码元间所有的码元数,称 该突发错的突发长度。
节 点


节 点
数据链路层
5
帧的一般结构
对于不同的通信环境或不同的通信协议, “帧”的格 式亦不尽相同。
F 帧 标志 A 地址 字段 C 控制 字段 D 数据字段 FCS 校验 字段 F 帧 标志
“帧”分为面向字符型和面向比特型两类。前者由ASCII字 符构成(IBM BSC协议);后者由任意比特构成,更为灵 活和高效(HDLC)。
数据链路层
16
数据通信中的实际情况
发送的数据
0 1 0 1 1 0 0 1 1 0 0 1 0 1 0
信号
噪音
信号+噪音
阈值
采样时钟 接收的数据
0 1 0 1 1 0 1 1 1 0 0 1 0 0 0

什么是数据链路层?请解释其功能和作用。

什么是数据链路层?请解释其功能和作用。

什么是数据链路层?请解释其功能和作用。

数据链路层是计算机网络中的一层,位于物理层和网络层之间。

其主要功能是在物理传输介质上提供可靠且可预测的数据传输。

功能:
1. 物理地址寻址:数据链路层使用物理地址(MAC地址)进
行节点之间的寻址,确保数据能够正确到达目标节点。

2. 帧同步:数据链路层将数据划分为帧(frame),添加起始
符和终止符,并进行同步以确保接收方正确解析帧。

3. 流量控制:数据链路层对数据的流量进行控制,以确保发送
方与接收方之间的数据传输能够平衡,防止接收方无法处理过多的
数据。

4. 差错检测与纠正:数据链路层使用差错检测技术(如循环冗
余检测)来检测和纠正传输过程中可能产生的比特错误,提高数据
传输的可靠性。

作用:
1. 数据帧传输:数据链路层负责将网络层传来的数据分割为较
小的数据帧,并添加必要的控制信息,然后通过物理层进行传输。

2. 可靠传输:通过差错检测和纠正技术,数据链路层确保数据
能够在物理传输介质上可靠地传输,以防止数据在传输过程中发生
错误或丢失。

3. 数据流控制:数据链路层通过流量控制机制,确保发送方和
接收方之间的数据传输速度适当,以避免数据拥堵和丢失。

4. 数据链路管理:数据链路层管理节点之间的链路连接,包括
建立、维护和释放链路连接,以及处理链路中可能出现的错误情况。

数据链路层在网络通信中扮演重要角色,其功能和作用确保了
数据能够可靠地传输,并提供了对物理层和网络层之间的接口。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
k k k k k
0+0=0 0+1=1 1+0=1 1+1=0
0-0=0 0-1=1 1-0=1 1-1=0
发送方 计算机网络
接收方
发送数据 f(x) 生成多项式 G(x) f(x). x G(x)
k
发送数据 f '(x) 生成多项式 G(x) f'(x). x G(x)
k
=Q(x)+
R(x) G(x)
通信信道的噪声分为两类:热噪声和冲击 噪声; 由热噪声引起的差错是随机差错,或 随机错; 冲击噪声引起的差错是突发差错,或 突发错; 引起突发差错的位长称为突发长度; 在通信过程中产生的传输差错,是由 随机差错与突发差错共同构成的。


2)信号反射;
3)串扰; 4)闪电、大功率电机的启停 等。
由收方控制发方的数据流,是计算机网络中流量控制
的一个基本方法。
两种情况的对比(传输均无差错)
不需要流量控制
A B
需要流量控制
A B
送主机 B
送主机 B
送主机 B
送主机 B 时 间 送主机 B
停止等待方式ARQ
送主机 B
实用的停止等待协议
四种情况
A B A B 出错 A B 丢 失 ! A B
送 主 机
4.2
数据链路层的基本概念
链路(link)是一条无源的点到点的物理线路段,中间没 有任何其他的交换结点。
数据链路(data link) 除了物理线路外,还必须有通信协
议来控制这些数据的传输。若把实现这些协议的硬件和软
件加到链路上,就构成了数据链路。
数据链路/逻辑链路=物理链路+通信规程
数据链路层的主要功能
这个假定就相当于认为:接收端向主机交付数据的速
率永远不会低于发送端发送数据的速率。
具有最简单流量控制的数据链路层协议
现在去掉上述的第二个假定。但是,仍然保留第一个 假定,即主机A向主机B传输数据的信道仍然是无差错的理 想信道。然而现在不能保证接收端向主机交付数据的速率 永远不低于发送端发送数据的速率。
第4章 数据链路层
1
本章学习要求:
基本内容:差错控制方法,数据链路层的基本概念,数据链路层 协议的工作原理:停止等待协议,连续ARQ协议,滑动窗口,选 择ARQ协议,Internet中的数据链路层协议。 重点掌握: 数据链路层的基本概念。
数据链路层协议的工作原理。
滑动窗口原理。
4.1
差错产生与差错控制方法
2)因r=4,所以校验码是:1001,信息码是:110011
CRC校验码的检错能力

CRC校验码能检查出全部单个错;


CRC校验码能检查出全部离散的二位错;
CRC校验码能检查出全部奇数个错; CRC校验码能检查出全部长度小于或等于K位的突发错; CRC校验码能以[1-(1/2)K-1]的概率检查出长度为(K+1)位 的突发错; 如果K=16,则该CRC校验码能全部检查出小于或等于16 位的所 有的突发差错,并能以1-(1/2)16-1=99.997%的概率检查出 长度为17位的突发错,漏检概率为0.003%;
例2.已知:接收码字:1100111001多项
式:T(X)=X9+X8+X5+X4+X3+1 生成码:11001 生成多项式:G(X)=X4+X3+1(k=4)
求:码字的正确性。若正确,则指出冗余码和信息码。
解:1)用字码除以生成码,余数为0,所以码字正确。
1 0 0 0 0 1←Q(X) G(x)→1 1 0 0 1 )1 1 0 0 1 1 1 0 0 1←f(X)*Xk+R(x) 11001 , 11001 11001 0←S(X)(余数)
的系数,收发双方约定一个生成多项式G(x),在发送端用G(x)去除,
求得一个余数多项式,将余数多项式加到数据多项式后发送到接收 端。接收端收到后,用G(x)除多项式,若有余数,则传输有错。
校验和计算方法
若G(x)为k阶,原帧为m位,其多项式为f(x),则在原帧后面
添加k个0,帧成为m+k位,相应多项式x f(x) 按模2除法用对应于G(x)的位串去除对应于x f(x) 的位串 按模2加法把x f(x) 的位串与余数相加,结果就是要传送的 带校验和的帧的多项式T(x) T(x) = x f(x) + [ x f(x) MOD2 G(x) ] 实际上的CRC校验码生成时,采用的是模2算法,相当于异或运 算,运算规则如下:

线路传输差错是不可避免的, 但要尽量减小其影响。
传输差错产生过程
信源 通信信道 信宿
数据
噪声 (a)
数据+噪声
传输数据
0
1
0
1
1
0
0
1
1
0
0
1
0
1
0
噪声
数据信号 与噪声信号 叠加后的波形 采样时间 接收数据 原始数据 0 0 1 1 0 0 1 1 1 1 0 0 1 0 1 1 1 1 0 0 0 0 1 1 0 0 0 1 0 0

差错控制机制
反馈重发机制
发送端 信源 存储器 反馈信号 控制器 校验码 编码器 发送 装置 传 输 信 道 接收 装置
接收端 校验码 译码器 信宿
反馈信号 控制器
3.差错控制技术
自动请求重传Automatic Repeat Request (ARQ)

停等 ARQ 发送方每发完一帧必须等接收方确认后才能发下一帧。
1 1 0 0 1
1 0 0 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1 1
0 0 1 0 0 1 0 0 1 0 0 1 0
例1.已知:信息码:110011 生成码:11001 求:冗余码。
信息多项式:K(X)=X5+X4+X+1 生成多项式:G(X)=X4+X3+1(k=4)
解:1)(X5+X4+X+1)*X4的积是 X9+X8+X5+X4 对应的码是1100110000 2) 1100110000 /G(X)(按模二算法)。 由计算结果知检验序列是1001,即冗余码就是1001。
k
=Q(x)+
R'(x) G(x)
实际发送: f(x) . x + R(x) 数据字段 校验字段 f(x)
R'(x)= R(x)
接收正确
R'(x)≠ R(x) 接收错误
.xk
+ R(x) 发送
标准CRC生成多项式G(x)
CRC-12
CRC-16 CRC-CCITT
G(x)= x12+x11+x3+x2+x+1
奇偶校验只能检测出奇数个比特位错,对偶数个比特位错则无能为力。
奇偶校验例子:
字符
ASCII
水平奇校验
1 0 0 0 0 1 1 0
H
a m
1 0 0 1 0 0 0
1 1 0 0 0 0 1 1 1 0 1 1 0 1
g
n c
1 1 0 0 1 1 1
1 1 0 1 1 1 0 1 1 0 0 0 1 1
DATA4 不按序,丢弃,重传 ACK2 DATA5 不按序,丢弃,重传 ACK2 ACK3 确认 DATA2 ACK4 确认 DATA3 送交主机

需要注意 (1) 接收端只按序接收数据帧。虽然在有差错的 2号帧之后 接着又收到了正确的 3 个数据帧,但接收端都必须将这些
帧丢弃,因为在这些帧前面有一个 2 号帧还没有收到。
G(x)= x16+x15+x2+1 G(x)= x16+x12+x5+1
CRC-32
G(x)= x32+x26+x23+x22+x16+x12+x11 + x10 +x8+x7+x5+x4 + x2+x+1
CRC校验示例
待校验数据:1101,0110,11 G(x) = x4+x+1 , 即10011
o
垂直奇校验
1 1 0 1 1 1 1
0 1 1 1 1 1 0
2、循环冗余校验 (CRC, Cyclic Redundancy Check)
循环冗余码的工作原理 任意一个由二进制位串组成的代码都可以和一个系数仅为‘0’ 和‘1’取值的多项式一一对应。例如:代码1010111对应的多项式 为x6+x4+x2+x1+1,而多项式为x5+x3+x2+x1+1对应的代码 101111。 差错检测原理:将要发送的数据比特序列看成一个多项式f(x)
4.1.1 为什么要设计数据链路层
在原始物理传输线路上传输数据信号是有差错的; 设计数据链路层的主要目的: 将有差错的物理线路改进成无差错的数据链路; 方法 — 差错检测 差错控制 流量控制 作用:改善数据传输质量,向网络层提供高质量的服务。
4.1.2

差错产生的原因和差错类型
传输差错 — 通信过程接收的数据与发 送数据 不一致的现象; 差错控制 — 检查是否出现差错以及如 何纠正差错; 1.产生差错的原因: 1)信道的电气特性引起信号 幅度、频率、相位的畸变;
连续工作方式
重传 发送端 0 1 2 3 4 5 2 3 4 5 6
拉回方式
接收端
0 ACK1 NAK
1
2 丢弃
相关文档
最新文档