以太网最大帧和最小帧、MTU
来源:互联网 发布:台服魔兽网络代理 编辑:程序博客网 时间:2024/04/30 09:03
按照上述,最大帧应该是1526字节,但是实际上我们抓包得到的最大帧是1514字节,为什么不是1526字节呢?原因是当数据帧到达网卡时,在物理层上网卡要先去掉前导同步码和帧开始定界符,然后对帧进行CRC检验,如果帧校验和错,就丢弃此帧。如果校验和正确,就判断帧的目的硬件地址是否符合自己的接收条件(目的地址是自己的物理硬件地址、广播地址、可接收的多播硬件地址等),如果符合,就将帧交“设备驱动程序”做进一步处理。这时我们的抓包软件才能抓到数据,因此,抓包软件抓到的是去掉前导同步码、帧开始分界符、FCS之外的数据,其最大值是6+6+2+1500=1514。
以太网规定,以太网帧数据域部分最小为46字节,也就是以太网帧最小是6+6+2+46+4=64。除去4个字节的FCS,因此,抓包时就是60字节。当数据字段的长度小于46字节时,MAC子层就会在数据字段的后面填充以满足数据帧长不小于64字节。由于填充数据是由MAC子层负责,也就是设备驱动程序。不同的抓包程序和设备驱动程序所处的优先层次可能不同,抓包程序的优先级可能比设备驱动程序更高,也就是说,我们的抓包程序可能在设备驱动程序还没有填充不到64字节的帧的时候,抓包程序已经捕获了数据。因此不同的抓包工具抓到的数据帧的大小可能不同。下列是本人分别用wireshark和sniffer抓包的结果,对于TCP 的ACK确认帧的大小一个是54字节,一个是60字节,wireshark抓取时没有填充数据段,sniffer抓取时有填充数据段。
wireshark抓包结果,帧是54字节,帧数据部分没有填充数据段
sniffer抓包结果,帧是60字节,帧数据部分后有6字节的填充数据
查看网络接口MTU的方法:
WINDOWS下,在命令提示符下输入netstat -e -v
FreeBSD下输入netstat -i
常见网络的MTU(RFC1191):
Plateau MTU Comments Reference------ --- -------- ---------
65535 Official maximum MTU RFC 791
65535 Hyperchannel RFC 1044
65535
32000 Just in case
17914 16Mb IBM Token Ring ref. [6]
17914
8166 IEEE 802.4 RFC 1042
8166
4464 IEEE 802.5 (4Mb max) RFC 1042
4352 FDDI (Revised) RFC 1188
4352 (1%)
2048 Wideband Network RFC 907
2002 IEEE 802.5 (4Mb recommended) RFC 1042
2002 (2%)
1536 Exp. Ethernet Nets RFC 895
1500 Ethernet Networks RFC 894
1500 Point-to-Point (default) RFC 1134
1492 IEEE 802.3 RFC 1042
1492 (3%)
1006 SLIP RFC 1055
1006 ARPANET BBN 1822
1006
576 X.25 Networks RFC 877
544 DEC IP Portal ref. [10]
512 NETBIOS RFC 1088
508 IEEE 802/Source-Rt Bridge RFC 1042
508 ARCNET RFC 1051
508 (13%)
296 Point-to-Point (low delay) RFC 1144
296
68 Official minimum MTU RFC 791
- 以太网最大帧和最小帧、MTU
- 以太网最大帧和最小帧、MTU
- 以太网最大帧和最小帧、MTU
- 以太网最大帧和最小帧、MTU
- (转载)以太网最大帧和最小帧、MTU .
- 以太网原理 之 最大帧长和最小帧长
- 以太网最大传输单元MTU
- 在传统以太网中,为什么要有最小帧长度和最大帧长度的限制?
- 以太网帧最小帧长与最大帧长
- 以太网帧最小帧长与最大帧长
- 以太网原理 最大帧长 最小帧长
- 以太网原理 最大帧长 最小帧长
- 以太网数据帧(802.3)最大与最小长度
- [计算机网络] 以太网数据帧(802.3)最大与最小长度
- 以太网数据帧(802.3)最大与最小长度
- 数据链路层以太网帧格式------理解MTU的定义和最大值(1500字节)
- 各种信令协议的最大帧长和MTU
- MTU与MSS的关系---以太网帧结构
- 如何做好软件工程质量管理
- 如何去写 Android init.rc
- 需求文档编写建议
- Android自动化测试“Adb connection Error:远程主机强迫关闭了一个现有的连接”错误解决方案
- BOOTCLASSPATH
- 以太网最大帧和最小帧、MTU
- Windows 资源管理器的音乐文件星星评级的ID3v2标签
- 职责链模式
- 洗扑克牌 (乱数排序)
- 【Machine Learning实验】梯度下降算法
- SVN下载谷歌上的代码
- vb数组
- 推荐初中级开发者的书籍 – Java 7 并发手册[电子书]
- JAVA学习笔记总结(三):JAVA语法入门