Обо мне: C/C++/Linux эксперт. Говорим про разработку, Linux, DevOps, сети и администрирование.
Админ (реклама): @XoDefender
Чат: @linuxcamp_chat
Менеджер: @Spiral_Yuri
Биржа: https://telega.in/c/linuxcamp_tg
РКН: https://clck.ru/3RWA3C
Post #557
6.9K

iperf3: как понять, тормозит канал или сервер
Что делает iperf3
iperf3 даёт реальную пропускную способность сети между двумя машинами. Измеряет не "скорость интернета", а скорость между конкретными хостами. Это лучший способ понять, где bottleneck: у провайдера, в маршруте или в самом сервере.
Быстрый старт
На сервере поднимаем слушатель:
На клиенте запускаем тест:
Вывод покажет фактический throughput, передачу по секундам и retransmits.
TCP или UDP
TCP-тест:
Показывает реальную пропускную способность как для обычных приложений: учитывает RTO, congestion control и потери.
UDP-тест:
Используем, когда нужно понять максимальную теоретическую пропускную способность и jitter. Вывод:
Высокий jitter и потери → проблемы маршрута или перегруз канала.
Пример реальной диагностики
Пользователь жалуется, что сервис долго отвечает. На сервере всё нормально, CPU не загружен. Проверяем TCP:
Видим:
120 повторных отправок это много. Проблема не в приложении, а в канале: пакетная потеря, слабый Wi-Fi, либо провайдер режет TCP-окна. Проверяем UDP:
Подтверждение: канал нестабилен.
Вывод
iperf3 - это честная проверка сети. TCP-тест показывает реальное поведение приложений, UDP-тест раскрывает проблемы: jitter, потери, нестабильность. Когда непонятно, сервер тормозит или канал начинаем именно с iperf3.
LinuxCamp | #utils
Что делает iperf3
iperf3 даёт реальную пропускную способность сети между двумя машинами. Измеряет не "скорость интернета", а скорость между конкретными хостами. Это лучший способ понять, где bottleneck: у провайдера, в маршруте или в самом сервере.
Быстрый старт
На сервере поднимаем слушатель:
iperf3 -s
На клиенте запускаем тест:
iperf3 -c <SERVER_IP>
Вывод покажет фактический throughput, передачу по секундам и retransmits.
TCP или UDP
TCP-тест:
iperf3 -c <IP> -t 10
Показывает реальную пропускную способность как для обычных приложений: учитывает RTO, congestion control и потери.
UDP-тест:
iperf3 -c <IP> -u -b 1G
Используем, когда нужно понять максимальную теоретическую пропускную способность и jitter. Вывод:
UDP Jitter: 1.23 ms
Loss: 2%
Высокий jitter и потери → проблемы маршрута или перегруз канала.
Пример реальной диагностики
Пользователь жалуется, что сервис долго отвечает. На сервере всё нормально, CPU не загружен. Проверяем TCP:
iperf3 -c <SERVER_IP>
Видим:
[ 5] 0.00-10.00 sec 42.0 MBytes 35.2 Mbits/sec 120 retransmits
120 повторных отправок это много. Проблема не в приложении, а в канале: пакетная потеря, слабый Wi-Fi, либо провайдер режет TCP-окна. Проверяем UDP:
iperf3 -c <SERVER_IP> -u -b 300M
Loss: 15% Jitter: 5 ms
Подтверждение: канал нестабилен.
Вывод
iperf3 - это честная проверка сети. TCP-тест показывает реальное поведение приложений, UDP-тест раскрывает проблемы: jitter, потери, нестабильность. Когда непонятно, сервер тормозит или канал начинаем именно с iperf3.
LinuxCamp | #utils
- 👍 46
- 🔥 15
- ❤🔥 4
- ❤ 4


















