数据链路层最基本的服务是将源自计算机网络层的数据可靠的传输到相邻节点的目标计算机的网络层(通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报)。
数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻结点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。
组装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。
首部和尾部包含许多的控制信息,他们的一个重要作用是:帧定界(确定帧的界限)。
帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。
组帧的四种方法:
透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就 “看不见” 有什么妨碍数据传输的东西。
当所传输数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使接收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输时透明的。
帧首部使用一个计数字段(第一个字节,八位)来表明帧内字符数。
较高的发送速度和较低的接收能力不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作。
数据链路层的流量控制和传输层的流量控制的区别:
发送端发什么,接收端就接收什么。
无差错情况和有差错情况。
介质访问控制的内容:采取一定的措施,使得两结点之间的通信不会发生相互干扰的情况。
将使用介质的每个设备与来自同一信道上的其他设备的通信隔离开,把时域和频域资源合理地分配给网络上的设备。
把多个信号组合在一条物理信道上进行传输,使得多个计算机或终端设备共享信道资源,提高信道利用率。
把一条广播信道逻辑上分成几条用于两个结点之间通信的互不干扰的子信道,实际上就是把广播信道转变为点对点信道。
用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽,单位为Hz)资源。
优点:
将时间划分为一段段等长的时分复用帧(TDM帧)。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道。
波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再利用波长分解复用器将各路波长分解出来。
码分多址(CDMA)是码分复用的一种方式。
多址处理的是动态分配信道给用户。这在用户仅仅短暂性地占用信道的应用中是必须的,而所有的移动通信系统基本上都是属于这种情况。相反,在信道永久性地分配给用户的应用中,多址是不需要的(对于无线广播或电视广播站就是这样)。
在CDMA中,每一个比特时间再划分为m个短的间隔,称为码片。
使用CDMA的每一个站被指派一个唯一的 m bit 码片序列。
码片的挑选规则如下:
**思想:(想发就发)**不监听信道,不按时间槽发送,随机重发。
如果发生冲突,接收方就会检测出差错,然后不予确认,发送方在一定时间内收不到确认就判断发生了冲突。
超时后等一随机时间再重传。
**思想:(控制想发就发的随意性)**把时间分成若干个相同的时间片,所有用户在时间片开始的时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。
CS: 监听,每一个站在发送数据之前要监测一下总线上是否有其它计算机在发送数据。
MA: 多点接入,表示许多计算机以多点接入的方式连接在一根总线上。(总线网络)
协议思想: 发送帧之前监听信道再发送。
坚持指的是对于监听到信道忙之后的继续监听。
思想: 如果一个主机要发送消息,那么他先监听信道。如果信道空闲则直接传输,不必等待;如果信道忙则一直监听,直到空闲马上传输。如果有冲突(一段时间内问收到肯定回复),则等待一个随机长的时间再监听,重复上述过程。
优点: 只要媒体空闲,站点就马上发送,避免了媒体利用率的损失。
缺点: 假如有两个或两个以上的站点有数据要发送,冲突就不可避免。
非坚持指的是对于监听到信道忙之后就不继续监听。
思想: 如果一个主机要发送消息,那么他先监听信道。如果信道空闲则直接传输,不必等待;如果信道忙则等待一个随机的时间之后再进行监听。
优点: 采用随机的重发延迟时间可以减少冲突发生的可能性。
缺点: 可能存在大家都在延迟等待过程中,使得媒体仍可能处于空闲状态,媒体使用率降低。
P-坚持指的是对于监听信道空闲的处理。
思想: 如果一个主机要发送消息,那么他先监听信道。如果信道空闲则以 p 概率直接传输,概率 1-p 等待带下一个时间片(时间槽)再传输;如果信道忙则等待一个随机的时间之后再进行监听。
优点: 既能像非坚持算法那样减少冲突,又能像1-坚持算法那样减少媒体的空闲时间。
缺点: 发生冲突后还是要坚持把数据帧发送完,造成了浪费。
CD: 碰撞检测(冲突检测),边发送边监听,适配器边发送数据边监测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。(半双工网络)
帧的传输时延至少要两倍于信号在总线中的传播时延。
以太网规定最短帧长为64B,凡是长度小于64B的都是由于冲突而异常终止的无效帧。
使用于无线局域网中,与CSMA/CD使用场景不同。
既要不产生冲突,又要发送时占全部带宽。
主结点轮流邀请从属结点发送数据。
存在的问题:
应用于令牌环网(物理上星型拓扑结构,逻辑上环形拓扑结构)。
采用令牌传送方式的网络常用于负载较重、通信量较大的网络中。
令牌: 一个特殊格式的MAC(介质访问控制)控制帧,不包含任何信息。控制信道的使用,确保同一时刻只有一个结点独占信道。
每个结点都可以在一定的时间内(令牌持有时间)获得发送数据的权利,并不是无限制地持有令牌。
存在的问题:
以太网是基带总线局域网规范,是当今现有局域网采用的最通用的通信协议标准。以太网使用CSMA/CD(载波监听多路 访问及冲突检测)技术。
以太网在局域网各种技术中占统治性地位的原因:
以太网的两个标准(满足一个就是以太网):
无连接:发送方和接收方之间发送数据之前不用事先建立连接。
不可靠:不对发送方的数据帧编号,接收方向发送方进行确认,差错帧直接丢弃,差错纠正由高层负责。
以太网只实现无差错接收,不实现可靠传输。
传输介质:
拓扑结构:
使用集线器的以太网在逻辑上仍是一个总线网,各站共享逻辑上的总线,使用的还是CSMA/CD协议。
改进后以太网拓扑:逻辑上总线型,物理上星型。
10BASE-T是传送基带信号(数字信号)的双绞线以太网,T表示采用双绞线,现10BASE-T采用的是无屏蔽双绞线(UTP),传输速率是10Mb/s。
计算机与外界有局域网的连接是通过通信适配器的。
在局域网中,硬件地址又称为物理地址,或MAC地址(全球唯一)。(实际上是标识符)
MAC地址:每个适配器有一个全球唯一的48位二进制地址,前24位代表厂家(由IEEE规定),后24位厂家自己指定。常用12个十六进制数表示。
只支持全双工链路。
点对点协议PPP是目前使用最广泛的数据链路层协议,用于使用拨号电话接入因特网时一般都使用PPP协议。
只支持全双工链路。
高级数据链路控制(HDLC),是一个在同步网上传输数据、面向比特的数据链路层协议。
数据报文可透明传输,用于实现透明传输的“0比特插入法”易于硬件实现。
所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重份,传输可靠性高。
数据链路层扩展以太网
网桥根据MAC帧的目的地址对帧进行转发和过滤。当网桥收到一个帧时,并不向所有接口转发此帧,而是先检查此帧的目的MAC地址,然后再确定该帧转发到哪一个接口,或者是把它丢弃(即过滤)。
优点:
透明网桥:“透明”指以太网上的站点并不知道所发送的帧经过哪几个网桥,是一种即插即用设备——自学习算法。
源路由网桥:在发送帧时,把详细的最佳路由信息(路由最少/时间最短)放在帧的首部中。
方法:源站以广播方式向欲通信的目的地发送一个发现帧。