mac帧
1、介绍
mac帧是工作在数据链路层的数据格式,用于传递网络层的消息。
2、帧格式
最常用的mac帧,是以太网v2的格式
- 前导码,7字节,都是0x55,即0101 0101
- 帧起始,1字节,1010 1011
- 目的mac地址,6字节
- 源mac地址,6字节
- 类型,2字节,表示上一层的协议类型
- ipv4,0800。arp报文也是该类型
- 数据,46~1500字节
- 帧序列检测CRC,4字节,用于检验传输过程中帧的完整性。
- mac帧不能少于64字节,缺少者末尾补00
3、wireshark
在wireshark测试过程中
- 前导码和起始码的8个字节未显示
- 不足mac帧最低64字节要求,即数据部分不足最小46字节,补齐00
- 补全后显示60字节,即crc校验的4个字节接收并作用,但是未显示。且前导码和起始码不包含在64字节要求中
4、CRC校验
用于帧内后续字节差错的循环冗余检验(也称为FCS或帧检验序列)。这个字段只是提供检错功能,并不提供纠错功能。该效验和效验的范围为:目的地址,源地址,类型,数据等字段。CRC效验的生成多项式为:
G(x)=X(32)+X(26)+X(23)+X(22)+X(16)+X(12)+X(11)+X(10)+X(8)+X(7)+X(5)+X(4)+X(2)+X(1)+1