为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

通信网入门基础CH04 数据链路层[dmdream]

2011-04-07 50页 ppt 584KB 16阅读

用户头像

is_139570

暂无简介

举报
通信网入门基础CH04 数据链路层[dmdream]null计算机网络 Computer Networks计算机网络 Computer Networks数据链路层内容纲要内容纲要 数据链路层的基本概念 流量控制技术 差错控制 数据链路控制协议内容纲要内容纲要 数据链路层的基本概念 流量控制技术 差错控制 数据链路控制协议数据链路层的基本概念数据链路层的基本概念 数据链路层在物理连接提供的比特流传输服务基础上,构成透明的、相对无差错的数据链路,实现可靠、有效的数据传送。 数据链路层协议负责在物理网络与计算机的...
通信网入门基础CH04 数据链路层[dmdream]
null计算机网络 Computer Networks计算机网络 Computer Networks数据链路层纲要内容纲要 数据链路层的基本概念 流量控制技术 差错控制 数据链路控制内容纲要内容纲要 数据链路层的基本概念 流量控制技术 差错控制 数据链路控制协议数据链路层的基本概念数据链路层的基本概念 数据链路层在物理连接提供的比特流传输服务基础上,构成透明的、相对无差错的数据链路,实现可靠、有效的数据传送。 数据链路层协议负责在物理网络与计算机的协议组之间提供一个接口。数据链路层的基本概念数据链路层的基本概念数据链路层协议一般由3个元素组成: 对网络层协议的数据进行封装时使用的帧的格式 对网络介质进行访问控制时使用的机制 建立网络的物理层时使用的指导原则数据链路层的基本概念数据链路层的基本概念 Modem分组交换机 DTEDCEDTE信道数据电路数据链路数据电路:在传输信道两端加上信号变换设备(如Modem)之后所形成的二进制比特流通路。即数据电路由传输信道加DCE组成。数据链路:在数据电路已建立的基础上,在链路协议的控制下,使通信双方可开始传输数据的终端设备与传输线路的组合体。DCEModemModem数据链路层的基本概念数据链路层的基本概念数据链路与数据电路 数据电路又可称为物理链路或链路 数据链路又称为逻辑链路 数据链路是在数据电路上增加传输控制功能实现的。 只有建立了数据链路,才能真正地实现数据通信。数据链路层的基本概念数据链路层的基本概念数据链路的基本结构(线路拓扑 ) 点到点链路 多点链路 数据链路层的传送方式: 单工通信 半双工通信(Half Duplex) 全双工通信(Full Duplex) 数据链路层的基本概念数据链路层的基本概念数据链路层的目标:在数据链路上提供可靠的信息传输 数据链路层的功能: 链路管理 帧同步(帧定界) 流量控制 数据和控制信息的识别 差错控制 透明传输 寻址数据链路层的基本概念数据链路层的基本概念数据链路层的协议数据服务单元PDU,即传输和处理的数据单位:帧。 物理层的任务是实现比特流的传送,但不能保证没有错误,需要数据链路层进行差错检测和纠正。 为了便于实现流量控制和差错控制,数据链路层将比特流分解成离散的帧,独立地计算校验和,发送和接收。数据链路层的基本概念数据链路层的基本概念数据链路层帧的结构,包括需要传输的数据、相应的控制信息、校验信息、帧之间的分隔标志等。 帧的形成方法: 字符计数法 含字节填充的分界符法 含位填充的分界标志法 物理层编码违例法内容纲要内容纲要 数据链路层的基本概念 流量控制技术 差错控制 数据链路控制协议流量控制技术流量控制技术在数据通信中,要求发送方的发送数据速率必须不能超过接收方的接收和处理数据的速率。 当接收方来不及接收和处理数据时,就必须采取相应的措施来控制发送方发送数据的速率。 一般流量控制是由接收方主动控制实现的。流量控制技术流量控制技术开关式流量控制: XON/XOFF, 硬件 协议式流量控制: ARQ自动重发请求 停止等待协议(Stop-and-Wait Protocol ) 滑动窗口协议(Slide Window Protocol ) (1)连续ARQ协议 (2)选择ARQ协议 流量控制方法流量控制技术流量控制技术1、完全理想化的数据传输 2、最简单流量控制的数据链路层协议 3、实用的停止等待协议 4、连续ARQ协议 5、选择ARQ协议流量控制的基本原理流量控制技术流量控制技术1、完全理想化的数据传输数据链路层主 机 A缓存主 机 B数据链路AP2AP1缓存发送方接收方帧高层帧流量控制技术流量控制技术完全理想化的数据传输所基于的两个假定: 假定1:链路是理想的传输信道,所传送的任何数据既不会出差错也不会丢失。 假定2:不管发送方以多快的速率发送数据,接收方总是来得及收下,并及时上交主机。1、完全理想化的数据传输流量控制技术流量控制技术流量控制的目的: 现代数据通信的交换方式,采用了存储转发的分组交换技术,当接收方的处理能力小于发送方的发送量时,必须采用流量控制。处理单元没有缓冲空间了! 后面分组丢弃2、最简单流量控制的数据链路层协议流量控制技术流量控制技术保留上述的第一个假定,即主机A向主机B传输数据的信道仍然是无差错的理想信道。但现在不能保证接收端向主机交付数据的速率永远不低于发送端发送数据的速率,需要流量控制。 由收方控制发方的数据流,是计算机网络中流量控制的一个基本方法。2、最简单流量控制的数据链路层协议流量控制技术流量控制技术 (1) 从主机取一个数据帧; (2) 将数据帧送到数据链路层的发送缓存; (3) 将发送缓存中的数据帧发送出去; (4) 等待; (5) 若收到由接收结点发过来的确认应答 信息,则从主机取一个新的数据帧, 然后转到(2)。2、最简单流量控制的数据链路层协议 在发送结点流量控制技术流量控制技术 (1) 等待; (2) 若收到由发送结点发过来的数据帧, 则将其放入数据链路层的接收缓存; (3) 将接收缓存中的数据帧上交主机; (4) 向发送结点发送一个确认信息,表示 数据帧已经上交给主机; (5) 转到(1)。2、最简单流量控制的数据链路层协议 在接收结点流量控制技术流量控制技术2、最简单流量控制的数据链路层协议 两种情况的对比(传输均无差错)ABDATADATADATADATA送主机 B送主机 B送主机 B送主机 BABDATA送主机 BDATA送主机 B时 间不需要流量控制需要流量控制流量控制技术流量控制技术在实际的数据传输过程中,由于传输信道特性的不理想和外界干扰的存在,出现传输差错是不可避免的。 传输差错导致接收的数据帧错误,接收方要求发送方重发数据帧。 严重的传输差错还导致数据帧或应答帧丢失,使发送操作不能继续进行,或接收方重复接收数据。3、实用的停止等待协议流量控制技术流量控制技术3、实用的停止等待协议时 间AB送 主 机ACK送 主 机ACK(a) 正常情况ABDATA0送 主 机ACK(c) 数据帧丢失重 传丢 失 !AB送 主 机ACK丢 弃ACK(d) 确认帧丢失重 传丢 失 !ABNAK送 主 机ACK(b) 数据帧出错重 传流量控制技术流量控制技术结点A发送完一个数据帧时,就启动一个超时计时器。此计时器又称为定时器。 若到了超时计时器所设置的重传时间 tout而仍收不到结点 B 的任何确认帧,则结点 A 就重传前面所发送的这一数据帧。 一般可将重传时间选为略大于“从发完数据帧到收到确认帧所需的平均时间”。 重传若干次后仍不能成功,则报告差错。3、实用的停止等待协议 超时重发技术流量控制技术流量控制技术如果是接收方的应答帧丢失,会导致发送方重复发送,出现重复帧。 每个数据帧带上不同的发送序号。每发送一个新的数据帧就把它的发送序号加 1。 若结点 B 收到发送序号相同的数据帧,就表明出现了重复帧。这时应丢弃重复帧,因为已经收到过同样的数据帧。 但此时结点 B 还必须向 A 发送确认帧ACK,以保证协议正常执行。 3、实用的停止等待协议 重复帧问流量控制技术流量控制技术任何一个编号系统的序号所占用的比特数一定是有限的。因此,经过一段时间后,发送序号就会重复。 序号占用的比特数越少,数据传输的额外开销就越小。 对于停止等待协议,由于每发送一个数据帧就停止等待应答,因此用一个比特来编号就够了。3、实用的停止等待协议 帧的编号问题流量控制技术流量控制技术一个比特可表示0和1两种不同的序号。数据帧中的发送序号 N(S) 以 0 和 1 交替的方式出现在数据帧中。 每发一个新的数据帧,发送序号就和上次发送的不一样。用这样的方法就可以使收方能够区分开新的数据帧和重传的数据帧了。3、实用的停止等待协议 帧的发送序号停止等待方式的性能分析 停止等待方式的性能分析 由于发送端口或传输信道的速率限制,发送一帧需要一定的时间:“发送时延”。 接收一帧的时间和发送一帧的时间相同。发送应答帧,也有“发送时延”。 由于电磁波传输速率的存在,帧在信道中的传送,具有“传播时延”。 接收方收到帧后,差错检验、转交处理,发送方收到应答后,准备发送下一帧,都需要“处理时延” 。流量控制技术停止等待方式的性能分析 停止等待方式的性能分析 流量控制技术停止等待方式的性能分析 停止等待方式的性能分析 t P = t2 – t0 = t3 – t1 = L / v 传播时延 t F = t1 – t0 = t3 - t2 = F / C 发送时延 t A = t5 – t4 = A / C 应答帧发送时延 t proc= t4 - t3 处理时延 L 节点A 与 B 之间的距离 v 信号传播速率 (3× 108 m / s) F 数据帧长度 = H + D (帧头+数据) A 应答帧长度 C 数据发送速率 bits/s流量控制技术停止等待方式的性能分析 停止等待方式的性能分析 正常情况信道利用率 U = t D / (tF + tA + 2tP + 2tproc) t D = D/C ,t F = F/C, t A = A/C U = D /(F+A+2C( tP + tproc )) 不考虑处理时延和传播时延,及应答帧的开销,则U仅与帧结构相关; 当传播时延较大时,信道利用率很低。流量控制技术停止等待方式的性能分析 停止等待方式的性能分析 非正常情况 忽略应答时延和处理时延,则重传时间为 tout > = 2tP 则成功发送一帧的间隔为 tT = tF + 2tP 考虑传输可能出现差错的情况,则正确传送一个数据帧的平均时间为 tav = tT(1 + 1个帧的平均传送次数)流量控制技术停止等待方式的性能分析 停止等待方式的性能分析 非正常情况 设数据帧出错的概率为p,则 tav = tT+(1-p) Σ ipi tT = tT (1-p) 设每帧平均重发次数为 R = p/(1-p) 发送一个帧所需要的信道容量为 Q0=R(F+CT)+(F+A+2CI)流量控制技术停止等待方式的性能分析 停止等待方式的性能分析 有传输差错影响时,信道利用率为 D U0 = R(F+CT)+( F + A+2CI ) 简化分析,得 D 1 U0 = * ( 1 - P ) * D + H 1 + CT / ( H + D ) 以上公式说明,信道利用率与控制信息长度、信道误码率、控制开销有关。流量控制技术流量控制技术流量控制技术优点:比较简单 。 缺点:通信信道的利用率不高,也就是说,信道还远远没有被数据比特填满。 虽然物理层在传输比特时会出现差错,但由于数据链路层的停止等待协议采用了有效的检错重传机制,数据链路层对上面的网络层可以提供可靠传输服务。 停止等待协议的优缺点流量控制技术流量控制技术为了克服停止等待协议信道利用率低的问题,可以采用滑动窗口控制方法。 当发送完一个数据帧后,不是停下来等待确认帧,而是继续发送若干数据帧。由于在等待确认时可以继续发送数据,减少了信道空闲时间,因而提高了整个通信过程的吞吐量。4、连续ARQ协议 滑动窗口流量控制方法流量控制技术流量控制技术“滑动窗口”机制是实现数据帧传输控制的逻辑过程,它要求通信两端节点设置发送存储单元,用于保存已发送但尚未被确认的帧,这些帧对应着一张连续序号列表,即发送窗口。接收方则有一张接收序号列表,即接收窗口。4、连续ARQ协议 滑动窗口流量控制方法流量控制技术流量控制技术 后沿 L(W) 前沿H(W) 窗口尺寸 W=6 H(W) = L(W) + W-1 mod 2n 发送窗口:发送端允许连续发送的帧的序号表 接收窗口:接收端允许连续接收的帧的序号表4、连续ARQ协议 滑动窗口图形表示方法流量控制技术流量控制技术发送窗口尺寸WT:发送端可以不等待应答而连续发送的最大帧数; 发送窗口后沿L(W):发端最先发出而尚未收到应答的帧序号; 发送窗口前沿H(W):发端最后发出而尚未收到应答的帧序号; 考虑出现差错的可能,WT不能过大。4、连续ARQ协议 发送窗口流量控制技术流量控制技术接收窗口尺寸:接收端允许接收的帧数; 在接收端只有当收到的数据帧的发送序号落入接收窗口内才允许将该数据帧收下。 若接收到的数据帧落在接收窗口之外,则一律将其丢弃。4、连续ARQ协议 接收窗口流量控制技术流量控制技术发送窗口: 每发送一帧数据,窗口后沿移动一格; 每接收一帧应答,窗口前沿移动一格; 接收窗口: 每接收一帧数据,窗口后沿移动一格; 每发送一帧应答,窗口前沿移动一格;4、连续ARQ协议 窗口滑动规则流量控制技术流量控制技术只有接收窗口向前滑动时(与此同时也发送了确认),发送窗口才有可能向前滑动。 收发两端的窗口按照以上规律不断地向前滑动,因此这种协议又称为滑动窗口协议。 当发送窗口和接收窗口的大小都等于 1时,就是停止等待协议。 4、连续ARQ协议 滑动窗口流量控制方法流量控制技术流量控制技术当发送完一个数据帧后,不是停下来等待确认帧,而是继续发送若干数据帧; 如果收到了接收方发来的确认帧,则发送方可以继续发送数据帧; 如果出现差错,则从出现差错的数据帧开始全部重发。4、连续ARQ协议流量控制技术流量控制技术tout4、连续ARQ协议 连续ARQ工作原理 ACK1 确认 DATA0ACK2 确认 DATA1DATA2 出错,丢弃DATA3 不按序,丢弃,重传 ACK2DATA4 不按序,丢弃,重传 ACK2DATA5 不按序,丢弃,重传 ACK2ACK3 确认 DATA2ACK4 确认 DATA3超 时 重 传 时 间AB送交主机送交主机…??流量控制技术流量控制技术(1) 接收端只按序接收数据帧。虽然在有差错的 2号帧之后接着又收到了正确的 3 个数据帧,但接收端都必须将这些帧丢弃,因为在这些帧前面有一个 2 号帧还没有收到。虽然丢弃了这些不按序的无差错帧,但应重复发送已发送过的最后一个确认帧(防止确认帧丢失)。4、连续ARQ协议流量控制技术流量控制技术(2) ACK1 表示确认 0 号帧 DATA0,并期望下次收到 1 号帧;ACK2 表示确认 1 号帧 DATA1,并期望下次收到 2 号帧;依此类推。 在协议式流量控制方式中,确认序号 N(R) 一般表示接收方希望接收的下一帧序号为 N(R) ,实际上也表示对 N(R) -1 帧及其以前各帧的确认。4、连续ARQ协议流量控制技术流量控制技术(3) 结点 A 在每发送完一个数据帧时都要设置该帧的超时计时器。如果在超时时间内收到确认帧,就立即将超时计时器清零,继续发送后续的数据帧。但若在所设置的超时时间到了而未收到确认帧,就要重传相应的数据帧(仍需重新设置超时计时器)。4、连续ARQ协议流量控制技术流量控制技术(4) 在重传 2 号数据帧时,虽然结点 A 已经发完了 5 号帧,但仍必须将 2号帧及其以后的各帧全部进行重传。连续 ARQ 又称为Go-back-N ARQ,即 “返回N帧的ARQ”,意思是当出现差错必须重传时,要向回走 N 个帧,然后再开始重传。 4、连续ARQ协议流量控制技术发送端和接收端分别设定发送窗口和接收窗口 。 发送窗口用来对发送端进行流量控制。 发送窗口的大小 WT 代表在还没有收到对方确认信息的情况下发送端最多可以发送多少个数据帧。流量控制技术4、连续ARQ协议 发送端设置发送窗口null01234567012发送窗口WT不允许发送这些帧允许发送 5 个帧(a)01234567012不允许发送这些帧还允许发送 4 个帧WT已发送(b)01234567012不允许发送这些帧WT已发送(c)01234567012不允许发送这些帧还允许发送 3 个帧WT已发送 已发送 并已收到确认(d)连续ARQ协议流量控制技术在连续 ARQ 协议中,接收窗口的大小 WR = 1。 只有当收到的帧的序号与接收窗口一致时才能接收该帧。否则,就丢弃它。 每收到一个序号正确的帧,接收窗口就向前(即向右方)滑动一个帧的位置。同时发送对该帧的确认。流量控制技术4、连续ARQ协议 接收端设置接收窗口null不允许接收这些帧01234567012WR准备接收 0 号帧(a)不允许接收这些帧01234567012WR准备接收 1 号帧已收到(b)不允许接收这些帧01234567012WR准备接收 4 号帧已收到(c)连续ARQ协议接收窗口流量控制技术只有接收窗口向前滑动时(正确接收并发送了确认),发送窗口才可能向前滑动,流量控制主要由接收方实施。 发送窗口尺寸一般大于1,需要多位编码表示已发送但未被确认的帧序号。 发送窗口大小的理想值:即将发送完窗口中最后一帧时,收到了窗口中第一帧的确认。 接收窗口的大小等于 1。流量控制技术4、连续ARQ协议 滑动窗口的重要特性流量控制技术当用 n 个比特进行编号时,则只有在发送窗口的大小 WT  2n  1时,连续 ARQ 协议才能正确运行。 例如,当采用 3 bit 编码时,发送窗口的最大值是 7 而不是 8。 在实际应用中,有模8和模128两种编码方式。模8采用3位编码,一般用于地面链路通信;模128采用7位编码,一般用于卫星链路通信。流量控制技术4、连续ARQ协议 发送窗口的最大值流量控制技术在连续ARQ中,如果某个数据帧发生差错,后续的数据帧即使被正确地接收到,也要被丢弃,造成网络资源浪费; 为进一步提高信道的利用率,可设法只重传出错的数据帧或计时器超时的数据帧。流量控制技术5、选择ARQ 方式流量控制技术可加大接收窗口,先收下发送序号不连续但仍处在接收窗口中的那些数据帧。等到所缺序号的数据帧收到后再一并送交主机。 选择重传 ARQ 协议可避免重复传送那些本来已经正确到达接收端的数据帧。 我们付出的代价是在接收端要设置具有相当容量的缓存空间。流量控制技术5、选择ARQ 方式流量控制技术选择 ARQ 方式,若用 n 比特进行编号,则接收窗口的最大值受下式的约束 WR  2n/2 当接收窗口为最大值WR = 2n/2时,选择ARQ方式发送窗口WT = 2n/2流量控制技术5、选择ARQ 方式内容纲要内容纲要 数据链路层的基本概念 流量控制技术 差错控制 数据链路控制协议差错控制由于数据通信系统传输特性的不理想和外部干扰的存在,传输中出现差错是不可避免的。 由于数据序列的独立性和随机性,物理层无法有效地发现和纠正差错。 差错控制的目的:确保所有的帧按顺序正确递交到数据链路层用户(网络层实体)。差错控制差错控制 1、差错产生原因 2、差错控制原理 3、差错控制方法 4、差错控制编码差错控制差错控制随机差错 原因: 信道热噪声 特点: 随机的、单个的 突发差错 原因: 脉冲噪声(如闪电) 特点: 成片的、连续的差错控制1、差错产生原因差错控制 在发送的数据码元序列中加入监督位,并进行某种变换,使它们和原来相互独立的数据码元之间具有某种约束关系。在接收端检测接收的数据码元和监督码元的约束关系,如果这种约束关系被破坏,则接收端就可以发现传输中的错误,甚至纠正错误。差错控制2、差错控制原理差错控制变换的方法不同,就构成了不同的编码,因而产生不同的差错控制方法。 检错码可以发现传输错误,但不能自动纠正差错。 纠错码可以自动纠正传输错误。 差错控制是以降低效率为代价的。差错控制2、差错控制原理差错控制检错重发法:接收端在收到的信码中检测出错码时,即设法通知发送端重发。 前向纠错法:接收端不仅能在收到的信码中发现有错码,而且能够纠正错码。 反馈校验法:接收端将收到的信码原封不动地转发会发送端,并与原发送信码相比较。差错控制3、差错控制方法差错控制差错控制在二进制编码中,设: 信息长度 k 比特,可以表示信息 2k 种; 监督信息 r 比特,实现对传输差错监督; 2k 种信息比特组合,能够按照一定的编码规则产生相应的监督位。 实际传输长度为 n 比特,n=k+r ; n 比特编码可以表示比特组合 2n 种, 2k < 2n 。4、差错控制编码差错控制差错控制在 n 位二进制编码的 2n 种组合中,能表示信息的 2k 种码组称为许用码组,其余2n - 2k 种码组,称为禁用码组。 在正常的信息编码中,信息位和相应监督位所构成的编码,一定是许用码组,如果接收数据中出现禁用码组,则表示出现了差错。4、差错控制编码差错控制差错控制码间距离(d) :两个码字的对应位取值不同的个数。例: 10001001 10110001 汉明距离(d0) :一个有效编码集中,任意两个码字的码间距离的最小值。即一组编码中的最小码距。码间距离 d = 34、差错控制编码差错控制差错控制汉明距离与纠错检错能力 如果要能检测 e 个差错,则编码集的汉明距离至少为 e + 1; 如果要能纠正 t 个差错,则编码集的 汉明距离至少为 2 t + 1; 如果要能检测 e 个差错,同时能纠正 t 个差错( e > t ) ,则编码集的汉明距离至少为 e + t + 1;差错控制差错控制汉明距离与纠错检错能力 例1 数据 编码 是 0 00 000 否 1 11 111 汉明距离 d=1 d=2 d=3例2 000000 000111 111000 111111收到0101114 1 5 2恢复000111差错控制差错控制检错码 恒比码 正反码 奇偶校验码 循环冗余码(CRC) 纠错码 汉明码(Hamming)4、差错控制编码差错控制差错控制线性分组码 线性码:信息位和监督位为线性关系。 分组码:监督位仅与本组信息位有关。 系统码:前半部为未变化的信息位,后半部为生成的监督位。 线性分组码的性质 封闭性:任意两个有效码组之和(模2加)仍为一个有效码组。 码的最小距离等于非零码最小重量。4、差错控制编码差错控制常用的简单编码 奇偶校验码,恒比码,正反码 线性分组码 汉明码,循环码(包括CRC) 非分组码 卷积码差错控制 差错控制编码分类4、差错控制编码差错控制奇偶校验码是在数据码后附加一个校验位,使构成的码组中“1”的个数为奇数(奇校验)或偶数(偶校验)。 0100101 0 奇校验 0100101 1 偶校验 奇偶校验码的汉明距离?差错控制 奇偶校验码4、差错控制编码差错控制循环冗余码 (CRC)是一种特殊的线性分组码。 循环冗余码各码组中的码元循环左移(或右移),所形成的码组仍然是一个许用码组(全零码组除外),称为循环性。 循环冗余码具有较高的检错能力。差错控制4、差错控制编码 循环冗余码(CRC)null差错控制例如 A4=0111001,对应的码多项式为 :码多项式 (n,k)循环码中,为了便于描述与计算,经常使用 n-1 次 码多项式来表示码字,码字 A =[an-1 an-2 … a1 a0 ],它对应的码多项式为:null差错控制 在(n,k)循环码中,存在惟一的最高幂次为(n-k),最多 k-1 个连续的 0 项,且常数项必须为1 的码多项式g(x),此码多项式的幂次最低(0 元除外);其它所有的码多项式都能被g(x)整除;并且g(x)是 xn+1 的一个因式。 g(x)称为该编码集的生成多项式。生成多项式 g(x)差错控制CRC-16 CRC-CCITTCRC-32差错控制 标准生成多项式4、差错控制编码差错控制选择 r 阶生成多项式 G(x) ,r=n-k 在数据帧末尾加 r 个0,形成多项式 xrM(x) xrM(x) R(x) G(x) G(x) 移项得: xrM(x) - R(x) = Q(x) G(x) 发送循环码多项式 T(x) = xrM(x) - R(x) 检错标准:接收端检测T(x) / G(x)是否为零= Q(x) +差错控制 循环冗余码CRC的编码和检错4、差错控制编码差错控制例1:设信息流为10110011 , G(X)= X4+X+1,即10011101100110000100111010110010011010100000010101100110100 余数101100110100发送信息流为:差错控制4、差错控制编码差错控制例2 :CRC检错 数据帧 1101011011( M(x) ,m=10 ) 生成多项式G(x) = x4 + x + 1(r=4) 生成多项式也可表示为 10011 以2为模的除法: 11010110110000 /10011 = 1110 发送帧 11010110111110(以2为模的减法) 接收端检测:11010110111110 /10011 = 0差错控制4、差错控制编码差错控制以2为模的除法和 减法(加法) 1100001010 10011)11010110110000 10011 10011 11010110110000 10011 1110 10110 11010110111110 10011 10100 10011 余数 1110 G(x)发送序列 T(x) =xrM(x) - 余数xrM(x)差错控制4、差错控制编码差错控制在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Check Sequence)。 循环冗余检验 CRC 和帧检验序列 FCS并不等同。 CRC 是一种常用的检错方法,而 FCS 是添加在数据后面的冗余码。 FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的惟一方法。差错控制4、差错控制编码 循环冗余码(CRC)差错控制得出的余数 R 不为 0,就表示检测到差错。但这种检测方法并不能确定究竟是哪一个或哪几个比特出现了差错。 一旦检测出差错,就丢弃这个差错的帧。 只要经过严格的挑选,并使用位数足够多的除数 P,那么出现检测不到的差错的概率就很小很小。差错控制4、差错控制编码 循环冗余码(CRC)差错控制仅用循环冗余检验 CRC 差错检测技术只能做到无差错接受(accept)。 “无差错接受”是指:“凡是接受的帧(即不包括丢弃的帧),我们都能以非常接近1的概率认为这些帧在传输过程中没有产生差错”。 要做到“可靠传输”(即发送什么就收到什么)就必须再加上确认和重传机制。差错控制4、差错控制编码 循环冗余码(CRC)内容纲要内容纲要 数据链路层的基本概念 流量控制技术 差错控制 数据链路控制协议数据链路控制协议为什么采用数据链路控制规程? 在物理层提供的、可能存在差错的比特流传输基础上,增加适当的控制功能,就可以使通信变得比较可靠。 数据链路控制规程的作用:数据链路控制协议帧控制 透明传送 流量控制 差错控制 链路管理 异常状态的恢复数据链路控制协议面向字符的数据链路控制规程 基本型(如BSC,二进制同步通信) 高级(DDCMP,数字数据通信报文规程) SLIP 和 PPP 面向比特的数据链路控制规程 IBM SDLC ISO HDLC CCITT(ITU-T) LAPB数据链路控制协议数据链路控制协议站的定义: 主站:允许发送控制报文 从站:在主站控制下操作,回复响应 复合站:具有主、从站双重功能 链路配置: 不平衡:用于点-点或点-多点链路 平衡:用于点-点链路数据链路控制协议1、面向比特的链路控制规程 高级数据链路控制规程HDLC数据链路控制协议数据链路控制协议NRM 正常响应模式 只有主站才能发起向从站的数据传输,从站只能响应主站的询问。 ARM 异步响应模式 允许从站发起向主站的数据传输,但主站仍然负责全程的初始化。 ABM 异步平衡模式 任一复合站均可发送、接收命令/响应1、面向比特的链路控制规程 HDLC数据链路控制协议数据链路控制协议 HDLC的帧结构F 帧标志 01111110 A 地址字段 C 控制字段 I 信息字段 FCS 帧校验序列FFACFCS短帧长帧1、面向比特的链路控制规程 HDLC数据链路控制协议数据链路控制协议信息 Info标志 F标志 F地址 A控制 C帧检验序列 FCS帧 Frame1、面向比特的链路控制规程 HDLC HDLC的帧结构物理层帧层分组层同步比特流头部数据部分分组数据链路控制协议标志字段 F (Flag) 为 6 个连续 “1 ”加上两边各一个 “0 ”共 8 bit。在接收端只要找到标志字段就可确定一个帧的位置。 数据链路控制协议比特888可变168信息 Info标志 F标志 F地址 A控制 C帧检验序列 FCS透明传输区间FCS 检验区间1、面向比特的链路控制规程 HDLC 标志字段 F数据链路控制协议HDLC 采用零比特插入法使一帧中两个 F 字段之间不会出现 6 个连续 1。 在发送端,当一串比特流数据中有 5 个连续 1 时,就立即插入一个 0。 在接收帧时,先找到 F 字段以确定帧的边界。接着再对比特流进行扫描。每当发现 5 个连续 1 时,就将其后的一个 0 删除,以还原成原来的比特流。数据链路控制协议1、面向比特的链路控制规程HDLC 零比特插入法数据链路控制协议数据链路控制协议1、面向比特的链路控制规程HDLC 零比特的插入与删除数据中某一段比特组合恰好 出现和 F 字段一样的情况0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0会被误认为是 F 字段发送端在 5 个连 1 之后 插入 0 比特再发送出去填入 0 比特0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 0在接收端将 5 个连 1 之后 的 0 比特删除,恢复原样在此位置删除填入的 0 比特0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 0数据链路控制协议采用零比特插入/删除法可传送任意组合的比特流,或者说,可以实现数据链路层的透明传输。 当连续传输两个帧时,前一个帧的结束标志字段 F 可以兼作后一帧的起始标志字段。 当暂时没有信息传送时,可以连续发送标志字段,使收端可以一直和发端保持同步。数据链路控制协议1、面向比特的链路控制规程HDLC HDLC透明传输数据链路控制协议地址字段 A 不平衡配置:从站地址 平衡配置:应答站地址 控制字段 C 说明帧的类型、功能 信息帧I:数据传送,包含信息字段 监督帧S:监视和控制数据传送 无编号帧U:数据链路的控制和管理 信息字段 I 高层信息,长度可变 帧校验序列 FCS 差错控制,CRC校验数据链路控制协议1、面向比特的链路控制规程HDLC HDLC帧结构数据链路控制协议LSB 为 0表明该帧是信息帧。 N(S) 号表明该帧的发送一个帧号。 N(R)号表明该帧的发送者期望接收的下一个帧号。(对N(R) -1 及以前各帧的确认) 3比特编码表示为模 8 方式。 利用信息帧携带确认信息可提高传送效率。数据链路控制协议1、面向比特的链路控制规程HDLC 信息帧P/F0N(R)N(S)数据链路控制协议监视帧用于数据传送阶段,实现流量控制和差错控制,保证数据传输的正常进行。 RR Receiver Ready 接收端准备好 RNR Receiver Not Ready 接收端未准备好 REJ Reject 帧拒绝(连续ARQ) SREJ Select Reject 选择拒绝(选择ARQ)P/FP/FP/F0 10 10 1N(R) P/F1 10 1SREJ数据链路控制协议1、面向比特的链路控制规程HDLC 监视帧 S数据链路控制协议N(R) 号用于向发送方应答接收端所收到帧的序号。表明该帧的发送者期望接收的下一个帧号,对N(R) -1及以前各帧确认。 RR帧是一种标准应答,表示接收端已作好接收准备,发送方可继续发送信息帧 。 RNR帧用来通知远端停止发送任何帧,直到发送RR帧为止,同时确认前面发送的帧。 REJ 帧是用于拒绝收到出错的帧。 SREJ用于要求选择重发出错的帧。数据链路控制协议1、面向比特的链路控制规程HDLC HDLC监视帧的作用数据链路控制协议LSB 为 11表明该帧是未编号帧(U帧)。 未编号帧的控制字段中没有N(S) 、N(R) 序号。 未编号帧的控制字段中有5位,32种编码,可以用来表示帧的功能,实际只使用了十几种。 未编号帧一般用于链路控制和异常情况处理。数据链路控制协议1、面向比特的链路控制规程HDLC 无编号帧 SABMDMFRMRUADISC数据链路控制协议在TCP/IP协议族中,串行线路网际协议(SLIP)和点到点协议(PPP)是专门用于调制解调器和其它直接连接的,它不需要进行介质访问控制,提供完整的数据链路层功能。用户使用拨号电话线接入因特网时,一般都是使用 SLIP或PPP 协议。 2、因特网的点对点协议PPP数据链路控制协议 SLIP 和 PPP数据链路控制协议由于SLIP在协议识别和差错控制等方面的不足,现在使用得最多的是点到点协议 PPP (Point-to-Point Protocol)。 1992 年制订了 PPP 协议。经过 1993 年和 1994 年的修订,现在的 PPP协议已成为因特网的正式标准RFC 1661。数据链路控制协议2、因特网的点对点协议PPP SLIP 和 PPP数据链路控制协议数据链路控制协议2、因特网的点对点协议PPP PPP协议有三个组成部分 一个将 IP 数据报封装到串行链路的方法。 链路控制协议 LCP (Link Control Protocol)。 网络控制协议 NCP (Network Control Protocol)。数据链路控制协议PPP 的帧格式和 HDLC 的相似。 标志字段 F 仍为 0x7E (符号“0x”表示后面的字符是用十六进制表示。十六进制的 7E 的二进制表示是 01111110)。 地址字段 A 只置为 0xFF。地址字段实际上并不起作用。 控制字段 C 通常置为 0x03。 PPP 是面向字节的,所有的 PPP 帧的长度都是整数字节。 数据链路控制协议2、因特网的点对点协议PPP PPP 协议的帧格式数据链路控制协议PPP 有一个 2 个字节的协议字段。 当协议字段为 0x0021 时,PPP 帧的信息字段就是IP 数据报。 若为 0xC021, 则信息字段是 PPP 链路控制数据。 若为 0x8021,则表示这是网络控制数据。 数据链路控制协议2、因特网的点对点协议PPP PPP 协议的帧格式IP 数据报1211字节12不超过 1500 字节PPP 帧先发送7EFF03FACFCSF7E协议信 息 部 分首部尾部数据链路控制协议当 PPP 用在同步传输链路时,协议规定采用硬件来完成比特填充(和 HDLC 的做法一样)。 当 PPP 用在异步传输时,就使用一种特殊的字符填充法。 数据链路控制协议2、因特网的点对点协议PPP PPP协议的透明传输问题数据链路控制协议将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列(0x7D, 0x5E)。 若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列(0x7D, 0x5D)。 若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。 数据链路控制协议2、因特网的点对点协议PPP PPP协议的字符填充法数据链路控制协议一个PPP帧的数据部分(十六进制)是7D 5E FE 27 7D 5D 7D 5D 65 7D 5E,问真正的数据是什么? 7D 5E FE 27 7D 5D 7D 5D 65 7D 5E 7E FE 27 7D 7D 65 7E数据链路控制协议2、因特网的点对点协议PPP PPP协议的字符填充法 PPP 帧的传输PPP协议是面向连接的协议 PPP 协议不使用序号和确认机制 在数据链路层出现差错的概率不大时,使用比较简单的 PPP 协议较为合理。 在因特网环境下,PPP 的信息字段放入的数据是 IP 数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。 帧检验序列 FCS 字段可保证无差错接受。 2、因特网的点对点协议PPP PPP 帧的传输数据链路控制协议数据链路控制协议数据链路控制协议当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。 PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。 这些分组及其响应选择一些 PPP 参数,并进行网络层配置,NCP 给新接入的 PC机分配一个临时的 IP 地址,使 PC 机成为因特网上的一个主机。 通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。 2、因特网的点对点协议PPP PPP 协议的工作状态PPP 协议的状态图 PPP 协议的状态图 建立失败失败NCP 配置鉴别成功通信 结束载波 停止检测到 载波双方协商 一些选项鉴别网络打开终止静止数据链路控制协议
/
本文档为【通信网入门基础CH04 数据链路层[dmdream]】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索