Назад | Перейти на главную страницу

Низкая скорость сети с небольшими пакетами

Использование iperf3 для тестирования сети с --length 1000 --no-delay:

iperf3 --interval 1 --time 3 --no-delay --length 1000 --parallel 100 --client 10.0.0.3

Результат:

[SUM]   0.00-3.00   sec   835 MBytes  2.33 Gbits/sec   13             sender
[SUM]   0.00-3.01   sec   835 MBytes  2.33 Gbits/sec                  receiver

С участием --length 1 --no-delay:

iperf3 --interval 1 --time 3 --no-delay --length 1 --parallel 100 --client 10.0.0.3

Результат:

[SUM]   0.00-3.00   sec   751 KBytes  2.05 Mbits/sec    5             sender
[SUM]   0.00-3.02   sec   751 KBytes  2.03 Mbits/sec                  receiver

-> Я получаю 2 Мбит / сек вместо 2 Гбит / сек.

Кажется, что я достиг некоторого аппаратного или программного ограничения, где-то не позволяет небольшим пакетам достигать более высокой пропускной способности

1) Что это может быть за предел?
2) Как это обнаружить? (в unix есть ли команда для проверки?)
3) Есть ли способ увеличить этот лимит?

ОБНОВИТЬ:

Посчитаем количество пакетов в секунду:
Для полезной нагрузки 1000B: PPS = 2,33 * 1024 * 1024 * 1024/8/1000 = 313K
Для полезной нагрузки 1B: PPS = 2,03 * 1024 * 1024/8/1 = 266K

Разве мы не должны ожидать большего количества пакетов при меньшей полезной нагрузке?