Отладка низкой производительности домашнего интернета

Отладка низкой производительности домашнего интернета
Отладка низкой производительности домашнего интернета - markusspiske @ Unsplash

Недавно производительность потокового воспроизведения фильмов на моем планшете для сна ухудшилась. Вчера вечером я даже отказался от просмотра очередного эпизода любимого сериала и попытался выяснить, в чем дело. Виноват ли в этом мой домашний маршрутизатор или это вина моего интернет-провайдера - вот в чем был вопрос, который я задал себе.

Я отлаживаю следующим образом. Два ноутбука, подключенных к wifi, работают iperf между собой, и каждый из них запускает тест скорости Ookla.

  1. Результаты теста скорости Ookla сильно разнятся, от 11/55 Мбит/с (восходящий/нисходящий поток) до 6/12 Мбит/с всего за пару секунд.
  2. Иногда мои тесты скорости Ookla лучше, чем то, что измеряет iperf. Например, тест скорости показывает 11/24 Мбит/с, а iperf - 9/17 Мбит/с.
  3. Время ping от одного моего ноутбука до другого составляет от 2 мс до 200 мс, в то время как время ping до Google составляет от 20 мс до 40 мс.

Мои вопросы следующие:

  • Почему тест скорости Ookla никогда не измеряет скорость лучше, чем iperf между двумя ноутбуками в локальной сети?
  • Почему мое время ping до ноутбука в локальной сети так сильно различается?
  • Есть ли что-то не так с моим домашним маршрутизатором (получил бы я лучшую производительность потокового вещания на моем планшете для сна с каким-то другим домашним маршрутизатором)?

Результаты теста скорости Ookla сильно различаются: от 11/55 Мбит/с (входящий/исходящий поток) до 6/12 Мбит/с всего за пару секунд.

Трудно даже предположить, потому что между вашими устройствами и тестовыми серверами Ookla очень много. Это могут быть внезапные радиопомехи, из-за которых устройство переключается на более низкую скорость Wi-Fi (или даже на другой диапазон), но это также может быть веб-сайт Ookla, предлагающий вам различные серверы для тестирования, или это может быть ваш локальный Интернет. подключение (то есть физический кабель в «кабеле» или телефонная линия в DSL или что-то еще) имеет какую-то проблему, или у интернет-провайдера проблемы с его «восходящими» провайдерами, или что-то совершенно другое.

Вы должны свести к минимуму количество переменных. Если вы считаете, что проблема заключается в локальном Wi-Fi, то iperf-тестируйте устройство, подключенное к Wi-Fi, на локальном устройстве, подключенном к Ethernet, чтобы исключить любые колебания на стороне интернет-провайдера. И наоборот, если вы считаете, что проблема заключается в подключении к Интернету (то есть в соединении с интернет-провайдером), вам снова следует провести онлайн-тест скорости Ookla с устройства, подключенного к Ethernet, чтобы исключить любые изменения среды, которые могут повлиять на Wi-Fi.

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

В целом, тесты между двумя устройствами Wi-Fi на одном и том же канале часто будут хуже, чем тесты между устройством Wi-Fi и устройством, подключенным к Ethernet. Проблема в том, что между устройствами нет прямой связи даже в одной сети — все данные должны ретранслироваться через точку доступа (которая действует как мост L2).

А поскольку Wi-Fi является полудуплексным, два прыжка не могут происходить одновременно — если я правильно понимаю, точка доступа не может получить второй пакет от устройства A, если она все еще отправляет первый на устройство B. Это означает, что в общей сложности только половина ожидаемого объема данных может быть отправлена ​​из A в B за то же время. (То же самое не происходит, если одна сторона представляет собой Ethernet, поскольку тогда оба канала могут быть активны одновременно; и если обе стороны подключены проводами, поскольку в наши дни Ethernet больше не является системой с общей средой.)

время пинга от одного из моих ноутбуков к другому увеличивается с 2 мс до 200 мс, а время пинга до Google увеличивается с 20 мс до 40 мс

Устройства с батарейным питанием часто используют режим «энергосбережения» в своих радиомодулях Wi-Fi. Насколько я понимаю, после того, как интерфейс бездействует в течение некоторого времени, он большую часть времени будет отключен от питания и будет просыпаться только каждые X мс, чтобы проверить, говорит ли точка доступа, что у нее есть новые пакеты в очереди для этого устройства.

Таким образом, «энергосбережение» Wi-Fi действительно может сэкономить много энергии, но также вызвать очень заметную (и нерегулярную) задержку для пакетов, входящих на это устройство, поскольку оно не заметит ваши пинги до следующего опроса. (Между тем, если само устройство говорит первым — например, если оно отправляет запрос «ping» и ждет ответа — тогда его радиомодем все еще активен и может немедленно получить входящий ответ, как только он будет получен.)

Попробуйте запустить непрерывный ping с ноутбука (в Windows это вариант -t) или убедитесь, что какая-то другая сетевая активность постоянно происходит — теперь, когда вы пингуете этот ноутбук с другого устройства, ответ должен быть немедленным, так как его Wi-Fi радио нет. дольше засыпает.


NevaDev, 8 февраля 2023 г., 22:34