工具/软件:
您好:
一位客户抱怨说、有些基于 AM5708 处理器的继电器在配置 PRP 模式并安装在现有变电站网络中时重复启动。 他们运行的 PEOS 版本基于 Yocto Dunfell、为 TI SDK 8.2.1 版本。
我们能够通过复制其网络流量来重现故障、我们看到 prueth_lre 驱动程序的 nt_updater 函数导致内核崩溃、迫使中继自动重新启动。 但是、PRP 网络中具有相同流量但已安装的旧固件版本(基于 TI SDK 6)的另一个继电器从不会重新启动。
寻找两个 TI SDK 版本的 PRUETH 驱动程序的差异、我发现 SDK 6 中有一种风暴预防机制、这在 SDK8 中有所不同。 此外、TI SDK 8 文档中有一个名为“网络风暴预防“的部分、其中建议使用“Linux"Linux<xmt-block0>“ tc 命令为 广播/多播/单播流量配置滤波。 我尝试了在 TI docu 上做 C&P(以 kbit 为单位的相同信用额度和相同的选项)、但它没有奏效。 我深入研究了 tc 命令选项、最后、在以下 配置下、我让继电器不再重新启动:
tc qdisc 添加 dev eth1 clsact
tc qdisc 添加 dev eth2 clsact
tc 滤波器添加 DEV eth1 入口花卉 SKIP_SW DST_Mac 01:15:4e:00:01:00 操作管制速率 5kbit 突发 64b 下降
tc 滤波器添加 DEV eth2 入口花卉 SKIP_SW DST_Mac 01:15:4e:00:01:00 操作管制速率 5kbit 突发 64b 下降
tc 滤波器添加 DEV eth1 入口花 SKIP_SW dst_Mac ff:ff:ff:ff:ff:ff 操作管制速率 5kbit 突发 64b 下降
tc 滤波器添加 DEV eth2 入口花 SKIP_SW dst_Mac ff:ff:ff:ff:ff:ff 操作管制速率 5kbit 突发 64b 下降
如您所见、这些是非常严格的过滤器、因为我在 Wireshark 上看到 交换机转发 ARP 数据包持续风暴的捕获、以及大量 PRP 监控帧同时到达中继。 现在、我们必须分析这些限制性滤波器是否会影响 PRP 协议性能。
您能告诉我们在 SDK 6 中将哪些滤波器应用于 PRP 配置中的广播/多播流量? 如果应用的滤波器如此严格以允许 PRP 协议正常工作、我们如何解决 SDK 8 中的 PRUETH 驱动程序问题?