web-dev-qa-db-ja.com

tcpreplay速度を指定する方法

Tcpreplay速度を指定しようとしていますが、それができません。これが私のテストの詳細です。

$ tcpreplay -V tcpreplayバージョン:3.4.4(ビルド2450)

1)$ tcpreplay -i%0 -p 100 -L 500 _udp_only.pcap実際:5.05秒で送信された500パケット(42247バイト)定格:8365.7 bps、0.06 Mbps、99.01 pps s

2)$ tcpreplay -i%0 -p 1000 -L 5000 _udp_only.pcap実際:5.19秒で5000パケット(427710バイト)が送信されました。定格:82410.4 bps、0.63 Mbps、963.39 pps

//これが私が966.00ppsにとどまる問題です

3)$ tcpreplay -i%0 -p 10000 -L 50000 _udp_only.pcap実際:51.76秒で送信された50000パケット(4322559バイト)定格:83511.6 bps、0.64 Mbps、966.00 pps

8600パケットに--mbpsを指定しようとすると同じ問題が発生します各パケットに平均86バイト

-M0.086 -L 860 ---->定格:10812.9 bps、0.08 Mbps、127.22 pps

-M0.86 -L 860 ---->定格:83062.5 bps、0.63 Mbps、977.27 pps

-M0.86 -L 8600 ---->定格:82554.9 bps、0.63 Mbps、965.21 pps

なぜ、どのように速度を指定できますか?

私はOSwindows7を使用しています

1

いくつかのコメント:

  1. TcpreplayでのWindowsのサポートは、ほとんどベータ品質です。高精度のタイミングは非常にOSとハードウェアに固有であり、Windowsのテストと開発は最小限です。 LinuxまたはOSXでは運が良くなります。

  2. 小さなパケット+-mbpsオプション(-M)の使用は、正確なパケットタイミングにとってほとんど最悪のシナリオです。 -Mを使用すると、遅延を動的に計算するためにtcpreplayが必要になり(CPUに負荷がかかる)、パケットが小さいと、パケットの送信における小さな不正確さでさえ、大きいパケットと比較してはるかに悪く見えます。

  3. 「-M0.086-L860 ---->定格:10812.9 bps、0.08 Mbps、127.22 pps」の実行は、かなり近いです。 Tcpreplayは2つの有効数字のみを出力するため、0.086の0.08は予想どおり「近い」です。

2
Aaron Turner