决定packETH的最大数据包生成速度的因素是什么?

时间:2019-08-18 22:37:58

标签: networking network-programming packet

我已经使用packETH有一段时间了,我一直想知道一件事。

当我在Gen-b选项上设置数据包生成速度时,我意识到packETH并没有真正按照设置发送数据包。

我认为当我在虚拟机上使用packETH时,最大速度趋于降低。

即使我将要发送的数据包数设置为:40000000并将每秒的数据包数设置为:4000000,该操作也不会在10秒内完成,相反,我认为packETH会尝试尽快发送数据包,但不能完全达到了该速度,因此决定发送数据包的速度较慢,因此需要更长的时间才能完成操作。

那么,什么决定packETH的最大数据包生成/传输速度?

它会自动调整最大速度,以便接收服务器正确接收所有数据包吗?

非常感谢您。

1 个答案:

答案 0 :(得分:1)

我已经阅读了关于packETH的信息,但没有发现与多线程程序包发件人相关的任何内容,因此应该有问题。您想要的是一个多线程程序包发送器,它可以接收任意数量的程序包并并行发送它们。但首先,让我们关注packETH:

您尝试过哪种配置?

  

在“自动”模式下,您可以选择五个分发模式之一。除了随机模式,您可以通过选择不同的模式看到不同的时间。在随机模式下,生成器试图变得聪明:)。除了计时外,您还可以指定每个流的流量。在手动模式下,您可以手动选择所有参数。

在这里我找到了它:http://packeth.sourceforge.net/packeth/GUI_version.html

关于多线程发件人,我建议使用trafgen,让我们介绍一些功能:

这将帮助您不必担心限额

  

处理许多数据包,然后退出。如果数据包数量为0,则相当于无限个数据包。处理直到被中断。否则,以无符号整数形式给出的数字将限制处理。

这将确保并发

  

指定trafgen将fork(2)关闭的进程数。默认情况下,trafgen将启动与在线CPU一样多的进程,并将它们分别固定到每个CPU。允许值必须在[1,CPUs]间隔之内。