/interface/ethernet/switch/l3hw-settings/advanced
advanced
此菜单允许针对特定用例调整 l3hw 设置。
interface/ethernet/switch/l3hw-settings/advanced
Syscap: rbswitch and crs_prestera Type: Settings Directory
此菜单允许针对特定用例调整 l3hw 设置。
除非得到 MikroTik 支持或 MikroTik 认证路由工程师的指示,否则不建议更改高级 L3HW 设置。应用不正确的设置可能会破坏 L3HW 操作。
| 参数 | 类型 | 描述 |
|---|---|---|
route-queue-limit-high | num | 当 route-queue-size 超过此值时,交换机驱动程序停止路由索引。降低此值可加快路由处理,但会增加路由出现在 RouterOS 中与进入硬件内存之间的延迟。设置为 0 时,只要处理队列中有任何路由就禁用路由索引 - CPU 使用率最高效,但硬件卸载前的延迟最长。仅当存在静态路由时有用。当路由表频繁变化时,不建议与路由协议(例如 BGP 或 OSPF)一起使用。 |
route-queue-limit-low | num | 当 route-queue-size 降到该值时重新启用路由索引。不得超过上限。设置为 0 会告诉交换机驱动程序在下一次硬件卸载尝试之前处理所有待处理路由。虽然这是期望的行为,但在持续的 BGP 供给下可能会完全阻塞硬件卸载。 |
shwp-reset-counter | num | 在路由表发生此数量的变化后,重置最短硬件前缀(SHWP)并尝试完整路由表卸载。 在部分卸载时,当整个路由表无法放入硬件内存且较短前缀被重定向到 CPU 时,理论上无需尝试卸载比 SHWP 更短的路由前缀,因为它们无论如何都会被重定向到 CPU。但是,路由表的重大变化可能导致不同的索引布局,因此可硬件卸载的路由数量也会不同。这就是建议偶尔执行完整表重新索引的原因。 降低此值可能允许更多路由被硬件卸载,但会增加 CPU 使用率,反之亦然。设置 shwp-reset-counter=0 会在每次路由表变化后始终执行完整重新索引。 此设置仅在部分卸载期间使用,当 ipv4-shortest-hw-prefix=0(以及相应的 IPv6)时无效。 |
partial-offload-chunk | num | 部分卸载中增量添加的最小路由数。 根据交换机芯片型号,路由要么按原样卸载(RouterOS 中的每个路由条目对应硬件内存中的一个条目),要么进行索引,并将索引条目写入硬件内存。此设置仅在部分卸载期间用于后者。 取决于索引碎片情况,添加单条 IPv4 路由可能占用 -3 到 +6 个 LPM 硬件内存块(由于索引碎片整理,某些路由添加可能会减少所需的硬件内存量)。因此,无法预测可放入硬件内存的准确路由数。交换机驱动程序使用二分算法来查找可放入硬件的最大路由数。 假设有 128k 条路由,全部都无法放入硬件内存。算法将数量减半并尝试卸载 64k 条路由。假设卸载成功。在下一次迭代中,算法选择 96k,假设失败;然后 80k - 再次失败,72k - 成功,76k,以此类推,直到成功和失败数量之间的差异低于 partial-offload-chunk 值。 降低 partial-offload-chunk 值会增加硬件卸载的路由数,但也会提高 CPU 使用率,反之亦然。 |
route-index-delay-min | time | 路由处理与其卸载之间的最小延迟。该延迟允许一起处理更多路由并一次性卸载它们,从而节省 CPU 使用率。 它还通过减少每条路由的处理工作来加快整个路由表的卸载。另一方面,它会减慢单个路由的卸载。 如果在延迟期间收到额外路由,延迟会重置为 route-index-delay-min 值。在延迟内添加越来越多的路由会不断重置计时器,直到达到 route-index-delay-max。 |
route-index-delay-max | time | 路由处理与其卸载之间的最大延迟。达到最大延迟后,已处理的路由会被卸载,即使还有更多路由待处理。但是,route-queue-limit-high 的优先级高于此设置,这意味着当达到特定队列大小时,索引/卸载仍会暂停。 |
neigh-keepalive-interval | time | 邻居(主机)keepalive 间隔。当主机被硬件卸载后,往返它的所有流量都由交换机芯片路由,RouterOS 可能认为该邻居不活跃并将其删除。为防止这种情况,交换机驱动程序必须通过向 RouterOS 发送定期刷新来保持已卸载邻居存活。 |
neigh-discovery-interval | time | 发送 ARP(IPv4)或邻居发现(IPv6)请求以检查已卸载主机是否仍然活跃的间隔。 遗憾的是,交换机芯片不提供每个邻居的统计信息。因此,检查已卸载主机是否仍然活跃的唯一方法是向所连接的网络发送偶尔的 ARP(IPv4)/ 邻居发现(IPv6)请求。 邻居发现由邻居 keepalive 工作触发。因此,发现时间会向上舍入到下一个 keepalive 会话。选择不能被 neigh-keepalive-interval 整除的 neigh-discovery-interval 值,以便在不同会话中发送 ARP/ND 请求,防止广播突发。 |
neigh-discovery-burst-limit | num | 可以一次发送的 ARP/ND 请求最大数量。 |
neigh-discovery-burst-delay | time | 如果请求数超过 neigh-discovery-burst-limit,ARP/ND 后续突发之间的延迟。 |
neigh-dump-retries | num | 卸载邻居表失败时的最大重试次数。 |