文章目录
数据链路层在物理层提供服务的基础上向网络层提供服务,其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。链路层的功能:
- 为网络层提供服务
- 链路管理
- 帧定界、帧同步、透明传输
- 流量控制
- 差错控制
组帧
数据链路层之所以要把比特组合成帧为单位传输,是为了在出错时只重发出错的帧,而不必重发全部数据,从而提高效率。为了使接收方能正确地接收并检查所传输的帧,发送方必须依据一定的规则把网络层递交的分组封装成帧(称为组帧)。组帧主要解决帧定界、帧同步、透明传输等问题。通常有4种方法实现组帧。
注意:组帧时既要加首部,又要加尾部。原因是,在网络中信息是以帧为最小单位进行传输的,所以接收端要正确地接收帧,必须要清楚该帧在一串比特流中从哪里开始到哪里结束(因为接收端收到的是一串比特流,没有首部和尾部是不能正确区分帧的)。而分组(即IP数据报)仅是包含在帧中的数据部分,所以不需要加尾部来定界。
- 字符计数法
- 字符填充的首尾定界符法
- 零比特填充的首尾标志法
- 违规编码法
差错控制
实际通信链路都不是理想的,比特在传输过程中可能会产生差错,1可能会变成0,0也可能会变成1,这就是比特差错。比特差错是传输差错中的一种,其他差错暂不考虑。
通常利用编码技术进行差错控制,主要有两类:自动重传请求ARQ和前向纠错FEC。在ARQ方式中,接收端检测出差错时,就设法通知发送端重发,直到接收到正确的码字为止。在FEC方式中,接收端不但能发现差错,而且能确定比特串的错误位置,从而加以纠正。因此,差错控制又可分为检错编码和纠错编码。
- 检错编码:奇偶校验码,循环冗余码
- 纠错编码:海明码
流量控制与可靠传输机制
流量控制
流量控制涉及对链路上的帧的发送速率的控制,以使接收方有足够的缓冲空间来接收每个帧。例如,在面向帧的自动重传请求系统中,当待确认帧的数量增加时,有可能超出缓冲存储空间而造成过载。流量控制的基本方法是由接收方控制发送方发送数据的速率,常见的方式有两种:停止-等待协议和滑动窗口协议。
-
停止-等待流量控制基本原理
发送方每发送一-帧, 都要等待接收方的应答信号,之后才能发送下一帧;接收方每接收一帧,都要反馈一个应答信号,表示可接收下一帧,如果接收方不反馈应答信号,那么发送方必须一直等待。每次只允许发送一帧,然后就陷入等待接收方确认信息的过程中,因而传输效率很低。
-
滑动窗口流量控制原理
在任意时刻,发送方都维持一组连续的允许发送的帧的序号,称为发送窗口;同时接收方也维持一组连续的允许接收帧的序号,称为接收窗口。发送窗口用来对发送方进行流量控制,而发送窗口的大小Wr代表在还未收到对方确认信息的情况下发送方最多还可以发送多少个数据帧。同理,在接收端设置接收窗口是为了控制可以接收哪些数据帧和不可以接收哪些帧。在接收方,只有收到的数据帧的序号落入接收窗口内时,才允许将该数据帧收下。若接收到的数据帧落在接收窗口之外,则一律将其丢弃。
发送端每收到一个确认帧,发送窗口就向前滑动一个帧的位置,当发送窗口内没有可以发送的帧(即窗口内的帧全部是已发送但未收到确认的帧)时,发送方就会停止发送,直到收到接收方发送的确认帧使窗口移动,窗口内有可以发送的帧后,才开始继续发送。接收端收到数据帧后,将窗口向前移一个位置, 并发回确认帧,若收到的数据帧落在接收窗口之外,则一律丢弃。
可靠传输机制
数据链路层的可靠传输通常使用确认和超时重传两种机制来完成。确认是一种无数据的控制帧,这种控制帧使得接收方可以让发送方知道哪些内容被正确接收。有些情况下为了提高传输效率,将确认捎带在一个回复帧中,称为捎带确认。超时重传是指发送方在发送某个数据帧后就开启一个计时器,在一定时间内如果没有得到发送的数据帧的确认帧,那么就重新发送该数据帧,直到发送成功为止。
自动重传请求(Auto Repeat reQuest, ARQ)通过接收方请求发送方重传出错的数据帧来恢复出错的帧,是通信中用于处理信道所带来差错的方法之一。传统自动重传请求分为三种,即停止-等待(Stop-and-Wait) ARQ、后退N帧(Go-Back-N) ARQ和选择性重传( Selective Repeat)ARQ。后两种协议是滑动窗口技术与请求重发技术的结合,由于窗口尺寸开到足够大时,帧在线路上可以连续地流动,因此又称其为连续ARQ协议。注意,在数据链路层中流量控制机制和可靠传输是交织在一起的。
从滑动窗口的概念看,停止等待协议、后退N帧协议和选择重传协议只在发送窗口大小与接收窗口大小上有所差别:
- 停止等待协议:发送窗口大小=1,接收窗口大小=1。
- 后退N帧协议:发送窗口大小> 1,接收窗口大小= 1。
- 选择重传协议:发送窗口大小> 1,接收窗口大小> 1。
介质访问控制
介质访问控制所要完成的主要任务是,为使用介质的每个结点隔离来自同一信道上其他结点所传送的信号,以协调活动结点的传输。用来决定广播信道中信道分配的协议属于数据链路层的一个子层,称为介质访问控制(Medium Access Control, MAC)子层。
信道划分介质访问控制
- 频分多路复用
- 时分多路复用
- 波分多路复用
- 码分多路复用
随机访问介质访问控制
在随机访问协议中,不采用集中控制方式解决发送信息的次序问题,所有用户能根据自己的意愿随机地发送信息,占用信道全部速率。在总线形网络中,当有两个或多个用户同时发送信息时,就会产生帧的冲突(碰撞,即前面所说的相互干扰),导致所有冲突用户的发送均以失败告终。为了解决随机接入发生的碰撞,每个用户需要按照一定的规则反复地重传它的帧,直到该帧无碰撞地通过。这些规则就是随机访问介质访问控制协议,常用的协议有ALOHA协议、CSMA协议、CSMA/CD协议和CSMA/CA协议等,它们的核心思想都是:胜利者通过争用获得信道,从而获得信息的发送权。因此,随机访问介质访问控制协议又称争用型协议。
-
CSMA/CD协议
载波侦听多路访问/碰撞检测(Carrier Sense Multiple Access with Collision Detection, CSMA/CD)协议是CSMA协议的改进方案,适用于总线形网络或半双工网络环境。“载波帧听”就是发送前先侦听,即每个站在发送数据之前先要检测一下 总线上是否有其他站点正在发送数据,若有则暂时不发送数据,等待信道变为空闲时再发送。“ 碰撞检测”就是边发送边侦听,即适配器边发送数据边检测信道_上信号电压的变化情况,以便判断自己在发送数据时其他站点是否也在发送数据。
-
CSMA/CA协议
CSMA/CD协议已成功应用于使用有线连接的局域网,但在无线局域网环境下,却不能简单地搬用CSMA/CD协议,特别是碰撞检测部分。CSMA/CA协议的基本思想是在发送数据时先广播告知其他结点,让其他结点在某段时间内不要发送数据,以免出现碰撞。CSMA/CD协议的基本思想是发送前侦听,边发送边侦听,一旦出现碰撞马上停止发送。
轮询访问介质访问控制:令牌传递协议
在轮询访问中,用户不能随机地发送信息,而要通过一个集中控制的监控站,以循环方式轮询每个结点,再决定信道的分配。当某结点使用信道时,其他结点都不能使用信道。典型的轮询访问介质访问控制协议是令牌传递协议,它主要用在令牌环局域网中。
在令牌传递协议中,一个令牌在各结点间以某个固定次序交换。令牌是由一组特殊的比特组合而成的帧。当环上的一个站希望传送帧时,必须等待令牌。一旦收到令牌, 站点便可启动发送帧。帧中包括目的站的地址,以标识哪个站应接收此帧。帧在环上传送时,不管该帧是否是发给本站点的,所有站点都进行转发,直到该帧回到它的始发站,并由该始发站撤销该帧。帧的目的站除转发帧外,应针对该帧维持一个副本,并通过在帧的尾部设置“响应比特”来指示已收到此副本。站点在发送完一帧后,应释放令牌,以便让其他站使用。
局域网
局域网是一种典型的广播信道,主要特点是网络为一个单位所拥有,且地理范围和站点数目均有限。主要有以太网、令牌环网、FDDI 和 ATM 等局域网技术,目前以太网占领着有线局域网市场。可以按照网络拓扑结构对局域网进行分类:星型,总线型,环型。
以太网
以太网逻辑上采用总线形拓扑结构,以太网中的所有计算机共享同一条总线, 信息以广播方式发送。为了保证数据通信的方便性和可靠性,以太网简化了通信流程并使用了CSMA/CD方式对总线进行访问控制。以太网采用两项措施简化通信:采用无连接的工作方式;不对发送的数据帧编号,也不要求接收方发送确认,即以太网尽最大努力交付数据,提供的是不可靠服务,对于差错的纠正则由高层完成。
MAC帧
每块网络适配器(网卡)都有一一个地址,称为MAC地址,也称物理地址; MAC地址长6字节,一般用由连字符(或冒号)分隔的6个十六进制数表示,如02-60-8c-e4-b1-21。高24位为厂商代码,低24位为厂商自行分配的网卡序列号。
由于总线上使用的是广播通信,因此网卡从网络上每收到一个MAC帧,首先要用硬件检查MAC帧中的MAC地址。如果是发往本站的帧,那么就收下,否则丢弃。

数据链路层设备
网桥
两个或多个以太网通过网桥连接后,就成为一个覆盖范围更大的以太网,而原来的每个以太网就称为一个网段。网桥工作在链路层的MAC子层,可以使以太网各网段成为隔离开的碰撞域。如果把网桥换成工作在物理层的转发器,那么就没有这种过滤通信量的功能。由于各网段相对独立,因此一个网段的故障不会影响到另一个网段的运行。
网桥的基本特点:①网桥必须具备寻址和路径选择能力,以确定帧的传输方向;②从源网络接收帧,以目的网络的介质访问控制协议向目的网络转发该帧;③网桥在不同或相同类型的LAN之间存储并转发帧,必要时还进行链路层上的协议转换。注意,一般情况下, 存储转发类设备都能进行协议转换,即连接的两个网段可以使用不同的协议;④网桥对接收到的帧不做任何修改,或只对帧的封装格式做很少的修改;⑤网桥可以通过执行帧翻译互联不同类型的局域网,即把原协议的信息段的内容作为另一种协议的信息部分封装在帧中;⑥网桥应有足够大的缓冲空间,因为在短时间内帧的到达速率可能高于转发速率。
局域网交换机
桥接器的主要限制是在任一时刻通常只能执行一个帧的转发操作,于是出现了局域网交换机,又称以太网交换机。从本质上说,以太网交换机是一个多端口的网桥,它工作在数据链路层。交换机能经济地将网络分成小的冲突域,为每个工作站提供更高的带宽。
以太网交换机的原理是,它检测从以太端口来的数据帧的源和目的地的MAC(介质访问层)地址,然后与系统内部的动态查找表进行比较,若数据帧的MAC地址不在查找表中,则将该地址加入查找表,并将数据帧发送给相应的目的端口。
2462

被折叠的 条评论
为什么被折叠?



