已禁用的功能

已禁用的功能

我使用具有 AR9271 芯片组并使用兼容驱动程序 3.9.1 - 的 USB wifi 加密狗ath9k_htc。我使用 wifi 设备创建一个临时 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 驱动程序的一部分。目前,在 AP 模式下仅使用一个 VIF(虚拟接口)运行是一个好主意,多接口支持尚未经过广泛测试。注意:PowerSave 尚未得到适当支持。

来源:https://wiki.archlinux.org/index.php/Power_saving#Network_interfaces

来源:http://wireless.kernel.org/en/users/Drivers/ath9k_htc

相关内容