This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] WL1831:ICMP 泛洪时 IRQ 过高

Guru**** 2343770 points
Other Parts Discussed in Thread: WL1831
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1494903/wl1831-high-irq-on-icmp-flooding

器件型号:WL1831

工具/软件:

我们收到客户运行我们某款采用 WL1831芯片组的器件的报告、称 CPU 受到 WiFi 网络的严重影响、导致器件上出现拒绝服务。 经过仔细检查、发现设备被 ICMP 广播包淹没、导致 IRQ 线路持续上升、内核必须管理所有流量。

我们在生产中使用了相同的设备、同时运行的也是 Broadcom 芯片组、但其行为方式不同。 唯一的区别在于芯片组、wifi 固件和驱动程序。 Linux 系统的所有其他部分都是相同的。

因此、我们正在调查是否存在驱动程序级别的配置选项、我们可以触发该选项以使 WIFI 固件更好地筛选出这些消息?

我们使用主线 Linux 内核6.1.126中的驱动程序与 wl18xx-FW 固件8.9.1.0.2运行。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Mans、

    我不知道 WL18xx 上的一个功能会丢弃特定的帧。 您是否希望删除所有 IPv6帧或仅删除一个错误的 IPv6地址? 您是否了解此错误行为设备发送 ICMP 并淹没网络的原因?

    Broadcom 设备如何处理这种情况? 您确定 CPU 根本没有收到数据包吗? WL18xx 器件的架构遵循收发器方法;这意味着该器件仅在接入点(如果使用 AP 模式、则为连接的客户端)和连接的 CPU 之间移动数据包。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我们最后仍在调查是否有我们可以做的事情,请记住,我在这里的一些回答可能是不正确的,仅基于我们目前的假设

    1)我们没有考虑丢弃所有 IPv6帧。 我想基本上我们希望的是一些 DoS 保护、它可以识别容易识别的恶意模式并阻止这些模式甚至击中 CPU。 例如、smurf 攻击或我们实际未订阅的多播流量。

    2)我们不理解错误设备背后的原因。 我们只是在一个客户设施的短暂访问中看到了这一点。 据说它是一台最近连接到网络的全新 Windows 计算机。 不幸的是、我们没有机会调查设备上是否有任何恶意软件。

    3)我们不确定 Broadcom 设备是否将流量转发至 CPU。 然而、我们在驱动程序实现中看到了一个有趣的差异。 TI 驱动程序使用线程 IRQ、而 Broadcom 不使用线程 IRQ。 因此、我们目前正在考虑是否会将 CPU 负载的增加归咎于 TI 驱动程序丢弃/忽略流量所需的额外上下文切换、而 Broadcom 可以在中断时立即执行该操作。