Tcpreplay参数和CPU使用率

Tcpreplay参数和CPU使用率,tcp,udp,wireshark,tcpreplay,Tcp,Udp,Wireshark,Tcpreplay,我已经使用Scapy创建了一个UDP文件,我正在使用tcpreplay发送数据包。我面临两个奇怪的问题: 发送的数据包数与(--pps)参数不同。不确定答案是否是() 当我发送更少的数据包时,即--pps=10,当我发送更多的数据包时,CPU负载更高,即--pps=200。我正期待着相反的结果 顺便说一句,我使用的是tcpreplay 3.4.4版。许多——pps问题已在中修复 问题2。最新版本提高了CPU利用率,但您仍然可以看到100%的CPU被报告。实际上,当使用-t或--mbps=0选项时

我已经使用Scapy创建了一个UDP文件,我正在使用tcpreplay发送数据包。我面临两个奇怪的问题:

  • 发送的数据包数与(--pps)参数不同。不确定答案是否是()
  • 当我发送更少的数据包时,即--pps=10,当我发送更多的数据包时,CPU负载更高,即--pps=200。我正期待着相反的结果 顺便说一句,我使用的是tcpreplay 3.4.4版。许多——pps问题已在中修复


    问题2。最新版本提高了CPU利用率,但您仍然可以看到100%的CPU被报告。实际上,当使用-t--mbps=0选项时,CPU利用率过高。在这些情况下,只要TX缓冲区已满,Tcpreplay就会产生发送线程。这将使Tcpreplay成为CPU的调度程序。结果是报告的100%CPU,但CPU上的其他进程仍保持响应。

    Hi@fredk I已将Tcpreplay更新为最新版本,并获得了更好的结果。然而,70000 p/s之后,速度不再准确。你知道为什么吗?发送方的CPU未达到或接近极限。将数据包的平均大小乘以8,然后乘以70000个数据包/秒。它是否超过了您卡的线路费率?在我的实验室里,我可以通过调整--pps,以预期的速率获得完整的10IgE速率。但是一旦链接饱和,增加--pps会使它运行得更快。@fredk我使用的是最新版本
    4.3.2(build git:v4.3.2)
    ,但是当我使用甚至小于等于10的pps时,通过相同的接口ping时,我会丢失数据包。看起来它处理得不太好。我甚至在htop中降低了它的
    nice
    值,但仍然会收到ping数据包丢失。我建议您填写一份文件,以便记录操作系统、使用的确切参数和屏幕擦痕。