SONiC 新增 IP 地址 · 时序图

1. SONiC:如何处理新增的 IP 地址

10 个参与者共用一组生命线,17 个步骤从上向下连续排列,分为配置下发、接口处理、路由分发和路由下发四个阶段。

完整时序:10 个参与者、17 个步骤,依次展示配置下发、地址通知与接口处理、路由通知与分发、接口状态与路由下发。
完整时序 · 窄屏下可选择“原始尺寸”,横向滚动阅读消息文字。打开 SVG 原图
展开四张分图对照
步骤 1–3:User/CLI 写入 CONFIG_DB 的 INTERFACE,intfmgrd 订阅配置并向 Linux Kernel 发送 RTM_NEWADDR。
01 · 配置下发:User/CLI → CONFIG_DB → intfmgrd → Linux Kernel。打开 SVG 原图
步骤 4–7:Linux Kernel 通知 fpmsyncd,后者写入 APP_DB 的 INTF_TABLE;IntfOrch 订阅后处理 RIF、MyStation MAC 和 IP2ME Trap。
02 · 地址通知经 INTF_TABLE 传递到 IntfOrch,接续接口处理。打开 SVG 原图
步骤 8–12:原图中 fpmsyncd 丢弃 RTN_LOCAL 通知;RTN_UNICAST 经 APP_DB 的 ROUTE_TABLE 传递给 RouteOrch。
03 · 路由分发:保留原图的 RTN_LOCAL Drop 分支与 RTN_UNICAST 路径。打开 SVG 原图
步骤 13–17:RouteOrch 查询 IntfOrch 的 RIF 状态,调用 SAI,接收状态,再按原图表示写入 ASIC_DB。
04 · 查询 RIF 状态并下发路由;实线表示消息,虚线表示返回。打开 SVG 原图
图示按原文重绘,步骤编号、参与者和箭头方向保持一致。