数据链路层协议综合概述
1.数据链路层介绍
数据链路层协议要实现的基本目标就是为网络实体提供可靠的数据通信服务,具体包括∶将物理层的位(1和0)组成俗称为"帧"或"包"的数据链路层服务数据单元,它是数据链路层逻辑信息交换单位。与字节一样,帧也是一系列连续的位组成的同层数据交换单位;传输差错检测及控制,能恢复时则予以纠正;数据流量控制;识别网上每台计算机,即网络数据链路层编址,这对局域网MAC尤为重要。
局域网数据链路层的功能通常划分为介质访问控制子层;逻辑链路控制子层。
(1)介质访问控制子层(MAC)。MAC子层控制收发器共享单一传输信道的方式。若使用MSAP支持LLC时,MAC子层负责帧的编址及其识别。MAC到MAC 操作通过同等层MAC协议实现。MAC还负责产生帧校验序列及其检验等功能。MAC的具体功能留待介质访问控制一节中专门讨论。
(2)逻辑链路控制子层(LLC)。LLC子层的功能是建立和维护及拆卸数据,以便数据帧无差错地从一台设备传向另一台设备。
LLC协议由IEEE 802.2定义,它是HDLC的一个兼容子集。它支持两种类型的链路层服务,即无连接LLC及面向连接LLC。网桥、智能集线器、网卡等互连硬件设备往往与数据链路层有关。
2.介质访问控制
逻辑拓扑结构使用特定的规则控制何时允许网络实体传送数据信号,这种控制规则就称为介质访问控制协议。它对共享介质型局域网具有非同一般的意义,类似日常生活中的交通控制,是IEE802MAC子层的核心内容。若没有介质访间控制协议,所有设备在它们准备好数据时就立即发送,就会出现一个或多个站点同时发送,其结果是不同的信号相互干扰破坏,甚至彻底丢失信号。这种情形叫做冲突,它破坏了站点间的有效通信。
介质访问控制协议要解决的问题就是尽可能地消除或减少多个并发信号之间的冲突或干扰,确定何时才允许网中设备发送数据。介质访问控制协议可分为
三类∶争用、令牌传递、轮询。
不同的MAC协议具有不同的特点,分别适应不同的应用需求。因而在选用MAC协议之前,需要特别慎重考虑以下四个因素∶数据传输是持续不断的还是突发的?数据传输量多大?数据的时间敏感性如何?网上设备的数量多还是少?
(1)争用。最早的"争用"系统采用"先来先服务"的原则,由网络设备自由竞争介质的访问权,不存在仲裁机构。在争用系统中,网上所有设备在它们想要发送时就能发送。如前所述,这种做法最终会因冲突的发生而导致数据丢失。每当增加新设备时,冲突概率呈几何级数增长,故这种系统只适应规模较小的网络。
为了减少冲突次数,已研制出一类称之为"载波侦听多重访问(CSMA)"的争用协议。它要求各站点检测到了一个信号,它就抑制自己发送,稍后再重试。CSMA大大地减少了冲突,却不能根除冲突。这是因为若两个站点同时对电缆进行侦听,一旦发现信道此时空闲,它们就会同时发送,故这两个帧仍然会发生冲突。
CSMA 又细分为两种,即载波侦听多重访问/冲突检测(CSMA/CD)和载波侦听多重访问/冲突回避(CSMA/CA)。
CSMA/CD协议不但在传输前对电缆进行侦听,而且在传输过程中也检测冲突,并能发起重传。CSMA/CD协议使用相当普遍。DEC公司的Ethernet版本2和IEEE802.3都采用了CSMA/CD协议。这种协议的问题是重负载下效率不高、传输延迟不定。据统计,如果一个共享型以太网段的站点数超过24个,则其传输介质有效利用率下降得很厉害,实际数据传输速率只能达到2.5Mbits/,而不是10Mbits/s。这就是为何采用交换式以太网以及利用网桥等设备"微分段"以太网的原因。
(2)令牌传递系统。在令牌传递系统中,一个非常小的数据帧(称为令牌或标记)以特定次序从一台设备传到下一台设备。令牌是一种特殊信息,它将介质控制权暂时托交给持有令牌的那台设备。令牌沿环传递,将介质控制权分发给网中设备。
已制定出好几种令牌传递MAC 协议。已标准化的包括IEEE 802.4令牌总线和IEEE 802.5令牌环。
令牌传递网络适用于可设置优先级的、对时间敏感的通信业务(如数字化声
音或视频)。通信量负载重时令牌传递网络效率较高。
令牌传递系统与争用系统的性能比较很有意思。从总体上看,两者不分仲伯,没有谁占绝对优势。但在特定应用环境,其中一个会比另一个显示出更好的性能。
一般而言,当负载重(通信量大)时,令牌传递网络能提供较高的网络吞吐量,而争用访问控制方法的性能就比较差。另一方面,由于争用网络访间介质的开销小,在负载轻的条件下,其性能则超过令牌传递系统。
(3)轮询。轮询方式早在分时系统时就已投入使用,只不过那时用于分时终端与计算机之间的通信。局域网中借用其原始思想,提出了轮询介质访问控制方法∶指定一台设备(称作控制器或主设备)作为介质访问权限的管理者(仲裁机构)。这台设备以某种事先约定好的顺序,依次询问其它设备(称为次设备),看它们是否有信息需要发送。
为了从次设备处获取数据,主设备向次设备发出一个数据请求,然后接收次设备发来的数据。收到数据后主设备再轮询另一个设备,并接收那台次设备发来的数据,以此类推。协议限制每台设备在一次轮询周期内能传送多少数据。轮询介质访问控制方法对由时间敏感设备(如自动化设备)组成的网络是较为理想的选择。
3. 编址
计算机网络实体需要某种方法来区分网络上的不同设备,这就是所谓编址机制。编址问题在OSI不同层中均存在。数据链路层只关心物理设备地址(也称MAC地址)。该地址是由设备厂商指定的唯一物理地址,而这些地址是由标准化组织分配给它们的。地址的具体格式取决于所用的介质访间控制方法(这正是为什么叫MAC地址的缘故)。网络用户根本不用去管设备使用什么样的物理地址,但应该知道他们的存在以及他们的作用。正是有了物理地址,网络才能识别这台设备,并将数据发送给它。
虽然可通过物理地址标识网上的计算机,但在共享介质型局域网中,真正传输数据时,网上所有设备均能收到某个站点发出的帧。每台设备读取帧的地址,只有其物理地址与读到的地址匹配的那台设备才真正接收数据。其他所有设备都不再继续接收这一帧的剩余部分。网桥利用物理设备地址在分离的传输介质缆段之间有选择地重发数据信号。透明网桥不要求初始