数据链路层帧及其字段
数据链路层帧
帧是数据链路层中通信的基本单元。数据链路层接收来自网络层的报文并将其封装成帧。如果帧的大小过大,则可以将报文分成多个小帧。在接收端,数据链路层从硬件接收信号并将其组装成帧。
数据链路层帧的字段
数据链路层帧包含以下部分
帧头:包含帧的源地址和目标地址以及控制字节。
有效载荷字段:包含要传递的消息。
帧尾:包含错误检测和纠错位。也称为帧校验序列 (FCS)。
标志:帧的两端各有一个标志,分别标记帧的开始和结束。
帧头
帧头包含目标地址、源地址和三个控制字段kind、seq和ack,分别用于以下目的
kind:该字段指示帧是数据帧还是用于控制功能,例如错误和流量控制或链路管理等。
seq:包含帧的序列号,用于重新排列乱序的帧并由接收方发送确认。
ack:包含某个帧的确认号,尤其是在使用捎带确认时。
特定数据链路层帧
数据链路层帧的结构可以根据使用的协议类型进行专门化。让我们研究两种协议中使用的帧结构:点对点协议 (PPP) 和高级数据链路控制 (HDLC)。
点对点协议
点对点协议 (PPP) 是一种数据链路层的通信协议,用于在两个直接连接(点对点)的计算机之间传输多协议数据。PPP 帧的字段如下
标志:1 字节,位模式为 01111110。
地址:1 字节,在广播情况下设置为 11111111。
控制:1 字节,设置为常数值 11000000。
协议:1 或 2 字节,定义有效载荷字段中包含的数据类型。
有效载荷:承载来自网络层的数据。有效载荷字段的最大长度为 1500 字节。
FCS:2 字节或 4 字节帧校验序列,用于错误检测。使用的标准代码为 CRC(循环冗余校验)。
高级数据链路控制
高级数据链路控制 (HDLC) 是一组数据链路层的通信协议,用于在网络点或节点之间传输数据。HDLC 帧的字段如下
标志:8 位序列,位模式为 01111110。
地址:包含接收方的地址。地址字段可以从 1 字节到多个字节。
控制:1 或 2 字节,包含流控制和错误控制信息。
有效载荷:承载来自网络层的数据。其长度可能因网络而异。
FCS:2 字节或 4 字节帧校验序列,用于错误检测。使用的标准代码为 CRC(循环冗余校验)