第3章数据链路层

合集下载

第3章数据链路层-1

第3章数据链路层-1

g1
g2
gr-1
R0
R1
Rr-1
信息输入端
图3.5 CRC码的编码电路
码字输出端 输出开关
3.2 差错检测与校正(续)
常用的检错码 ----循环冗余码
大于r+1的突发错误
• 若具体取r=16,则能检测出所有双错、奇数位错、突 发长度小于等于16的突发错以及1-2-15(约为99.997%) 的突发长度为17的突发错和1-2-16(约为99.998%)的
突发长度大于等于18的突发错
3.2 差错检测与校正(续)
常用的检错码 ----循环冗余码
除以G(x)的运算易于用移位寄存器和半 加器来实现
3.2 差错检测与校正(续)
传输差错的特性
➢ 噪声分类:
• 信道所固有的,持续存在的随机热噪声 • 由于外界特定的短暂原因所造成的冲击噪声
➢ 噪声比较:
• 随机错通常较少 • 冲击噪声的幅度可以相当大 ,它是传输中产生差错
的重要原因
3.2 差错检测与校正(续)
传输差错的特性
➢ 衡量一个信道质量的重要参数是误码率:
*是要求同学了解的,这些内容在本电子教案中并未讲解而是要求同学自己阅读教材。
3.1 数据链路层的功能
➢ 基本功能:
• 将物理层提供的原始的传送比特流的可能出错的物理连 接改造成为逻辑上无差错的数据链路
• 最基本的服务就是将源机器网络层来的数据可靠地传输 到相邻节点的目标机网络层
• 要完成许多特定的功能 ☆ 主要有如何将比特组合成帧(frame); ☆ 处理传输中出现的差错; ☆ 调节发送方的发送速率不至于使较慢的接收方不能 承受,以及数据链路层连接的建立、维持和释放, 称之为链路管理。

计算机网络第五版课件(谢希仁编著)第三章 数据链路层

计算机网络第五版课件(谢希仁编著)第三章 数据链路层
课件制作人:谢希仁
Note
Byte stuffing is the process of adding 1 extra byte whenever there is a flag or escape character in the text.
课件制作人:谢希仁
Figure 11.2 Byte stuffing and unstuffing
计算机网络(第 5 版)
第 3 章 数据链路层
课件制作人:谢希仁
第 3 章 数据链路层
3.1 使用点对点信道的数据链路层 3.1.1 数据链路和帧 3.1.2 三个基本问题 3.2 点对点协议 PPP 3.2.1 PPP 协议的特点 3.2.2 PPP 协议的帧格式 3.2.3 PPP 协议的工作状态
网络层 链路层
运输层
网络层 链路层
物理层
物理层
物理层
物理层
物理层
课件制作人:谢希仁
3.1 使用点对点信道的数据链路层
3.1.1 数据链路和帧

链路(link)是一条无源的点到点的物理线 路段,中间没有任何其他的交换结点。

一条链路只是一条通路的一个组成部分。

数据链路(data link) 除了物理线路外,还必须 有通信协议来控制这些数据的传输。若把实现 这些协议的硬件和软件加到链路上,就构成了 数据链路。
被接收端 被接收端当作无效帧而丢弃 误认为是一个帧 如果数据中的某个字节的二进制代码恰好和SOH或EOT控制 字符一样,则数据链路层会错误地找到帧的边界,只把部分 帧手下,剩下的丢弃。
以上的传输就不是透明传输,需要解决
课件制作人:谢希仁
解决透明传输问题


第3章 数据链路层

第3章 数据链路层

协议思想:协调、控制接收方、发送方的速度。
发送方 接收方
DATA0
协 议 算 法
ACK
发出一帧; 等待; 直到收到ACK 才发送下一帧
DATA1 ACK DATA2 ACK
等待; 将收到的数据帧 上交主机; 发送应答信息; 转到第一步
两种情况的对比(传输均无差错)
不需要流量控制
A B
需要流量控制
A B
停止等待协议的要点


实用的 CRC 检验器都是用硬件完成的。 CRC 检验器能够自动丢弃检测到的出错 帧。因此所谓的“丢弃出错帧”,对上 层软件或用户来说都是感觉不到的。 发送端对出错的数据帧进行重传是自动 进行的,因而这种差错控制体制常简称 为 ARQ (Automatic Repeat reQuest), 直译是自动重传请求,但意思是自动请 求重传。
是否接收到正确的数据帧?如何告诉发送方? 能及时处理接收到的数据帧吗?
?传输过程: 会出错吗?会丢失数据帧吗? !解决这些问题,是链路层的主要任务。 !针对这些问题所制定的通信规程就是数据链路层的通信协议。
3.3.1 完全理想化的数据传输
发送方 主 机 A AP1 接收方 AP2 主 机 B 高层
帧的编号问题



任何一个编号系统的序号所占用的比特数一定 是有限的。因此,经过一段时间后,发送序号 就会重复。 序号占用的比特数越少,数据传输的额外开销 就越小。 对于停止等待协议,由于每发送一个数据帧就 停止等待,因此用一个比特来编号就够了。

一个比特可表示 0 和 1 两种不同的序号。
帧的发送序号
时间
重传时间

重传时间的作用是:数据帧发送完毕后若经过了这样长的时 间还没有收到确认帧,就重传这个数据帧。 为方便起见,我们设重传时间为

数据通信与计算机网络第五版(习题答案)——第三章数据链路层

数据通信与计算机网络第五版(习题答案)——第三章数据链路层

数据通信与计算机网络第五版第三章数据链路层3-1 数据链路(即逻辑链路)与链路(即物理链路)有何区别?“电路接通了”与“数据链路接通了”的区别何在?解答:所谓链路就是从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点。

在进行数据通信时,两个计算机之间的通信路径往往要经过许多段这样的链路。

可见链路只是一条路径的组成部分。

数据链路则是另一个概念。

这是因为当需要在一条线路上传送数据时,除了必须有一条物理线路外,还必须有一些必要的通信协议来控制这些数据的传输(这将在后面几节讨论)。

若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。

这样的数据链路就不再是简单的物理链路而是个逻辑链路了。

“电路接通了”仅仅是物理线路接通了通信双方可以在上面发送和接收0/1比特了,而“数据链路接通了”表明在该物理线路接通的基础上通信双方的数据链路层协议实体已达成了一致并做好了在该链路上发送和接收数据帧的准备(可能互相要协商某些数据链路层参数)。

3-2 数据链路层包括哪些主要功能?试讨论数据链路层做成可靠的链路层有哪些优点和缺点。

解答:数据链路层的链路控制的主要功能包括:封装成帧、透明传输和差错检测,可选功能包括可靠传输、流量控制等。

在数据链路层实现可靠传输的优点是通过点到点的差错检测和重传能及时纠正相邻结点间传输数据的差错。

若在数据链路层不实现可靠传输由高层如运输层通过端到端的差错检测和重传来纠正这些差错会产生很大的重传时延。

但是在数据链路层实现可靠传输并不能保证端到端数据传输的可靠,如由于网络拥塞导致路由器丢弃分组等。

因此,即使数据链路层是可靠的,在高层如运输层仍然有必要实现端到端可靠传输。

如果相邻结点间传输数据的差错率非常低,则在数据链路层重复实现可靠传输就会给各结点增加过多不必要的负担。

3-3 网络适配器的作用是什么?网络适配器工作在哪一层?解答:网络适配器的作用就是实现数据链路层和物理层的功能。

适配器接收和发送各种帧时不使用计算机的CPU 。

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

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

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

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

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

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

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

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

王道计算机网络第三章数据链路层思维导图

王道计算机网络第三章数据链路层思维导图
如果有冲突(一段时间内未收到肯定回复),则等待一个随机长的时间再监听, 重复上述过程
思想
1-坚持CSMA
只要媒体空闲,站点就马上发送,避免了媒体利用率的损失
优点
假如有两个或两个以上的站点有数据要发送,冲突就不可避免
缺点
非坚持指的是对于监听信道忙之后就不继续监听
信道空闲
CSMA协议
如果一个主机要发送消息,那么它先监听信道
相同点
1.传输介质不同:CSMA/CD用于总线以太网【有线】,而CSMA/CA用于无线局 域网【无线】
CSMA/CD与CSMA/CA对比
2.载波检测方式不同:因传输介质不同,CSMA/CD与CSMA/CA的检测方式也不 同。CSMA/CD迪过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电 压就会随着发生变化;而CSMA/CA采用能量检测(ED)、载波检测(CS)和能量 载波混合检测三种检测信道空闲的方式
粗同轴电缆
细同轴电缆
传输介质
双绞线+集线器 逻辑上总线型 物理上星型
拓扑结构
传输介质与拓扑结构的发展
10BASE-T是传送基带信号的双绞线以太网,T表示采用双绞线,现10BASE-T采 用的是无屏蔽双绞线(UTP),传输速率是10Mb/s
物理上采用星型拓扑,逻辑上总线型,每段双绞线最长为100m
10BASE-T以太网
隐蔽站
无线局域网
为什么会有CSMA/CA
发送数据前,先检测信道是否空闲
空闲则发出RTS(request to send),RTS包括发射端的地址、接收端的地址、 下一份数据将持续发送的时间等信息;信道忙则等待
接收端收到RTS后,则响应CTS(clear to send)

数据通信-3章-LAN(含差错控制)

数据通信-3章-LAN(含差错控制)
12
数据通信与网络基础
站点A 站点B
建立
ENQ ACK 数据 ACK
数据 传输
数据 ACK
数据 ACK 终止 时间 EOF 时间
13
ENQ/ACK线路规程
数据通信与网络基础
3.1.2 轮询/选择 该方法是在一个设备被指定为主站而 其它设备为从站的拓扑结构中采用的方 法。多点系统必须在多个节点而不是两 个节点之间协调。 • 如何工作 当一条多点链路由使用同一条传输线 路的主设备和若干从设备构成时,所有 信息交换都必须通过主设备进行。主设 备控制链路,从设备遵从其指令。必须 由主设备来决定,在给定时刻哪一个设 备才有权使用信道。因此,主设备总是 会话的发起者。如果主设备希望接收数 据,它将询问从设备是否有数据待发, 这项功能称为轮询。如果主设备希望发 送数据,它告之要发往的从设备准备好 接收数据,这项功能称为选择。
数据通信与网络基础
如何工作: 1 发起方首先发送一个询问帧(ENQ), 询问接收方是否可以接收数据。 2 接收方如已经作好准备,就发送一个确 认(ACK)帧;如没有准备好,就必须 回答一个否认(NAK)帧。 3 如果在一定时间内既没有收到确认帧, 又没有收到否认帧,发起方就假定询问 帧在传输中丢失,于是断开连接,并重 新发送一个副本。 4 如果对ENQ帧的响应是否定的,在三次 尝试都失败后,发起方就断开连接,并 在另一个时刻重新开始整个过程。如果 是肯定,发起方就可以随时发送数据。 5 一旦将所有数据都传输完毕,发送方以 一个传输结束(EOF)帧结束传传输。
从概念上来说,当数据帧发送出去时,发送方 滑动窗口从左面开始收缩。当收到确认帧时, 发送方滑动窗口向右扩展。
27
数据通信与网络基础
发送窗口
5 6

计算机网络(第5版)课后习题答案:第3章-数据链路层

计算机网络(第5版)课后习题答案:第3章-数据链路层

第三章数据链路层3-01 数据链路(即逻辑链路)与链路(即物理链路)有何区别? “电路接通了”与”数据链路接通了”的区别何在?答:数据链路与链路的区别在于数据链路除链路外,还必须有一些必要的规程来控制数据的传输,因此,数据链路比链路多了实现通信规程所需要的硬件和软件。

“电路接通了”表示链路两端的结点交换机已经开机,物理连接已经能够传送比特流了。

在物理连接基础上,再建立数据链路连接,才是“数据链路接通了”,此后,由于数据链路连接具有差错检测功能,才使不太可靠的物理链路变成无差错的数据链路,进行无差错的数据传输。

当数据链路断开连接时,物理电路连接不一定跟着断开连接。

3-02 数据链路层中的链路控制包括哪些功能?试讨论数据链路层做成可靠的链路层有哪些优点和缺点.答:功能:链路管理、帧定界、透明传输、差错控制。

可靠的链路层的优点和缺点取决于所应用的环境:对于干扰严重的信道,可靠的链路层可以将重传范围约束在局部链路,防止全网络的传输效率受损;对于优质信道,采用可靠的链路层会增大资源开销,影响传输效率。

3-03 网络适配器的作用是什么?网络适配器工作在哪一层?答:网络适配器(即网卡)是用来实现数据链路层和物理层这两层协议的硬件和软件。

网络适配器工作在TCP/IP协议中的网络接口层(OSI中的数据链里层和物理层)。

3-04 数据链路层的三个基本问题(帧定界、透明传输和差错检测)为什么都必须加以解决?答:帧定界是分组交换的必然要求;透明传输避免消息符号与帧定界符号相混淆;差错检测防止有差错的无效数据帧浪费后续路由上的传输和处理资源。

3-05 如果在数据链路层不进行帧定界,会发生什么问题?答:无法区分分组与分组,无法确定分组的控制域和数据域,无法将差错更正的范围限定在确切的局部。

3-06 PPP协议的主要特点是什么?为什么PPP不使用帧的编号?PPP适用于什么情况?为什么PPP协议不能使数据链路层实现可靠传输?答:简单,提供不可靠的数据报服务;检错,无纠错不使用序号和确认机制。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

结点


结点
数据链路层功能
? 向网络层提供一个定义良好的服务接口。 ? 链路管理
– 差错控制:处理传输错误; – 数据流量控制:确保慢速的接收方不会被 快速的发送方“淹没”。
帧管理
– 成帧:帧格式的形成 – 帧同步:识别帧头、帧尾
数据链路层的简单模型
主机 H1 向 H2 发送数据
主机 H1
路由器 R1
有确认的无连接服务
特点: ?未使用逻辑连接; ?发送的每一帧都需要接收端单独确认 ( 可选项,用于优化服务;光纤不确认 ) ; ?若确认帧超时,则发送方将再次发送该帧。
应用: 不可靠信道,如无线系统、 Wi-Fi。
有确认的面向连接服务
特点: ?建立连接; ?发送的每帧都编号,保证每帧都正确、按顺序接收一次 ?为网络层进程提供了一个可靠的位流( 复杂) 。
数据链路层实现
数据链路层帧与网络层数据包的关系
数据链路层帧与网络层数据包的关系
结点 A
网络层
数据 链路层
IP 数据报 装入

物理层
1010… …0110
结点 B IP 数据报
取出 帧
1010… …0110
数据 链路层
结点 A
发送 帧
链路 (a)
链路 (b)
接收 帧
结点 B
3.1.1 提供给网络层的服务
电话网
局域网
路由器 R2
广域网
路由器 R3
主机 H2 局域网
H1
应用层 运输层 网络层 链路层 物理层
从层次上来看数据的流动
R1
网络层 链路层 物理层
R2
网络层 链路层 物理层
R3
网络层 链路层 物理层
H2
应用层 运输层 网络层 链路层 物理层
数据链路层的简单模型
主机 H1 向 H2 发送数据
主机 H1
– 发送方数据链路层对数据中 5个连续的位“ 1”, 自动在输出位流中 填充一个位“0” 。 – 接收方对 5个连续输入位“1”,且后接一位 “0”的情况,自动删除这个“0”位。 接收方一旦失步,只需在输入数据流中扫描标志序 列,即可重新获得同步。因为标志序列只能是帧界, 不可能出现在数据中。
? 无确认的无连接服务 ? 有确认的无连接服务 ? 有确认的面向连接服务

无确认的无连接服务
特点: ?源机器向目标机器发送独立的帧; ?目标机器不进行确认; ?不建立逻辑连接。 ?数据链路层不处理线路噪声引起的丢帧、错帧, 由上层完成。 应用: ?错误率很低,如以太网,光纤网络 ?实时通信,如语音。
用字节填充法解决透明传输的问题
帧开始符
原始数据
FLG
FLG
FLG
ESC
帧结束符
FLG
FLG
字节填充
字节填充
字节填充
字节填充
FLG
发送 在前
ESC FLG
ESC FLG
ESC ESC
ESC FLG
FLG
经过字节填充后发送的数据
比特填充的标志比特法
位填充(bit stuffing) 机制 每一帧的开始和结束都有一个特殊的位模式 01111110
字节计数法
利用头部中的一个域来指定该帧中的字节数。 对于数值改变的错误,则无法同步和重传。 很少单独使用。
字符计数法
利用头部中的一个域来指定该帧中的字符数。如 果改值错误,则无法同步,也无法重传。
字节填充的标志字节法
标志字节(flag byte) : 考虑出错后的重新同步,用特殊字节flag 表示一帧的开始 和结束,一般为0x7E(01111110。) 目的端丢失帧边界时只需 查找两个连续的flag ,就可以找到前帧的结束,后帧的开始
路由器 R1
电话网
局域网
路由器 R2
广域网
路由器 R3
主机 H2 局域网
H1
应用层 运输层 网络层 链路层 物理层
仅从数据链路层观察帧的流动
R1
网络层 链路层 物理层
R2
网络层 链路层 物理层
R3
网络层 链路层 物理层
H2
应用层 运输层 网络层 链路层 物理层
数据链路层实现
? 数据链路 (data link) :必须有通信协议来控制 这些数据的传输。若把实现这些协议的 硬件和软 件加到物理链路上,就构成了数据链路。 ? 使用适配器( 即网卡) 来实现这些协议的硬件和 软件。包括数据链路层和物理层这两层的功能。 ? 主要讨论 WA中NDL层的问题,属点 -点链路上的 数据传输; LAN的DL层比WA复N杂,属多点链路传 输( 第4章) 。
字节填充: 若传送的用户数据中出现flag 或ESC,会干扰帧界的确定,需 进行字节填充:
– 发送端: DL层在用户数据中的每个flag 或ESC前插入 1个转义字节(ESC) – 接收端: DL层在将数据送给N层前删除ESC。 缺点:依赖于8位字符的模式,增加了额外的传输负荷。 PPP协议例子
起始和结束分界符 : 让每一帧都用一些特殊的 字节作为开始和结束。称为 标志字节(flag byte) , 一般为 0x7E。
1 引言 2 物理层 3 数据链路层 4 介质访问控制子层 5 网络层 5 传输层
1
3.1数据链路层的设计问题
概述
数据链路层主要内容 : 两台 相邻 机器之间实现可靠、有效、完整的 信息块( 帧) 通信的一些算法。
相邻:两台机器通过一条通信信道 ( 同轴 电缆、电话线或点到点的无线信道 ) 连接。 递交数据位的顺序与发送的顺序完全相同。
过程: ?建立连接:双方初始化各种变量和计数器。 ?传输数据帧:记录已收帧及未收帧。 ?释放连接:所有变量、缓冲区及其他资源。
应用:长距离且不可靠链路,卫星或电话系统。
3.1.2 成帧
目的: 及时发现原始比特流中的错误。 比特流拆分为帧,分帧进行校验和计算
成帧方法: ?字节计数法 ?字节填充的标志字节法 ?比特填充的标志比特法 ?物理层编码违禁法
转义处理 :当标志字节的位模式出现在数据 中时,在前面插入一个特殊的转义字节 (ESC)。接 收端的数据链路层在将数据送给网络层之前删除 转义字节。
主要缺点: 依赖于8位字符的模式。例如, UNICOD使E用16位字符。
封装成帧
? 封装成帧(framing):在一段数据的前后分别添加 首部和尾部,构成了一个帧。确定帧的界限。 ? 首部和尾部的一个重要作用就是进行 帧定界。
帧开始 开始 发送 帧首部
IP 数据报
帧的数据部分 ? Max
数据链路层的帧长
帧结束 帧尾部
用标志字节进行帧定界的方法举例
帧开始符
FLG
发送在前
装在帧中的数据部分 帧
帧结束符
FLG
透明传输
出现了“FLG” 完整的帧
发送
数据部分
在前
FLG
FLG
FLG
被接收端 误认为是一个帧
被接收端当作无效帧而丢弃
相关文档
最新文档