随便抓的包, 为何出现了长度远大于 MTU 的数据包(图片第 2、3 条)

173 天前
 dadovicn

1601 次点击
所在节点    问与答
9 条回复
yyzh
173 天前
去网卡配置里把所有选项都 disable 就行.只要你 cpu 受得了的话
intelmd
173 天前
rso tso 关键词
chuckzhou
173 天前
应该是 rsc 造成的
zhs227
173 天前
本机向网卡发送的是超过 MTU 的,网卡有个计算方式来进行分段到合理的 MTU ,然后发给交换机网络上的是标准的。你从另一端抓包就抓不到这么大的
bfjm
173 天前
应该有两种可能性 1.ip 层分包 2.gso/tso
mintongcn
172 天前
tso 腾讯云服务器已经开始灰度支持
mintongcn
172 天前
TCP Segmentation Offload (TSO)
ugpu
172 天前
GPT:
1. IP 分片重组
在网络通信中,当一个数据包的大小超过了网络接口的 MTU 时,IP 层会将数据包分片( fragmentation )。这些分片在传输过程中被发送到目的地,接收端的 IP 层会重新组装这些分片,恢复成原始的大数据包。抓包工具通常会在显示时将这些分片重新组装成一个完整的包,因此你会看到长度大于 MTU 的包。

2. TCP 流重组
TCP 协议通过流的形式传输数据,并保证数据的有序和可靠传输。TCP 数据包也可能会被分成多个较小的片段在网络中传输。抓包工具可以重组 TCP 流,将多个 TCP 段重新组装成原始的应用层数据,展示完整的 TCP 报文,这些报文可能会远大于单个 MTU 大小。

3. 抓包工具重组
抓包工具如 Wireshark 具有重组功能,可以将分片的 IP 包、TCP 流等协议层的数据重新组装,以便于分析。例如:

Wireshark 可以配置 IP 分片和 TCP 流重组:
IP 分片重组:Edit -> Preferences -> Protocols -> IP ,勾选 Reassemble fragmented IPv4 datagrams 。
TCP 流重组:Edit -> Preferences -> Protocols -> TCP ,勾选 Allow subdissector to reassemble TCP streams 。
tubowen
171 天前
wireshark 抓的还是操作系统层面的包,抓不到网卡发出去的包,网卡自己还会再分片的,网卡的分片是网卡自己做的,cpu 不处理分片,你可以接个交换机再网卡,做端口镜像,看网卡实际发出去的包是咋样的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1053423

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX