3.1数据链路层概述
● 数据链路层在网络体系结构中的地位
● 使用点对点信道的数据链路层
三个重要问题:封装成帧,差错检测,可靠传输;
● 使用广播信道的数据链路层
共享式以太网的媒体接入控制协议CSMA/CD;
802.11局域网的媒体接入控制协议CSMA/CA;
● 数据链路层的互联设备
网桥和交换机的工作原理;
集线器和交换机的区别;
3.2封装成帧
● 分装成帧是指数据链路层给上层交付的协议数据单元添加帧头和帧尾使之成为帧。
帧头和帧尾包含重要控制信息;
帧头和帧尾作用之一就是帧定界。
● 透明传输是指数据链路层对上层交付的传输数据单元没有任何限制,就好像数据链路层不存在一样。
面向字节的物理链路使用字节填充的方法实现透明传输。
面向比特的物理链路使用比特填充的方法实现透明传输。
● 为了提高帧的传输效率,应当使帧的数据部分的长度尽可能大些。
● 考察到差错控制等多种因素,每一种数据链路层协议都规定了帧的数据部分的长度上限,即最大传输单元MTU。
3.3差错检测
● 检错码只能检测出帧在传输过程中出现了差错,但并不能定位错误,因此无法纠正错误。
● 要想纠正传输中的差错,可以使用冗余信息更多的纠错码进行前向纠错。但纠错码的开销 比较大,在计算机网络中较少使用。
● 循环冗余校验CRC有很好的检错能力(漏检率非常低),虽然计算比较复杂,但非常易于用硬件实现,因此被广泛应用于数据链路层。
● 在计算机网络中通常采用检错重传方式来纠正传输中的差错, 或者仅仅是丢弃检测到差错的帧,这取决于数据链路层向其上层提供的是可靠传输服务还是不可靠传输服务。
3.4可靠传输的基本概念
● 使用差错检测技术(例如循环冗余校验CRC),接收方的数据链路层就可检测出帧在传输过程中是否产生了误码(比特错误)。
● 数据链路层向上层提供的服务类型
不可靠传输服务:仅仅丢弃有误码的帧,其他什么也不做;
可靠传输服务:想办法实现发送端发送什么,接收端就收到什么。
● 一般情况下,有线链路的误码率比较低,为了减小开销,并不要求数据链路层向上提供可靠传输服务。即使出现了误码,可靠传输的问题由其上层处理。
● 无线链路易受干扰,误码率比较高,因此要求数据链路层必须向上层提供可靠传输服务。
● 比特差错只是传输差错中的一种。
● 从整个计算机网络体系结构来看,传输差错还包括分组丢失、分组失序以及分组重复。
● 分组丢失、分组失序以及分组重复这些传输差错,一般不会出现在数据链路层,而会出现在其上层。
● 可靠传输服务并不仅局限于数据链路层,其他各层均可选择实现可靠传输。
● 可靠传输的实现比较复杂,开销也比较大,是否使用可靠传输取决于应用需求。
3.5点对点协议PPP
● PPP协议为在点对点链路传输各种协议数据报提供了一个标准方法,主要由以下三部分构成:
对各种协议数据报的封装方法(封装成帧);
链路控制协议LCP(用于建立,配置以及测试数据链路的连接);
一套网络控制协议NCPs(其中的每一个协议支持不同的网络层协议);
● PPP帧的透明传输
面向字节的异步链路使用字节填充法(插入转义字符);
面相比特的同步链路使用比特填充法(零比特填充);
● PPP协议的工作状态