以太网帧到底有多大?

以太帧的格式如下所示(图片来源于Wikipedia):通常以太帧的长度指的是从目的地址到冗余校验。在802.3标准里,规定了一个以太帧的数据部分(Payload)的最大长度是1500个字节,这个数也是你经常在网络设备里看到的MTU。在这个限制之下,最长的以太帧包括6字节的目的地址(DMAC)、6字节的源地址(SMAC)、2字节的以太类型(EtherType)、1500字节的数据(Payload)、4字节的校验(FCS),总共是1518字节。在802.1Q中,又定义了以太帧中可选的QTag,位于SMAC和EtherType之间,占4个字节。在这种情况下,一个以太帧如果有QTag,它的最大长度就变成了1522字节。后来人们又觉得一个QTag不够用,在802.1ad又定义了Q in Q,也就是说一个以太帧可以有多个QTag,每增加一个QTag,以太帧的最大长度就增加4个字节。上面说的基本都是十兆/百兆以太网的年代,但到了千兆以太网出现以后,发现如果payload被限制在1500字节,传输效率不够高,所以又提出了Jumbo Frame的概念。在一个Jumbo Frame中,Payload的长度是可以超过1500字节的,通常来说最高可以到9000字节,但并没有一个统一的标准。就目前来看,大部分商用的网络服务提供商都还不支持Jumbo Frame。从上面可以看出,一个以太帧的最大长度不一定是1518字节,根据不同的标准,这个最大长度会变化。看题主的截图应该是用Wireshark抓取TCP/IP包。一个IP数据包的长度是可以超过1500字节的,定义中最大是65535个字节(在IP Header里长度定义占16位)。在数据传输的时候,IP数据包作为Payload部分,网络设备会检查Payload长度有没有超过设备的MTU设置。通常来说,MTU的默认设置是1500字节。如果超过MTU,就进行分片处理,分成多个以太帧传输,每个以太帧的Payload长度不超过MTU,然后到了终端设备再进行重组。题主在Wireshark里看到的抓包应该是已经重组过的,所以会看到有超过1500字节Payload的“以太帧”。其实在传输过程中,以太帧的Payload长度都不会超过所经过网络设备的MTU值

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值