以太网帧格式
以太网的帧封装了三个字段
常用的以太网MAC帧格式有两种标准,一种是EthernetV2标准(即以太网V2标准),另一种是IEEE的802.3标准。使用得最多的是以太网V2的MAC帧格式。
以太网的帧有三个字段,也就是CSMACD这个协议规定了封装的内容,目标MAC地址和源MAC地址,还有一个字段是协议字段来指明里面是啥,比如ipv4。
以太网最大传输单元是1500个字节,从网络层来的数据包不能超过1500个字节,如果超了就分为多个包,将数据包分片。
以太网的帧是没有结束定界符,用的是曼切斯特编码,如果没有数据了就没有电压了,接收端在接收的时候,发现后面没有跳变电压了,那就代表帧结束了。
当数据字段的长度小于46字节时,数据链路层就会在数据字段的后面加入一个整数字节的填充字段,以保证以太网的MAC帧长不小于64字节,接收端还必须能够将添加的字节去掉。
IEEE802.3标准规定凡出现下列情况之一的即为无效的MAC帧: 帧的长度不是整数个字节。 用收到的帧检验序列FCS查出有差错。 收到的帧的MAC数据字段的长度不在46-1500字节之间。考虑到MAC帧首部和尾部的长度共有18字节,可以得出有效的MAC帧长度为64-1518字节之间。 对于检查出的无效MAC帧就简单地丢弃。以太网不负责重传丢弃的帧。