Вопрос или проблема
Я пытаюсь выяснить, почему скорость загрузки с моего сервера недавно стала очень низкой. Мой сервер размещен в Массачусетсе (через Verizon), а клиент находится в штате Вашингтон (через Google Fiber Webpass). По какой-то причине направление WA -> MA имеет довольно высокую скорость (300 Мбит/с), в то время как в обратном направлении скорость очень низкая (7 Мбит/с). Сервер должен иметь около 750 Мбит/с симметрично, однако speedtest-cli показывает фактически 750 вниз и 150 вверх. У моего клиента 1 Гбит/с симметрично, и speedtest-cli это подтверждает. Таким образом, по сути, я пытаюсь понять, почему я не получаю 150 Мбит/с от моего сервера к клиенту (и оттуда я могу попытаться выяснить, что вызывает падение с 750 до 150 на стороне сервера).
Вот результаты iperf прямого и обратного направления, с iperf -s
на сервере в Массачусетсе и моем клиенте в Вашингтоне (ниже команды были выполнены на клиенте в Вашингтоне):
❯ iperf3 -c MA Server
Connecting to host MA Server, port 5201
[ 5] local WA Client port 38142 connected to MA Server port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 16.0 MBytes 135 Mbits/sec 13 3.79 MBytes
[ 5] 1.00-2.00 sec 45.0 MBytes 377 Mbits/sec 0 3.79 MBytes
[ 5] 2.00-3.00 sec 47.5 MBytes 398 Mbits/sec 0 3.79 MBytes
[ 5] 3.00-4.00 sec 46.2 MBytes 388 Mbits/sec 0 3.79 MBytes
[ 5] 4.00-5.00 sec 46.2 MBytes 388 Mbits/sec 0 3.79 MBytes
[ 5] 5.00-6.00 sec 46.2 MBytes 388 Mbits/sec 0 3.79 MBytes
[ 5] 6.00-7.00 sec 46.2 MBytes 388 Mbits/sec 0 3.79 MBytes
[ 5] 7.00-8.00 sec 38.8 MBytes 325 Mbits/sec 4 2.75 MBytes
[ 5] 8.00-9.00 sec 37.5 MBytes 315 Mbits/sec 0 2.88 MBytes
[ 5] 9.00-10.00 sec 40.0 MBytes 336 Mbits/sec 0 2.99 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 410 MBytes 344 Mbits/sec 17 sender
[ 5] 0.00-10.07 sec 409 MBytes 341 Mbits/sec receiver
iperf Done.
❯ iperf3 -c MA Server -R
Connecting to host MA Server, port 5201
Reverse mode, remote host MA Server is sending
[ 5] local WA Client port 54536 connected to MA Server port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 2.48 MBytes 20.8 Mbits/sec
[ 5] 1.00-2.00 sec 1.26 MBytes 10.6 Mbits/sec
[ 5] 2.00-3.00 sec 1.21 MBytes 10.1 Mbits/sec
[ 5] 3.00-4.00 sec 850 KBytes 6.96 Mbits/sec
[ 5] 4.00-5.00 sec 508 KBytes 4.16 Mbits/sec
[ 5] 5.00-6.00 sec 366 KBytes 3.00 Mbits/sec
[ 5] 6.00-7.00 sec 512 KBytes 4.19 Mbits/sec
[ 5] 7.00-8.00 sec 648 KBytes 5.31 Mbits/sec
[ 5] 8.00-9.00 sec 716 KBytes 5.86 Mbits/sec
[ 5] 9.00-10.00 sec 321 KBytes 2.63 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.07 sec 11.4 MBytes 9.48 Mbits/sec 23 sender
[ 5] 0.00-10.00 sec 8.78 MBytes 7.37 Mbits/sec receiver
iperf Done.
❯ iperf3 -s -p 5201
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from MA Server, port 33244
[ 5] local WA Client port 5201 connected to MA Server port 33254
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 1.57 MBytes 13.2 Mbits/sec
[ 5] 1.00-2.00 sec 1.67 MBytes 14.0 Mbits/sec
[ 5] 2.00-3.00 sec 1.43 MBytes 12.0 Mbits/sec
[ 5] 3.00-4.00 sec 1.18 MBytes 9.93 Mbits/sec
[ 5] 4.00-5.00 sec 581 KBytes 4.76 Mbits/sec
[ 5] 5.00-6.00 sec 544 KBytes 4.46 Mbits/sec
[ 5] 6.00-7.00 sec 694 KBytes 5.69 Mbits/sec
[ 5] 7.00-8.00 sec 773 KBytes 6.34 Mbits/sec
[ 5] 8.00-9.00 sec 345 KBytes 2.83 Mbits/sec
[ 5] 9.00-10.00 sec 229 KBytes 1.88 Mbits/sec
[ 5] 10.00-10.08 sec 22.6 KBytes 2.44 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.08 sec 8.97 MBytes 7.47 Mbits/sec receiver
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from MA Server, port 57588
[ 5] local WA Client port 5201 connected to MA Server port 57600
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 24.6 MBytes 207 Mbits/sec 0 7.53 MBytes
[ 5] 1.00-2.00 sec 46.2 MBytes 388 Mbits/sec 0 7.53 MBytes
[ 5] 2.00-3.00 sec 28.8 MBytes 241 Mbits/sec 16 2.62 MBytes
[ 5] 3.00-4.00 sec 37.5 MBytes 315 Mbits/sec 0 2.76 MBytes
[ 5] 4.00-5.00 sec 38.8 MBytes 325 Mbits/sec 0 2.88 MBytes
[ 5] 5.00-6.00 sec 40.0 MBytes 336 Mbits/sec 0 2.97 MBytes
[ 5] 6.00-7.00 sec 40.0 MBytes 336 Mbits/sec 0 3.03 MBytes
[ 5] 7.00-8.00 sec 41.2 MBytes 346 Mbits/sec 0 3.08 MBytes
[ 5] 8.00-9.00 sec 41.2 MBytes 346 Mbits/sec 0 3.11 MBytes
[ 5] 9.00-10.00 sec 41.2 MBytes 346 Mbits/sec 0 3.13 MBytes
[ 5] 10.00-10.08 sec 3.75 MBytes 397 Mbits/sec 0 3.13 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.08 sec 383 MBytes 319 Mbits/sec 16 sender
Есть идеи, как это можно исправить? Или это вне моего контроля?
Ответ или решение
Ваша ситуация с асимметричной скоростью соединения между сервером в Массачусетсе (MA) и клиентом в Вашингтоне (WA) может быть связана с рядом факторов. Рассмотрим основные аспекты, которые могут влиять на сетевую производительность и послужить причиной наблюдаемой разницы в скорости:
Теория
-
Сетевые маршруты и задержки: Разница в скорости может быть связана с асимметричными маршрутами, по которым данные проходят между сервером и клиентом. Интернет-маршруты могут значительно отличаться в зависимости от направления передачи данных. Пакеты могут идти через разные узлы, что может влиять на задержку и производительность.
-
Обмен данными на уровне ISP: Ваш сервер размещается через Verizon, а клиент использует Google Fiber Webpass. Ситуация может быть связана с особенностями обмена друг с другом этих провайдеров. Может возникнуть ситуация, когда один из провайдеров ограничивает скорость передачи данных в одном из направлений.
-
Ограничения полосы пропускания на уровне оборудования: Ограничения могут быть связаны с настройками или фактическими ограничениями сетевого оборудования, включая роутеры и коммутаторы, которые используются в пути передачи данных.
-
Очереди и перегрузки: При высокой нагрузке обнаруживаются очереди на маршрутизаторах, которые могут вызывать потери пакетов и снижение скорости в обратном направлении.
-
Проблемы на TCP-уровне: Методика отправки пакетов и стратегия управления перегрузками (например, настройки TCP окна) могут играть значительную роль в различиях по скорости.
Пример
В приведенных вами результатах измерений скорости iperf
можно заметить четкое различие в скорости передающих и обратных замеров. В прямом потоке (WA → MA) средняя скорость составляет 344 Мбит/с, тогда как в обратном потоке (MA → WA) скорость значительно ниже, достигая лишь примерно 9 Мбит/с. Это указывает на асимметрию в сетевом соединении, что обычно связано с вышеупомянутыми факторами.
Применение
Для диагностики и возможного решения проблемы можно предпринять следующие шаги:
-
Трассировка маршрутов: Выполните трассировку маршрута (
traceroute
) в обоих направлениях. Это позволит понять, какие промежуточные узлы и маршрутизаторы затронуты и могут оказаться причиной проблемы. -
Проверка сетевых настроек: Проверьте настройки фаервола и маршрутизатора как на сервере, так и на клиенте. Убедитесь, что пропускная способность не ограничивается локальными настройками.
-
Тестирование разных транспортных протоколов: Попробуйте использовать разные транспортные протоколы для тестирования (например, UDP-тесты), чтобы выяснить, связано ли это с особенностями TCP.
-
Контакт с провайдерами: Свяжитесь с провайдерами связи (и Verizon, и Google Fiber Webpass) с целью уточнения возможных ограничений и проблем на их стороне, будучи готовы показать результаты проведенных тестов.
-
Обновление оборудования: Убедитесь, что оборудование на обеих сторонах, такое как модемы, маршрутизаторы и сетевые карты, работает корректно и обновлено до последних версий прошивок.
В конечном итоге, если ни одно из вышеперечисленных решений не помогает и проблема сохраняется, возможно, стоит рассмотреть возможность использования более продвинутого сетевого анализа, возможно, прибегая к помощи профессиональных сетевых специалистов или оказания специализированной техподдержки со стороны ваших интернет-провайдеров.