当我使用'tcpreplay‘向我的交换机发送数据包时,我发现数据包的顺序是错误的。例如,使用tcpreplay -i eth1 test.pcap,我得到:
我发送了类似**[1,2,3,4,5,……]**的数据包,但交换机收到了**[1,3,4,2,5,……]**。
这个问题看起来眼熟吗?你是怎么解决这个问题的?
发布于 2020-01-18 03:18:28
当您说交换机接收到不同的数据包顺序时-您如何确定是这种情况?我之所以这样问,是因为如果您正在嗅探交换机端口,这似乎是一种有效的检查方法,但如果您正在使用SPAN端口,那么是的,根据我的经验,交换机可以对帧进行重新排序,因此我并不感到惊讶。
当您在tcpreplay机器上运行tcpdump时,它显示发送的数据包的顺序是什么?另外,在这两者之间有没有另外一个开关?因为许多交换机使用可以对帧进行重新排序的“存储并转发”方法(这也是SPAN端口倾向于重新排序的原因)。
最后,tcpreplay总是按顺序向内核/NIC驱动程序/NIC发送数据包,因为它会按顺序处理pcap文件。如果您的计算机实际上正在无序发送帧,则这是在内核、NIC驱动程序或NIC硬件/固件中发生的。
https://stackoverflow.com/questions/59775735
复制相似问题