NET04_数据链路层

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

wangd@nuc.edu.cn网络工程专业实训中心第四章数据链路层中北大学电子与计算机科学技术学院SchoolofElectronicsandComputerScienceandTechnology.NUC交换今日汗水,路由明朝辉煌wangd@nuc.edu.cn网络工程专业实训中心§4数据链路层•本章内容•数据链路层功能•数据链路控制(流量控制和差错控制)•HDLC和PPP协议•介质访问控制与局域网•数据链路层设备wangd@nuc.edu.cn网络工程专业实训中心§4-1数据链路层功能•数据链路层位于OSI模型的第二层,数据链路层的主要作用是把从网络层接收到的数据分割成可以被物理层传输的帧,数据链路层直接控制着网络层与物理层的通信。wangd@nuc.edu.cn网络工程专业实训中心数据链路层的功能•在OSI参考模型中,数据链路层介于物理层和网络层之间,它的基本功能是在物理层提供服务的基础上向网络层提供服务。•即在物理层提供物理连接和透明传输比特流的基础上,将物理层提供的不可靠的物理链路变成逻辑上无差错的数据链路,为网络层的分组(Packet)传输提供服务。wangd@nuc.edu.cn网络工程专业实训中心数据链路层的主要任务wangd@nuc.edu.cn网络工程专业实训中心数据链路层L2数据01010100001111000传输媒体物理层L2数据01010100001111000物理层wangd@nuc.edu.cn网络工程专业实训中心数据链路层的功能•数据链路管理•成帧•差错控制•流量控制•寻址wangd@nuc.edu.cn网络工程专业实训中心1、数据链路管理•当链路两端的结点进行通信时,必须首先建立一条数据链路。在数据传输时要维持数据链路,而在通信结束后要释放链路。•数据链路的建立、维持和释放叫作数据链路管理。•数据链路从结构和操作方式上被分为点-点式链路和多点式链路,其中点-点式链路又可以分为非平衡点-点式链路和平衡点-点式链路wangd@nuc.edu.cn网络工程专业实训中心数据链路的基本结构主站A次站B命令(B)响应(B)复合站A复合站B命令或响应(B或A)响应或命令(A或B)主站1次站1次站2次站n命令(1或2或n)响应(1)响应(2)响应(n)……(a)非平衡点-点式(b)平衡点-点式(c)非平衡多点式wangd@nuc.edu.cn网络工程专业实训中心2、成帧•在数据链路层传输的协议数据单元是帧。•帧是数据链路层按照具体协议要求由比特流装配而成的。这样,数据是一帧一帧地传送的,当出现差错时,就可以只将有差错的帧重传一次,而避免将全部数据进行重传。•成帧包括帧的定界、同步以及透明传输。wangd@nuc.edu.cn网络工程专业实训中心帧同步•帧同步是为了使接受方能够从收到的比特流中准确区别出一帧的开始和结束。•帧的结构设计必须要有帧首和帧尾的标识方法,以标识帧的开始和结束,还要包括校验信息和帧序号,以便检测出传输中出现的差错和保持帧传输的有序性。•实现帧同步的方法有四种:•字节计数法•字符填充法•比特填充法•违法编码法wangd@nuc.edu.cn网络工程专业实训中心字节计数法•以一个特殊字符表征一帧的开始(如SOH控制字符),并用一个专门字段来标明一帧的字节数。接收方可以通过表征帧开始的特殊字符区别出帧的开始,并从专门字段中获知该帧的字节数,从而确定帧的终止位置。•采用这种帧同步的方法不会引起数据信息与其它控制信息的混淆,因而不必采用任何措施即可实现数据的透明性,任何数据都可不受限制地传输。•注意:StartOfHeader(首部开始),请注意,SOH都是ASCII码中的控制字符。SOH的十六进制编码是01。wangd@nuc.edu.cn网络工程专业实训中心字符填充法•使用特定字符界定一帧的起始与终止。为了不使数据信息位中出现与特定字符相同的字符,可在特写字符前填充一个转义控制字符(如ESC)以示区别,从而达到数据的透明性。由于这种方法的特定字符依赖于所采用的字符编码集,故兼容性较差。EOTESCzSOHSOHESCESCSOHEOTESCyESCzESCxEOTwangd@nuc.edu.cn网络工程专业实训中心IBM的二进制同步通信规程BSC专用ASCII码集的控制字符标记名称ASCII码值(十六进制)标记名称ASCII码值(十六进制)SOH序始01HACK确认06HSTX文始02HDLE转义10HETX文终03HNAK否认15HEOT送毕04HSYN同步16HENQ询问05HETB块终17Hwangd@nuc.edu.cn网络工程专业实训中心比特填充法•用一组特定的比特组合(如HDLC中为01111110)标志一帧的起始与终止。为了不使数据信息中出现与特定的比特组合相同的比特串,可以在数据信息位中填充某一比特位,使两者不致混淆,从而实现数据的透明性。•比特填充法很容易由硬件来实现,其性能也优于字符填充法。011111100110111111001101111111110010……01111110插入001111110011011111100011011111101110010……01111110wangd@nuc.edu.cn网络工程专业实训中心违法编码法•采用特定的比特编码方法界定帧的起始与终止,一般在物理层实现。•曼彻斯特编码和差分曼彻斯特编码属于违法编码法。•目前较普遍使用的帧同步方法为:•比特填充法(如HDLC)•违法编码法(如以太网)。wangd@nuc.edu.cn网络工程专业实训中心3、差错控制•差错控制是数据链路层的主要功能之一,但不是数据链路层所特有的功能。在网络层和传输层也都有差错控制能力,只是差错控制的对象不同。•数据链路层的差错控制是保证相邻结点之间的传输差错控制在所允许的最小范围内。wangd@nuc.edu.cn网络工程专业实训中心4、流量控制•流量控制也不是数据链路层所特有的功能,在其它高层协议中也有流量控制功能。•数据链路层的流量控制是相邻结点之间的数据链路的流量控制。相邻结点的收发双方会由于设备工作速率、缓冲区空间等差异,会出现发送方的发送速率大于接收方的接收速率现象。此时若不进行发送方速率控制就会造成帧丢失。•数据链路层的流量控制实际上是对发送数据流量的控制,使发送方的发送速率不至于超过接收方的接收能力,达到收发双方速率匹配。wangd@nuc.edu.cn网络工程专业实训中心5、寻址•在点-点式的链路上不存在寻址问题。•在多点连接的情况下,发送方必须保证每帧能正确地传送到接收方,而接收方也应知道发送方的地址。wangd@nuc.edu.cn网络工程专业实训中心§4-2数据链路控制•数据链路的管理主要是提供各种服务质量参数,包括检测到不可纠正错误的平均时间、漏检差错率、传输延迟和吞吐量等,以及对异常情况的处理。•常用的差错控制方法采用自动重发请求(ARQ)技术和前向纠错技术(FEC);•常用的流量控制方法采用停等协议和滑动窗口协议。•在一些链路控制规程中,差错控制和流量控制是分开考虑和分别采取措施的,但是在更多的一些链路控制规程中,两者是综合考虑合并解决的。wangd@nuc.edu.cn网络工程专业实训中心1、XON/XOFF方案•XON/XOFF使用一对控制字符来实现流量控制,其中XON采用ASCII字符集中的控制字符DC1(DeviceControl1),XOFF采用ASCII字符集中的控制字符DC3(DeviceControl3)。•发送XON/XOFF控制字符的权利设在接受端,以对发送端的发送进行控制。•当通信链路上的接收方缓冲区发生过载时,便向发送方发送一个XOFF字符,发送方接收XOFF字符后便暂停发送数据;等接收方处理完缓冲区中的数据,过载恢复后,再向发送方发送一个XON字符,以通知发送方恢复数据发送。wangd@nuc.edu.cn网络工程专业实训中心XON/XOFFwangd@nuc.edu.cn网络工程专业实训中心2、停等协议•停待协议(StopandWait)是最基本最简单的流量控制协议。•它的工作原理是这样的:发送方发出一帧,然后等待应答信号到达后再发送下一帧;接收方每收到一帧后送回一个应答信号(ACK),表示愿意接受下一帧,如果接收方不送回应答,则发送方必须等待。•在源和目标之间的数据流动是由接受方来控制的。wangd@nuc.edu.cn网络工程专业实训中心停等协议的信道利用率帧1帧2帧nS1S2tptptfTFA发送一帧的时间为:fpFAttT2线路的利用率为:fpftttE2wangd@nuc.edu.cn网络工程专业实训中心停等协议的信道利用率帧1帧2帧nS1S2tptptfTFA我们定义a=tp/tf,则121aEwangd@nuc.edu.cn网络工程专业实训中心停等协议的信道利用率•停等协议的信道利用率:•由于a是线路传播延迟和一个帧时的比,故而在线路长度一定和帧长固定的情况下a是常数。又由于线路传播延迟是线路长度d和信号传播速度v的比值,而一帧时是帧长L和数据速率R的比,因而有:121aELvRdRLvda///•a可理解为链路比特长和帧长的比,叫做链路的帧计数长度。wangd@nuc.edu.cn网络工程专业实训中心3、滑动窗口协议•在停等协议中,发送端一次只允许发送一个数据帧,然后等待对方响应,才可以继续发送。显然这样的链路利用率不高,尤其是当链路过长时,利用率显著下降。•为了提高信道的有效利用率,滑动窗口协议对此作出了改进。滑动窗口协议采用的是不等待确认帧返回就连续发送多个帧的方案。wangd@nuc.edu.cn网络工程专业实训中心滑动窗口•由于允许连续发送多个未被确认的帧,帧号就需采用多位二进制才能加以区分。因为凡被发出去且尚未被确认的帧都可能出错或丢失而要求重发,因而这些帧都要保留下来。这就要求发送方有较大的发送缓冲区保留可能要求重发的未被确认的帧。•发送窗口就是指示发送方已发送但尚未确认的帧序号队列的界,其上、下界分别称为发送窗口的上、下沿,上、下沿的步距称为窗口尺寸。wangd@nuc.edu.cn网络工程专业实训中心滑动窗口协议图例•假设发送窗口尺寸为2,接收窗口尺寸为11234567012345670发送帧0后发送帧1后接受帧0后接受确认0后发送帧2后接受帧1后接受确认1后初态发送方接受方wangd@nuc.edu.cn网络工程专业实训中心4、差错控制•差错控制是检测和纠正传输错误的机制。前面我们假定没有传输错误,实际情况不可能是这样,在数据传输过程中有的帧可能丢失,有的帧可能包含错误的比特,这样的帧经接收器校验后会被拒绝。•通常应付传输差错的办法如下:•肯定应答•否定应答重发•超时重发wangd@nuc.edu.cn网络工程专业实训中心AutomaticRepeatreQuest•肯定应答、否定应答重发、超时重发这种技术的主要思想是利用差错检测技术自动的对丢失帧和错误帧请求重发,称之为自动请求重发ARQ技术。•结合流控技术,可以组成三种形式的ARQ协议。•停等ARQ•后退N帧ARQ•选择重发ARQ。wangd@nuc.edu.cn网络工程专业实训中心停等ARQ协议•停等ARQ协议是停等流控技术和自动请求重发技术的结合。•根据停等ARQ协议,发送站在发出一个帧后必须等待应答信号,收到肯定应答信号ACK后继续发送下一帧;收到否定应答信号NAK或超时(可能是帧丢失也可能是应答信号丢失)的情况下重新发送原来的帧。帧0帧1帧0帧0帧1帧1帧0帧0帧1ACK1ACK0ACK1NAK1ACK0ACK1ACK1超时超时ttS1S2wangd@nuc.edu.cn网络工程专业实训中心后退N帧ARQ协议•后退N帧ARQ协议是滑动窗口技术和自动请求重发技术的结合,后退N帧(Go-Back-n)是指从出错处重发已经发送过的N个帧。出错丢弃0123452345670101EDDD23456ACK1ACK2NAK2ACK3ACK4ACK5ACK6ACK7wangd@nuc.

1 / 83
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功