第5章数据链路层技术

上传人:夏** 文档编号:490333730 上传时间:2023-05-15 格式:DOC 页数:22 大小:378.50KB
返回 下载 相关 举报
第5章数据链路层技术_第1页
第1页 / 共22页
第5章数据链路层技术_第2页
第2页 / 共22页
第5章数据链路层技术_第3页
第3页 / 共22页
第5章数据链路层技术_第4页
第4页 / 共22页
第5章数据链路层技术_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《第5章数据链路层技术》由会员分享,可在线阅读,更多相关《第5章数据链路层技术(22页珍藏版)》请在金锄头文库上搜索。

1、第5章 数据链路层技术51 OSIfRM中的数据链路层511 数据链路层功能512数据链路层服务52数据链路控制原理与技术521 基本的传输控制过程522链路级流量控制523 链路级差错控制53数据链路层协议实例531 高级数据链路控制规程HDLC532 因特网的数据链路协议 数据链路是构成端端逻辑信道的一段节点-节点间数据通路,是在一条数据线路基础上通过数据链路层协议建立起来的、具有它自己的数据传输格式(帧)和传输控制功能的节点节点间“逻辑联结”。 数据链路层为该层的对等通信实体间提供建立、维持和拆除一条或多条数据链路所必需的功能、过程,向网络层实体提供透明的、可靠的链路级数据传输服务。 在

2、本章中,“链路” (1ink)是指实际存在的物理链路,与前面章节中所述的传输线路等同;“数据链路”(data link)是指通过协议控制建立起来的逻辑链路,反映出两点之间的传输联结关系。 本章首先综述OSIRM中定义的数据链路层功能和服务,然后主要讲述救据链路控制的原理与技术。最后,介绍两个最重要的数据链路控制协议实例。5.1 OSIRM中的数据链路层 数据链路层(DL)是OS!参考模型中的第2层,介于物理层和网络层之间。数据链路层的目的是在物理层提供的数据线路连接和比特流传输功能的基础上,为它的上层对等实体(网络层实体)之间建立、维持和释放“节点-节点”间的数据链路联结,并在这个联结上为传送

3、数据链路层数据单元(帧)提供功能性和过程性的方法。5.11 数据链路层功能数据链路层在物理层提供的服务基础上,将网络层递交来的数据单元在邻接的两节点之间,实现透明的、高可靠的传输。这里所谓的“透明的”传输,是指无论什么类型(或结构)的数据,都按其原来的形式传输。为达到这一目的,数据链路层必须具备一系列相应的功能,归纳如下。1数据链路管理 当网络中的两个节点要进行通信时,发送方必须确知接收方是否已经处在准备接收的状态。为此,通信的双方必须先要交换一些必要的信息,以便建立起一种相互关系(逻辑联结关系)。在数据链路层,这种关系称为数据链路(DataLink)。同样地,在传输数据过程中还要维持这个数据

4、链路,而在通信完毕时要释放这个数据链路。涉及数据链路的建立、维持和释放等方面的功能就叫做数据链路管理。2装帧与帧同步 在数据链路层,数据的传送单位是帧(Frame)。所以,当网络层实体递交并请求发送它的数据后,数据链路实体首先必须将该数据按照协议的要求,装配成数据帧,然后在数据链路控制协议的控制下发送到数据链路上去。在该链路的另一端则是相反的过程。另一方面,成批的数据如此被装配成数据帧,一帧一帧地在数据链路上传输,还必须保持它们的顺序性,以免在接收卸帧以后发生乱序。有关帧传输顺序性方面的功能就叫做帧同步。3流量控制 发送方发送数据的速率必须使接收方来得及接收,以免造成帧丢失。当接收方来不及接收

5、时,就必须及时控制发送方的发送速率,以使收发双方的速率达到匹配。4差错控制 任何实用的通信系统都必须具有检测和纠正差错的能力,尤其是数据通信系统,要求最终的数据差错率达到极低的程度。因此,差错控制过程也是数据链路层的主要功能之一。5透明传输 如前所述,所谓透明传输就是不管所传数据是什么样的比特组合(例如,文本型数据、图像型数据、机器代码型数据等),都应当能够在链路上安全可靠地传输。当所传数据中的比特组合恰巧与协议的某个控制信息的结构完全一样时,就必须采取适当的措施,使接收方不会将这样的数据错误地认为是某个控制信息,这样才能保证数据链路上的传输是安全可靠的。6寻址 在一条简单的点点式链路上传输数

6、据时,无所谓寻址问题。但是,在多点式链路上传输数据时,则必须保证每一帧都能送到正确的接收方,接收方也应当知道发送方是哪一个节点,所以数据链路层也存在简单的寻址问题。5.12 数据链路层服务 OSI/RM的数据链路层的功能结构及其相关要素,可以用图51所示的模型表示,它在相邻节点间实现透明的、高可靠的数据传输,并以此功能作为向网络层提供的服务数据链路服务。那么,如图51所示,数据链路层实体是这种服务的提供者,而上层的网络层实体就是它的服务用户,两层之间服务关系的接口就是数据链路服务访问点DLSAP。 数据链路层向网络层提供的基本服务,是将链路上源结点的网络层数据在逐条链路上传输,直到宿结点的网络

7、层。如图51所示,在源结点网络层实体将数据交给数据链路层。数据链路层利用它的数据链路联结支持,把数据传输到宿结点的对等层,然后再递交给它的服务用户网络层实体。图5-1 数据链路层结构及其服务 数据链路层可以提供多种不同类型的服务,实际提供的服务因系统不同而不同,但基本上有3种。1.无确认、无联结服务 无确认、无联结服务是指源节点宿节点发送独立的数据帧,而且宿结点对收到的帧不做确认。数据链路层提供这种服务时,双方事先不必建立联结,因而也不存在释放联结的问题。如果某个帧由于线路差错而被丢失,数据链路层也不作任何处理,恢复工作留给上层去完成。 这类服务适用于数据线路差错率很低的情况,也适用于传输实时

8、语音数据的情况,因为语音数据流不能容许因差错恢复所带来的过大的延时。许多局域网的数据链路层都提供无确认、无联结的服务。2有确认、无联结服务 为了提高可靠性,引入了有确认、无联结服务。这种服务仍然不需要建立联结,但是对一个被发出去的帧要进行单独确认。用这种方式,发送方就可以知道一帧是否已经安全到达目的地。如果在指定时间内一个帧未能到达目的地,则可以重传发生错误的帧。3面向联结的服务 数据链路层为网络层提供的最复杂的服务是面向联结服务。采用这种服务,源结点和宿结点在传输任何数据之前,必须先建立数据链路联结。在这种联结上传输的每一个帧被编上序号,数据链路层保证传输的帧被对方收到,且只收到一次,帧的先

9、后顺序也不能改变。数据链路层的面向联结服务为网络层实体之间的交互提供了最可靠的数据传输服务。 使用面向联结服务时,链路上的数据传输过程分为3个不同阶段。第一阶段是建立联结,并把通信双方的帧传输变量和有关的计数器进行初始化:第二阶段进行数据帧的传输过程;第三阶段是断开数据链路连结,并释放有关变量、缓冲区和其他用于维持联结的资源。52 数据链路控制原理与技术 在一条数据线路两端的DTE之间,只有当执行某一种链路传输控制规程(协议)而建立起双方的逻辑联结后,一对通信实体之间的逻辑通路才可被称为“数据链路”。数据链路层的功能和服务,要通过在数据链路上执行数据链路控制规程来具体实现。 为了在数据链路上进

10、行有效的、可靠的数据传输,需要对传输操作实施严格的控制和管理。完成这种控制和管理功能的规则和约定,称为链路控制规程(Link Control Procedure)。根据数据链路层的功能与服务要求,任一种数据链路规程都必须完成如下几个基本的控制与管理: 口 链路构型及其工作方式; 口 基本的传输操作与顺序,即传输的阶段性控制和链路管理; 口 数据传输流量的控制,即速度匹配控制; 口 数据传输差错的控制,即差错检测与恢复控制。下面几个小节分别讨论以上这几个基本控制问题的原理与技术。521 基本的传输控制过程 一对数据链路层实体之间进行数据传输,必须满足一定的条件和遵循一套约定好的操作规则和顺序,以

11、及对异常情况的处理办法等,才能保证传输的可靠性和有效性。系统设计者必须预先制定出如何控制数据传输的这些操作规则和约定,即操作规程。另外,因链路构型的不同(如点点构型与多点构型),还存在是否寻址的问题。下面分两种情况来讨论。1点点链路 点点链路(Point-To-Point Link)上的操作规程比较简单,但它却是各种不同构型链路操作规程的基础。结合图5-2来说明一种最基本的半双工方式的传输操作(图中大写字母代表发送单元、小写字母代表接收单元;带圈的S代表起始态,E代表结束态)。图5-2 点点链路传输控制过程(半双工) 设一条链路上的两个通信实体分别为“站1”和“站2”。各站的主次属性,是在次数

12、据传输联结开始时自动确定的。如图5-2所示,在某一时刻的S态,站1有数据欲传送到站2,则站1主动发出询问信息(ENQ),这时它自动居为主站地位。当站2接收到ENQ后,自动地居为次站地位,并且如果本站已准备好接收,给对方回送一个认可信息(ack),就可建立起完成一次传输联结的半双工链路(在本书的后文中,规定用大写字母表示发送信息,用小写字母表示接收信息)。 主站收到ack之后,即以同步方式或者异步方式开始发送数据帧(DATA)。但为了可靠起见,发送一定数量数据后,必须暂停一会,等待对方的认可(ack)后方可继续发送后续数据。待全部数据发送完毕,发送一个结束信息(EOT),表示本站这次传输已经结束

13、,到达E态。至此,两个站的一次数据传输完成,链路联结结束,双方的主次关系亦到此结束。 当然,由于实际通信线路会造成传输过程中的差错,另外,接收站也有尚未准备好接收数据的情况。针对这些情况,接收站可以回送否认信息nak,或者不回送任何信息。对于发送站,收到nak后,应立即重发在此之前刚刚发送过的信息(ENQ或DATA)。如果发送站在等待回送期间收不到任何信息,则认为出现了异常情况,可能是接收站对接收信息的隐式否认,也可能是明式响应信息在传输中被丢失。发送站必须有正确处理这种异常情况的措施。任何站对本站中出现的异常情况的处理过程,称为“恢复过程” (后面将要讨论这个问题)。 一般地,一次数据传输的

14、操作控制过程,可分为3个阶段: (1)建立联结:沟通双方的链路联结,确认发送接收(主次)关系 (2)数据传输:进行数据的分帧传输与认可; (3)终止联结:确认传输结束,结束双方的逻辑联结(终止双方的发送接收关系)。 以上传输控制3阶段,对于任何链路构型和不同的双工性,都是共同的。 对于点-点链路,上面所描述的操作规程及主次关系,对双方是对等的,也即任何一方都可居为主站而掌握主控权。但是,为避免发生竞争冲突,实际中当主站结束传输后应发送一个权利转移信息(RVl),以表明转换主控权。在许多应用场合下,往往固定一个主站,主控权始终不转移。例如计算机主机与终端之间的联结属这种情况。在这种固定形式下,若

15、次站有数据要发送,只能等待主站的请求,次站才可允许进入数据传输阶段。 在全双工链路上,由于可以同时双向传输数据和控制信息,所以实际上是同时在两个方向上执行上述操作规则。在后述内容中将了解到这方面的情况。2 多点链路 多点链路(Multi-point Link)上的操作方式的选择,主要取决于是否存在一个被指定的主站。若有一个主站,则数据传输只能在主站与某一个次站之间进行,次站之间不传输数据。这种场合下普遍采用的所有操作规程,都是从一种所谓查询与选择方案变化而来的。这里所谓的查询:是指主站按某种顺序逐个地向次站请求数据,次站若有数据,则建立链路联结,将数据传给主站;选择:是指主站有数据送给某一次站,有选择地通知该次站“数据即将送到”。待链路联结后,将数据传给次站。 “查询与选择”方案中的传输控制3阶段,与点点链路上基本相同,只是由于存在一个以上的次站,在“建立”阶段需在控制信息中附加地址信息,通信实体必须具有寻址能力,并且在有差错情况下的“查询”与“选择”过程有所区别。图5-3所示为“查询”与“选择”方案的链路建立过程。数据

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号