- 概述
- 三个重要问题
-
- 封装成帧
- 差错检测
- 可靠传输
- 使用广播信道的数据链路层
-
- 数据链路层的互连设备
- 媒体接入
- MAC地址
- 集线器与交换机区别
- 以太网交换机生成树协议STP
概述
- 链路就是从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点。
- 数据链路是指把实现通信协议的硬件和软件加到链路上,就构成了数据链路
数据链路层以帧为单位传输和处理数据。
三个重要问题
封装成帧
指数据链路层给上层交付的协议数据单元添加帧头和帧尾使之成为帧。
帧头和帧尾中包含有重要的控制信息,其作用·之一是帧定界
透明传输是指数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样。
- 对于面向字节的物理链路使用字节填充的方法实现透明传输
- 对于面向比特的物理链路使用比特填充的方法实现透明传输
为了提高帧传输效率,应当使帧的数据部分的长度尽可能大一些。但是设计了最大传输单元为MTU
差错检测
在一段时间内,传输错误的比特占所传输比特总数的比特率称为误码率BER
使用差错检测码来检测数据在传输过程中是否产生了比特差错,是数据链路层所要解决的重要问题之一。
但是检错码只能检测出错误,但是不能定位错误。
-
奇偶校验
在待发送数据后面添加1位奇偶校验位,使整个数据(包括所添加的校验位在内)中的“1”的个数为奇数(奇校验)或偶数(偶校验)
如果有奇数个位发生误码,则奇偶性发生变化,可以检查出误码
如果有偶数个位发生误码,则奇偶性不发生变化,不可以检查出误码
因此其漏检率很高,一般不会采用。 -
循环冗余校验CRC
其漏检率很低,在数据链路层中广泛使用。
收发双方约定好一个生成多项式G(x)
发送方基于待发送的数据和生成多项式计算出差错检测码(冗余码),将其添加到待传输数据后面一起传输。
接收方通过生成多项式来计算收到的数据是否产生了误码。