Linux tcpreplay正在发送顺序错误的数据包?

Linux tcpreplay正在发送顺序错误的数据包?,linux,ubuntu,networking,tcpreplay,Linux,Ubuntu,Networking,Tcpreplay,当我使用“tcpreplay”向交换机发送数据包时,我发现数据包出现了故障。例如,使用tcpreplay-i eth1 test.pcap,我得到: 我发送像**[1,2,3,4,5,…]**, 但是开关收到了**[1,3,4,2,5,…]** 这个问题看起来熟悉吗?您是如何解决的?当您说交换机收到了不同的数据包订单时-您如何确定这种情况?我这样问是因为如果你在交换机端口上嗅探,这似乎是一种有效的检查方法,但如果你使用的是SPAN端口,那么是的,根据我的经验,交换机可以重新排序帧,所以我并不感到

当我使用“tcpreplay”向交换机发送数据包时,我发现数据包出现了故障。例如,使用
tcpreplay-i eth1 test.pcap
,我得到:

我发送像
**[1,2,3,4,5,…]**
, 但是开关收到了
**[1,3,4,2,5,…]**


这个问题看起来熟悉吗?您是如何解决的?

当您说交换机收到了不同的数据包订单时-您如何确定这种情况?我这样问是因为如果你在交换机端口上嗅探,这似乎是一种有效的检查方法,但如果你使用的是SPAN端口,那么是的,根据我的经验,交换机可以重新排序帧,所以我并不感到惊讶

在tcpreplay框上运行tcpdump时,它显示发送的数据包的顺序是什么?另外,这两者之间是否还有其他转换?因为许多交换机使用“存储转发”方法,可以对帧进行重新排序(这也是跨端口倾向于重新排序的原因)


最后,tcpreplay总是按顺序向内核/NIC驱动程序/NIC发送数据包,因为它按顺序处理pcap文件。如果您的计算机实际发送的帧顺序不正确,那么这可能发生在内核、NIC驱动程序或NIC硬件/固件中。

当您说交换机收到了不同的数据包顺序时,您如何确定这种情况?我这样问是因为如果你在交换机端口上嗅探,这似乎是一种有效的检查方法,但如果你使用的是SPAN端口,那么是的,根据我的经验,交换机可以重新排序帧,所以我并不感到惊讶

在tcpreplay框上运行tcpdump时,它显示发送的数据包的顺序是什么?另外,这两者之间是否还有其他转换?因为许多交换机使用“存储转发”方法,可以对帧进行重新排序(这也是跨端口倾向于重新排序的原因)


最后,tcpreplay总是按顺序向内核/NIC驱动程序/NIC发送数据包,因为它按顺序处理pcap文件。如果您的计算机实际发送的帧顺序不正确,那么这可能发生在内核、NIC驱动程序或NIC硬件/固件中。

网络有时会重新排序数据包,这是高级协议处理的问题。我的服务器上有一个pcap文件,其中包含大约100000个数据包。我只想使用tcpreplay按顺序从服务器网络端口发送数据包。网络有时会重新排序数据包,这是高级协议处理的事情。我的服务器上有一个pcap文件,其中包含大约100000个数据包。我只想使用tcpreplay按顺序从服务器网络端口发送数据包。好吧,我重播了pcpa以点击,正如我所知,它将直接转发流量,我将pcap从eth1发送到swicth,并从eth2捕获pcap,当我在wireshark中打开pcap文件时,我发现它重新排序。到目前为止,我只找到了一些关于“Tcppreplay时重新排序”的信息,我对它没有确切的了解。因此有两个地方可以更改数据包排序:1。NIC/NIC驱动程序。没有什么规定写入eth1的数据包必须按照发送顺序发送。2.开关重新排列了框架。由于其存储和转发架构,交换机显然不能保证数据包的输入/输出顺序。嗯,我重播了pcpa以点击,正如我所知,它将直接转发流量,我将pcap从eth1发送到swicth,并从eth2捕获pcap,当我在wireshark中打开pcapfile时,我发现它重新排序。到目前为止,我只找到了一些关于“Tcppreplay时重新排序”的信息,我对它没有确切的了解。因此有两个地方可以更改数据包排序:1。NIC/NIC驱动程序。没有什么规定写入eth1的数据包必须按照发送顺序发送。2.开关重新排列了框架。由于其存储和转发架构,交换机明确不保证数据包的输入/输出顺序。