数据链路层
- 数据包只在数据链路层沿水平方向传送
- 链路:就是从一个节点到相邻节点的一段物理线路,而中间没有任何其他的交换节点。
- 数据链路:是指把实现通信协议的硬件和软件加到链路上,就构成了数据链路。
- 数据链路层以帧为单位传输和处理数据
封装成帧
差错检测
基于待发送的数据和检错算法计算出检错码,并将其封装在帧尾。
接收方主机通过检错码和检错算法就可判断帧在传输过程中是否出现了误码。
可靠传输
使用广播信道的数据链路层(共享式局域网)
编址问题
A向C发送数据,C如何知道这是发给它的,目的地址,源地址。
当B,C同时发送数据时,使用广播信道传输可能发生碰撞。图中为载波监听多点接入/碰撞检测。
无线局域网为载波监听多点接入/碰撞避免。
封装成帧
- 帧头和帧尾的作用之一就是帧定界。例如ppp的前后两个标志
- 并不是每一种数据链路层协议中都包含帧定界标志。例如以太网V2的MAC帧
- 前同步码使接收方的时钟同步
- 帧开始定界符表明其后面紧跟着的就是MAC帧
透明传输
指的是数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样。
- 对于面向字节的物理链路使用字节填充(或称字符填充)的方法实现透明传输。
- 对于面向比特的物理链路使用比特填充的方法实现透明传输。
- 每出现一个帧界符就在其前面加一个转义字符
- ESC并不是指E.S.C这三个字母,其十进制值为27
- 在发送前用零比特填充法进行扫描:每5个连续的比特1后面就插入1个比特0,这样就确保帧定界在整个帧中的唯一性,也就可以实现透明传输
为了提高帧的传输效率,应当使帧的数据部分的长度尽可能大些。
考虑到查错控制等因素,每种数据链路层协议都规定了帧的数据部分的长度上限,即最大传送单元MTU。
差错检测
帧检验序列FCS字段其作用:让接收方的数据链路层检查帧在传输过程中是否产生了误码
奇偶校验
循环冗余校验CRC
- 检错码只能检测出帧在传输过程中出现了差错,但并不能定位错误,因此无法纠正错误。
- 要想纠正传输中的差错,可以使用冗余信息更多的纠错码进行前向纠错。但纠错码的开销比较大,在计算机网络中较少使用。
- 循环冗余校验CRC有很好的漏检能力,虽然计算比较复杂,但非常易于用硬件实现,因此被广泛应用于数据链路层。
可靠传输
基本概念
- 分组其实就是帧
停止-等待协议SW(自动请求重传ARQ)
ACK:确认分组
NAK:否认分组
发送方收到后接收方的确认与否认后才会进行下一个数据分组的发送,实现可靠传输
信道利用率
回退N帧协议GBN
- 回退N帧协议在流水线传输的基础上利用发送窗口来限制发送方连续发送数据分组的数量,是一种连续ARQ协议。
- 在协议的工作过程中发送窗口和接收窗口不断向前滑动,因为这类协议又称为滑动窗口协议。
- 由于回退N帧协议的特性,当通信线路质量不好时,其信道利用率并不比停止等待协议高。
选择重传协议SR
为了进一步提高性能,可设法只重传出现误码的数据分组。因此,接收窗口的尺寸(Wr)不应再等于1(而应大于1),以便接收方先收下失序到达但无误码并且序号落在接收窗口内的那些数据分组,等到所缺分组收齐后再一并送交上层。这就是选择重传协议。
点对点协议PPP
透明传输
字节填充法
比特填充法
差错检测
工作状态
媒体接入控制MAC
- 共享信道要着重考虑的一个问题就是如何协调多个发送和接收站点对一个共享传输媒体的占用,即媒体接入控制MAC
静态划分信道
频分多址、时分多址、码分多址
信道复用
频分复用FDM
时分复用TDM
波分复用WDM
码分复用CDM
动态接入控制
受控接入
随机接入
CSMA/CD
争用期
CSMA/CA
工作原理
退避算法
信道预约和虚拟载波监听
MAC地址、IP地址、ARP协议
MAC地址
单播MAC地址
广播MAC地址
IP地址
ARP协议
不可以,ARP协议只能在一段链路或一个网络上使用,而不能跨网络使用
集线器与交换机的区别
竞争总线并产生碰撞
以太网交换机自学习和转发帧的流程
以太网交换机的生成树协议STP
虚拟局域网VLAN
IEEE 802.1Q帧
交换机的端口类型
Access端口
Trunk端口
Hybrid端口
A给B发,B可以识别普通以太网的MAC帧,不能识别802.1Q帧