В течение последнего месяца я испытывал периодический высокий пинг к моему домашнему маршрутизатору со всех компьютеров в моей сети Wi-Fi. Для каждых десяти пингов или около того пинг поднимется с приемлемого значения 1-3 мс до примерно 800 мс.
Уже есть похожие вопросы по ServerFault а также Суперпользователь с некоторыми очень хорошими ответами. конкретный ответ Superuser отметил, что применение нагрузки в сети (например, запуск µTorrent), похоже, устраняет высокий пинг.
Я попробовал это и нашел те же результаты. Вот значения ping из PingPlotter: лог пинг
Обратите внимание, что график становится плоским, как только я включаю µTorrent.
Вместо того, чтобы постоянно использовать µTorrent, я сейчас ищу легковесную программу, которая может нагрузить сеть. Я попытался скомпилировать программу Rust, предоставленную на Ответ суперпользователя , но в итоге я получил следующую ошибку:
error: macro undefined: 'log!'
--> rust.rs:11:7
|
11 | log! ("wifi_load] Error fetching {}: {}", url, err);
| ^^^
error: aborting due to previous error
Итак, как я могу создать программу, которая будет иметь эффект, похожий на включение µTorrent? Я хотел бы отметить, что я не программист, и мне не обязательно использовать Rust - просто нужно выполнить поставленную задачу.
Спасибо!
adjusting power management and changing roaming aggressiveness
Хм нет Я никогда не находил эти решения в исследованиях, которые я до сих пор проводил. Можете ли вы предоставить некоторые ссылки? Еще одна вещь, которую я пытаюсь проверить, - это проверить электрическое заземление в моем доме. Я заказал тестер сокетов для этого, и он еще не прибыл.netsh
Команда, похоже, решила проблему! : DОтветы:
Оповещения один раз в секунду по в основном простаивающему Wi-Fi - ужасный способ поиска проблем с задержкой, потому что вы на самом деле не измеряете то, что, по вашему мнению, вы измеряете. Проблема заключается в том, что клиенты Wi-Fi обычно питаются от батареи и любят экономить электроэнергию с помощью режима энергосбережения 802.11, который выключает радио Wi-Fi на короткие промежутки времени (возможно, на несколько десятых секунды, но это добавляет), когда, кажется, нет никакого трафика для отправки или получения.
Пинг один раз в секунду не достаточен для предотвращения включения режима энергосбережения 802.11, поэтому вы можете увидеть длительное время пинга из-за режима энергосбережения.
Чтобы проверить эту теорию, попробуйте запустить 20 пингов в секунду. Не уверен насчет Windows, но в Linux или macOS это будет так:
sudo ping -i 0.05 192.168.0.1
, Это заставляет вас отправлять (и получать) два пинга за интервал радиомаяка 802.11 (который обычно составляет одну десятую секунды), что обычно достаточно для предотвращения включения функции энергосбережения.Запускать ненужный трафик, чтобы не допустить включения режима энергосбережения, довольно глупо. Это все равно что сказать: «Эй, мой автомобильный двигатель вращается на холостых оборотах, когда меня останавливают на светофоре! Должен ли я держать ногу на газе, чтобы двигатель включал обороты, пока я на светофоре?» Ответ таков: «Нет, если он уменьшится, это сэкономит энергию. Он снова увеличится, когда вам это понадобится!»
источник
netsh
Команда, как я отметил в моем комментарии выше. Кроме того, я не уверен, как выполнить 20 пингов в секунду на Windows.