пропускная способность tcpreplay на eth0 значительно ниже (iperf подтвержденный) макс.

Я пытаюсь воспроизвести полученные многоадресные пакеты UDP на уровне нескольких сотен из Мбит/с, но этого макси на уровне приблизительно 86 Мбит/с. (По некоторой странной причине, в других случаях в течение дня это последовательно макси на одной десятой того уровня, приблизительно 8,8 Мбит/с)

tcpreplay на eth0

Урожаи только приблизительно 86 Мбит/с:

> tcpreplay -ieth0 --topspeed x.pcap 
sending out eth0 
processing file: x.pcap
Actual: 459424 packets (137973257 bytes) sent in 12.23 seconds.         
Rated: 11281542.0 bps, 86.07 Mbps, 37565.33 pps

iperf на eth0

iperf, с другой стороны, подходит приблизительно к 800 Мбит/с. Обратите внимание, что это верно даже в течение тех времен, когда tcpreplay только уступает о 8.x Мбит/с),

iperf -c 192.168.20.55 -u -T 1 -t 5 -i 1 -b10000M
------------------------------------------------------------
Client connecting to 192.168.20.55, UDP port 5001
Sending 1470 byte datagrams
UDP buffer size:  208 KByte (default)
------------------------------------------------------------
[  3] local 192.168.20.55 port 50238 connected with 192.168.20.55 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 1.0 sec  96.9 MBytes   813 Mbits/sec
[  3]  1.0- 2.0 sec  96.9 MBytes   813 Mbits/sec
[  3]  2.0- 3.0 sec  97.8 MBytes   820 Mbits/sec
[  3]  3.0- 4.0 sec  96.4 MBytes   809 Mbits/sec
[  3]  4.0- 5.0 sec  96.4 MBytes   809 Mbits/sec
[  3]  0.0- 5.0 sec   484 MBytes   812 Mbits/sec
[  3] Sent 345538 datagrams
[  3] Server Report:
[  3]  0.0- 5.0 sec   400 MBytes   671 Mbits/sec   0.071 ms 60212/345537 (17%)
[  3]  0.0- 5.0 sec  1 datagrams received out-of-order

tcpreplay на lo

Только для проверки tcpreplay не ожидает на моем диске:

> tcpreplay -ilo --topspeed x.pcap 
Warning in sendpacket.c:sendpacket_open_pf() line 669:
Unsupported physical layer type 0x0304 on lo.  Maybe it works, maybe it wont.
    See tickets #123/318
sending out lo 
processing file: x.pcap
Actual: 459424 packets (137973257 bytes) sent in 0.56 seconds.
Rated: 246380816.0 bps, 1879.74 Mbps, 820400.00 pps

Что объясняет tcpreplay, являющийся медленным на eth0, и там способ изменить к лучшему это?

2
задан 26 June 2014 в 08:01
2 ответа

Проблема, похоже, не вызвана ни моим ящиком, ни tcpreplay. Тестируя на другой машине, используя следующую настройку

                +-----------+
                | L3 switch |
                +-+----+----+
                  |    |
       +----------+    |
       |               |
 +-----+-----+         |
 | L2 switch |         |
 +-----+-----+         |
       | Cable 1       | Cable 2
   +------------------------+
   |  NIC 1          NIC 2  |
   |                        |
   |         My PC          |
   |                        |
   +------------------------+

, я получаю эти цифры

Cable     Mbs        pps 
--------------------------
     1    8.35    6174.75 
     2  601.07  444444.44 

Я также переключил кабели, чтобы убедиться, что это не сетевая карта, которая работает медленно, и это не так. Я предполагаю: это ошибка коммутатора L2.

0
ответ дан 3 December 2019 в 12:52

Какая версия tcpreplay? Более новые версии быстрее старых. Вы действительно хотите запустить последнюю версию 4.x, которая поддерживает инъекции через NETMAP.

Также, вы уверены, что у вас интерфейс 1 Гбит/с или лучше? Вы подключены к порту коммутатора 100 Мбит/с или по каким-то причинам договорились о 100 Мбит/с? Посмотрите в /var/log/messages или dmesg, чтобы увидеть, как ваш интерфейс обработан.

.
1
ответ дан 3 December 2019 в 12:52

Теги

Похожие вопросы