V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cwbsw
V2EX  ›  宽带症候群

Wi-Fi 漫游切换耗时研究

  •  
  •   cwbsw · 338 天前 · 2763 次点击
    这是一个创建于 338 天前的主题,其中的信息可能已经有所发展或是发生改变。
    终端为 iOS 16.4 和 Android 13 。
    AP 为数台 360 T7 ,分别测试了开源和闭源驱动,开启以及关闭 802.11r(FT)。
    切换耗时数据来自日志。

    结论:

    1.开启 FT ,耗时约为 30-60ms ,iOS 和 Android 无明显区别,开源和闭源驱动无明显区别。

    2.关闭 FT 。耗时约为 200-300ms ,iOS 和 Android 无明显区别,开源驱动大部分落在 200-300ms 区间,但也记录到一些低于 200ms 甚至低于 100ms 的记录,闭源驱动没有发现此现象。
    18 条回复    2023-08-19 23:04:42 +08:00
    datocp
        1
    datocp  
       338 天前 via Android
    好伤心的结果,
    非 802.11r 环境,支持弱信号踢除,依然是 1.的结果。无线是个玄学,系统终端都有各种各样的关系。
    listenfree
        2
    listenfree  
       338 天前
    我也纠结了几天,现在想通了,这点切换时间对日常使用已无影响,视频都有缓冲,游戏 udp 丢两个包也无所谓。
    顺便说一下 360t7 开硬件加速,下载 PT,我靠直接拉满 300M 带宽,路由器毫无波澜。
    owlbatex
        3
    owlbatex  
       338 天前
    漫游更多的还是看终端
    cwbsw
        4
    cwbsw  
    OP
       338 天前
    @owlbatex
    漫游策略确实主要看终端。
    iOS 优先 5GHz 做得还可以,但我手上这个 Android 就很无语,经常连着一个-80db 的 2.4GHz 信号也不切换到-55db 的 5GHz 信号,甚至手动发送 802.11v 通知也会被拒绝,必须踢掉才会重连。
    但是这里测试的是切换耗时,只要支持 FT ,表现都差不多。
    LisaSue
        5
    LisaSue  
       338 天前
    lz 用的是啥安卓机啊,我在家里测过差不多的场景,用了三个高通+一个 mtk 的路由器刷集客组网,尝试了三星和华为还有荣耀,切换都很积极,耗时都在 70ms 以内.
    kaedeair
        6
    kaedeair  
       337 天前
    @cwbsw #4 这时候就需要 AC 弱信号剔除的功能了
    txydhr
        7
    txydhr  
       337 天前 via iPhone
    这就是移动网络和 wifi 的本质区别了,移动网络由服务端调控。wifi 则是提供一串信号,客户端自由选择。
    dfly0603
        8
    dfly0603  
       336 天前 via iPad
    有人说 11r 主要优化了 802.1x 的认证速度,对 PSK 影响不大?
    cwbsw
        9
    cwbsw  
    OP
       336 天前
    @dfly0603 数据都贴出来了,大不大自己判断呗。
    leonunix
        10
    leonunix  
       335 天前
    需要一个 ac 。再 802.11r 中 ac 会生成 PMK-R0 和 PMK-R1 ,并且下发给 ap 。再漫游中这个认证的过程就可以加快了
    cwbsw
        11
    cwbsw  
    OP
       335 天前
    @leonunix 这个步骤 AC 不是必需的,开源和闭源驱动都有相应的解决方案。
    NSAgold
        12
    NSAgold  
       327 天前
    其他路由器尤其是 mt76xx 好像闭源驱动不支持 kvr 来着?
    然后好像 ft over DS 是没用的来着,还有重关联截止时间默认 1000 不起效要调到 20000 才行。
    这边坑好像还是挺多的
    dengyong
        13
    dengyong  
       307 天前 via Android
    https://github.com/berlin-open-wireless-lab/DAWN ,openwrt 有个 wifi 控制器 dawn ,协助漫游效果非常好,可以用 ubus monitor hostapd 命令查看 ap 的 802.11kvr 协商过程,dawn 没有运行时 802.11kv 这些协议实际是没有工作的,hostapd_cli show_neighbor 可以查看邻居列表
    dengyong
        14
    dengyong  
       307 天前 via Android
    漫游中 802.11kv 比 802.11r 更重要,如果没有 dawn ,usteer 这些辅助,运行 hostapd_cli show_neighbor 可以看到邻居列表是空的。
    cwbsw
        15
    cwbsw  
    OP
       306 天前
    @dengyong
    然而实测下来 kv 才是没啥用的,FT 降低切换耗时才是实打实的。
    neighbor report 我是 ubus 手动设置的,但是看不出来有什么积极作用,按照预设路线行走,漫游切换点没有变化。
    bss_transition 如前所述,终端有自己的切换逻辑,没到它的阈值就算手动发送 bss_transition_request 也没用。
    rzero
        16
    rzero  
       250 天前
    @cwbsw 大佬你好。我购买了 360T7 和 wr30u 来对家中网络进行升级。但是由于这两个都没有官方 openwrt 支持,我用的都是别人编译的版本。
    360T7 用的是这个[hanwckf/immortalwrt-mt798x (github.com)]( https://github.com/hanwckf/immortalwrt-mt798x),但是它的无限配置是 luci-app-mtk ,我找不到 802.11r 的配置选项。
    wr30u 用的是这个 https://www.right.com.cn/forum/thread-8284824-1-1.html ,它有 802.11r 但是却啥都不能设置,我查看日志看到 FT 会有 The PMKID is invalid 错误。现象就是连上它之后压根不会漫游,甚至强度低于-80db 了都不会,只能手动断开 wifi 重连。

    看到你测试了无线开源和闭源的固件,我想问下开源的固件在那找。我不需要最强的性能,我只想要它的设置和官方 openwrt 一样,可以一起工作就行。😭

    注:家中网络原本是 ax6s(做 ac )+3 R3g ( ap ),802.11r 工作得很正常。
    cwbsw
        17
    cwbsw  
    OP
       249 天前
    @rzero 已经支持了啊。360T7 已经在 23.05-rc2 了,WR30U 代码也已合并,可以自己编译或者等下一个 RC 。
    rzero
        18
    rzero  
       248 天前
    @cwbsw 好的!我是在 openwrt 官网的 toh 里没有找到,甚至连设备的页面都没有,我就以为是不支持的。我现在就去编译😭
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1236 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 23:27 · PVG 07:27 · LAX 16:27 · JFK 19:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.