目录
数据链路层定义了在单个链路上如何传输数据。数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的结点传送数据报。
结点:主机、路由器。
链路:网络中两个节点之间的物理通道。链路的传输介质主要有双绞线、光纤和微波。分为有线链路,无线链路。
数据链路:网络中两个节点之间的逻辑通道,把实现控制数据传输协议的硬件软件加到链路上就构造成数据链路。
帧:链路层的协议数据单元,封装网络层数据报。
链路层的功能
功能概述
数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络来的数据可靠地传输到相邻节点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。
主要功能
- 为网络层提供服务。无确认无连接服务,有确认无连接服务,有确认面向连接的服务。
- 链路管理,即建立连接、维持连接、释放连接(用于面向连接的服务)。
- 组帧。
- 流量控制。
- 差错控制。
封装成帧和透明传输(组帧)
封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接受端在收到物理层上交的比特流后就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。
首部和尾部包含很多的控制信息,他们的一个重要作用:帧定界(确定帧的界限)。
帧同步:接收方应当能从收到的比特流中区分出帧的起始和终止地址。
透明传输:是指不管所传的数据是什么样的比特组合,都应当能够在链路上传送。说白了就跟转义差不多。透明传输中使用的一些方法:
- 字符转义法:帧首部使用一个计数字段(第一个字节)来标明帧内字符数。
- 字符填充法:在数据部分中出现的帧开始和结束符之前添加转义字符,接受时删除转义字符。
- 零比特填充法:在发送端遇到连续五个1就填入一个0,接收端执行相反的操作。
- 违规编码法:在曼彻斯特编码中使用“高-高”、“低-低”来界定帧的起始和终止。
差错控制
全局性差错:由于线路本身电气特性所产生的随机噪声,是信道固有的,是随机存在的。解决办法为提高信噪比。
局部性差错:外界特定短暂原因造成的冲击噪声,是才生差错的主要原因。解决办法:利用编码技术。
位错:比特位出错。
帧错:帧的丢失、重复、失序。
如何进行差错控制:检错编码(奇偶校验码、循环冗余码CRC)、纠错编码(海明码)
流量控制与可靠传输机制
可靠传输:发送端发啥接收端收啥。
流量控制:控制发送速率,使接受方有足够的空间来接受每一帧。
滑动窗口机制用于解决流量控制及可靠传输问题。滑动窗口有以下三种方式,在数据链路成华东窗口大小固定。
停止-等待协议:每发完一个分组就停止发送,等待对方确认,在收到确认后再发送下一个分组。但是信道利用率低。
选择重传协议(SR):
对数据帧逐一确认,收到一个确认一个。
只重传出错的帧。
接收方有缓存。
窗口最大位帧编号个数的1/2。
后退N帧协议(GBN):
发送窗口有多个,接收窗口有一个。如果接受到所需求的帧之外的其他帧,就返回一个最近确认的ACK,并不是每次都返回ACK。发送方收到ACK后重新发送确认帧之后的所有帧。
发送方窗口最大位帧序列号个数的一半。
介质访问控制
静态划分信道
- 频分多路复用
- 时分多路复用
- 统计时分多路复用
- 波分多路复用
- 码分多路复用
动态分配信道
轮询访问介质访问控制-令牌传递协议
轮询协议:主结点轮流邀请从属节点发送数据。
随机访问介质访问控制
- ALOHA协议
- 纯ALOHA协议
- 时隙ALOHA协议
- CSMA协议
- CSMA/CD(载波监听多点接入/碰撞检测)协议
- CSMA/CA协议
MAC子层与LLC子层
LLC负责识别网络层的协议,然后对它们进行封装。LLC报头告诉数据链路层一旦帧被接收时,应当对数据包做何处理。为网络层提供服务:无确认无连接、面向连接、带确认无连接、高速传送。
MAC子层的主要功能包括数据帧的封装和卸装,帧的寻址和识别,帧的接收与发送,链路的管理,帧的差错控制等。MAC子层的存在屏蔽了不同物理链路种类的差异性。
以太网
以太网(Ethernet)指的是由Xerox等公司开发的基带总线局域网规范,是当今现有局域网采用的最通用的通信协议标准。以太网使用CSMA/CD技术。
以太网的两个标准
DIX Ethernet V2和IEEE802.3
10BASE-T以太网:最长用的以太网。T表示双绞线,BASE表示传送基带信号。传输速率为10Mb/s。物理上采用星型拓扑,逻辑上是总线型,每段双绞线最长是100m。
以太网的MAC帧
无线局域网
IEEE 802.11是无线局域网的通用标准,它是由IEEE所定义的无线网络通信标准。
PPP协议和HDLC协议
PPP协议
点对点协议,面向字节,只应用于全双工信道。PPP协议并不是可靠传输协议。特点如下:
- 简单:对于链路层的帧无需纠错,无需序号无需流量控制。
- 封装成帧:帧定界符。
- 透明传输
- 多种网络层协议:封装的网络IP数据报可以采用多种协议。
- 多种类型链路:支持串行/并行,同步/异步,电/光等
- 差错检测:遇错丢弃
- 检测连接状态:链路是否正常工作。
- 最大传送单元:不超过1500字节(MTU)。
- 网络层地址协商:知道通信双方的网络层地址
- 数据压缩协商
PPP协议不需要纠错,不需要流量控制,不需要对帧编号,不支持多点线路。同时PPP协议是广域网中的协议。
PPP协议的三个组成部分
- 一个将IP数据报封装到串行链路(同步串行/异步串行)的方法。
- 链路控制协议LCP:建立并维护数据链路连接。具有身份认证的功能。
- 网络控制协议NCP:PPP可支持多种网络层协议,每一个不同的网络层协议都需要一个相应的NCP来配置,为网络层协议建立和配置连接。
PPP协议的帧格式
HDLC协议
是一个在同步网上传输面向比特的数据链路层协议,由ISO根据IBM公司的协议拓展而成的。采用0比特插入法实现透明传输。适用于全双工通信,采用CRC检验,对信息帧进行编号,可防止漏收或重份,传输可靠性高。
信息帧(I):控制字段第一位为0,用来传输数据信息,或使用捎带技术对数据进行确认。
监督帧(S):控制字段为10,用于流量控制和差错控制、执行对信息帧的确认、请求重发和请求 暂停发送。
无编号帧(U):控制字段为11,用于提供对链路的建立、拆除等多种控制功能。
网桥和交换机
网桥和交换机都是在数据链路层对以太网进行拓展的方式。
网桥根据MAC帧的目的地址对帧进行转发和过滤。当网桥收到一个帧时,并不是向所有接口转发此帧,而是线检查此帧的MAC地址,然后再确定将该帧转发到哪一个接口,或者是把它丢弃(即过滤)。
网桥的优点
- 过滤通信量、增大吞吐量。
- 扩大物理范围。
- 提高可靠性。
- 可互联不同物理层、不同MAC子层和不同速率的以太网。
网桥的分类
透明网桥:“透明”是指以太网上的站点并不知道所发送的帧将经过哪几个网桥,该网桥通过自学习算法逐步完善其转发表中的地址,是一种即插即用的设备。
源路由网桥:源站以广播的方式发送发现帧,通过发现帧找到最优(路由最少/时间最短)的路径,源站在发送帧时把详细的路由信息放到帧的首部。
以太网交换机
以太网交换机分为以下两种:
直通式交换机:查完目的地址就转发,延迟小,可靠性低,无法支持具有不同速率的端口的交换。
存储转发式交换机:将帧放入高速缓存,并检查是否正确,正确就转发,错误则丢弃。延迟大可靠 性高,可以支持具有不同速率的端口的交换。