Можно получить RTT в 1–2 мс и при этом иметь очень плохую передачу данных.
ping проверяет только время прохождения ICMP-пакета туда и обратно. Он почти ничего не говорит о том, сколько пакетов реально теряется, насколько забит канал и что происходит с TCP при передаче.
Например, при потере даже небольшого процента TCP-пакетов скорость может резко просесть.
Потерянный сегмент приходится передавать заново, а TCP дополнительно уменьшает congestion window.
В итоге:
RTT = 2 ms
packet loss = 1%
может оказаться намного хуже для TCP, чем:
RTT = 50 ms
packet loss = 0%
Проверять нужно не только задержку:
ping -c 100 <server-ip>
но и реальные потери при передаче:
iperf3 -c <server-ip> -t 30
А на Linux посмотреть retransmissions:
ss -ti
Если в выводе растёт
retrans, проблема уже не в том, что «ping маленький».Низкий RTT показывает, насколько быстро пакет возвращается. Он не показывает, насколько хорошо сеть передаёт поток данных.
N.A.


