Отключение функции энергосбережения на устройстве Wi-Fi

Я использую USB-адаптеры Wi-Fi с чипсетом AR9271 и использую драйвер Compat 3.9.1 - ath9k_htc, Я использую модули Wi-Fi, чтобы создать специальный WLAN.

Когда в течение некоторого времени нет связи, узлы покидают сеть и переходят в спящий режим. Это вызывает проблему в случае, если узел отправляет пакет UDP, спящие не могут его получить. они просто воссоединяются с сетью в первом пакете, и соединение занимает некоторое время. Поэтому я пропускаю некоторые сообщения, чтобы получить.

Как я могу отключить, чтобы ни один узел не покинул сеть, несмотря ни на что?

По некоторым причинам я искал другой метод, чем iw dev wlan0 set power_save off, Было бы идеально, если это возможно сделать через wpa_supplicant (2.0) или что-нибудь еще.

1 ответ

Создание правила udev, которое автоматически отключает режим энергосбережения, когда устройство подключено, может привести к снижению качества.

Создайте /etc/udev/rules.d/70-wifi-powersave.rules:

ACTION=="add", SUBSYSTEM=="net", KERNEL=="wlan*" RUN+="/usr/bin/iw dev %k set power_save off"

Конечно, вам может понадобиться перезагрузить udev или перезагрузиться, чтобы изменения вступили в силу.

Возможно, существуют демоны и / или утилиты управления беспроводной сетью, которые предоставляют те же функциональные возможности (например, установите флажок или введите --power-save), но я не смог ничего найти. Если бы вы нашли такую ​​программу, они, скорее всего, сделали бы один и тот же вызов iw ты пытаешься избежать.

Сайт модуля ядра ath9k_htc предлагает немного информации:

Отключенные функции

ath9k_htc использует функцию Autosleep беспроводной карты. В драйвере реализована базовая поддержка PS, но по умолчанию она отключена.

Эта часть может быть полезна и вам:

Режимы AP / P2P

Патчи, включающие режимы P2P / AP, были объединены в беспроводном тестировании, это будет часть драйвера от Linux 3.0. Было бы неплохо использовать только один VIF (виртуальный интерфейс), работающий в режиме AP, поддержка нескольких интерфейсов не была тщательно протестирована. Примечание. PowerSave пока не поддерживается должным образом.

Источник: https://wiki.archlinux.org/index.php/Power_saving

Источник: http://wireless.kernel.org/en/users/Drivers/ath9k_htc

Другие вопросы по тегам