Я тестировал пропускную способность между двумя устройствами, подключенными к одному маршрутизатору, один с локальной сетью 100 Мбит / с, другой с Wi-Fi 54 Мбит / с.
Вот интересная часть:
- используя
nc
, я получаю 2,63 МБ / с при отправке из А в В (измеряется с помощьюpv -r|nc ipB
) - используя
iperf
, я получаю 23 МБ / с, что довольно хорошо.
Что может быть не так с nc
?
ОС Ubuntu 11.04 для обоих.
Ответы:
Масштаб звучит примерно так: NetCat не поддерживает TCP Windowing. Если вы выполните tcpdump для интерфейса во время выполнения двух тестов, я думаю, вы увидите этот шаблон для NC:
И этот шаблон для IPerf:
Используя оконные сегменты TCP, вы можете получить намного более высокую пропускную способность, поскольку вам не нужно ждать подтверждения после каждого пакета, только после каждого сегмента.
источник
dd/netcat
это сообщает о более низкой пропускной способности по сравнению сiperf
.dd/netcat
отчет о 3 Гбит / с, тогда какiperf
сообщает 9 Гбит / с.Это не так
netcat
. Сiperf
я получаюС
nc -l -p 1852 > /dev/null
иcat /dev/zero | pv -r | nc 192.168.1.200 1852
я получаю(Колеблется между 30 и 60.)
Какие данные вы кормите
netcat
?источник
То, что ваша беспроводная карта способна подключаться со скоростью 54 Мбит / с, не означает, что вы получите такую пропускную способность. В частности, похоже, что у вас есть 802.11g, который имеет пятку Achilies . Пока ** каждый * беспроводное устройство он разговаривает также г он будет идти быстро, но как только еще один прибор , который только б скорость способна, она должна использовать наименьший общий знаменатель , чтобы говорить со всеми устройствами.
Вы можете попробовать открыть терминал на машине с беспроводной связью и работающей
iwconfig
. Найдите поле Bit Rate = и посмотрите, на какой скорости вы на самом деле подключены.источник
Остерегайтесь единиц Iperf. Это распространенная ошибка: iperf часто отображается в Мбит / с вместо Мбайт / с.
источник