摘要

  • RFC 9736 为 BMP Peer Up 信息建立独立编号空间,并要求保留重复 String TLV 的顺序;它解决的是扩展权属,不是部署符合性证明。
  • 可靠的运行结论需要一条完整收据链:注册表与发送端版本、线上字节、解析器决定、持久化记录、会话核验、路由与转发观察,以及行动后的真实结果。

修复的是编号冲突,不是生产现场

BMP 用不同消息描述路由器控制面的不同部分。Initiation 说明被监控系统,Peer Up 描述一条 BGP 邻接会话。RFC 7854 却让二者共用 Information TLV 命名空间。随着扩展增加,同一个类型号在不同消息里承担不同职责,未来分配也失去清晰边界。

RFC 9736 的修复很克制:原注册表更名为 BMP Initiation Information TLVs,另建 BMP Peer Up Message TLVs。Initiation 一侧保留 Type 0 String、Type 1 sysDescr 和 Type 2 sysName;Peer Up 一侧使用 Type 0 String、Type 3 VRF/Table Name 和 Type 4 Admin Label。1、2 在 Peer Up 注册表中保留,3、4 在 Initiation 注册表中保留。新分配从此有了明确的所有权和审批路径。

规范还把几个容易在代码里出错的细节说清楚。String 是由 Length 字段确定字节长度的 UTF-8 序列,不依赖空字符结尾。Peer Up 的 Information 字段可选,可通过公共头部的 Message Length 判断是否存在。String 可以重复;接收方报告多个值时必须保留原有顺序。

这些规则能约束线上的表示,却不会自动检查某个采集器的实现。

“规范兼容”不能替代版本证据

RFC 9736 说明,符合 RFC 7854、8671 和 9069 的实现也符合这份新规范。这句话说明旧有 Peer Up 分配被平稳纳入新注册表,并不等于某个产品版本已经加载正确解析表,更不等于数据库保留了重复值的顺序。

一个采集器可能识别 Type 0,却只保存最后一个字符串;页面看起来正常,前面的管理语境已经丢失。另一个采集器可能把 Type 3 显示为 VRF 名称,却没有用 peer distinguisher、BGP ID 和 OPEN capability 核对它属于哪一个模拟 Loc-RIB peer。遇到未来未知类型时,系统还可能静默丢弃,完全不给操作员留下可见事件。

因此,最强的收据要从解码前开始。保存原始 Peer Up 字节、BMP 会话身份、发送端版本和配置;记录公共头部长度与 TLV 顺序;把它们绑定到具体采集器构建版本、解析规则和未知类型策略。随后比较原始入库与解码记录。只有规范化后的数据库行,无法证明某个缺失字段在网络上本来就不存在。

Peer Up 只证明一站

RFC 7854 把 Peer Up 定义为被监控 BGP 会话进入 Established 的报告,并携带双方 OPEN 消息及 TCP 会话信息。但 BMP 会话自身启动时,也会为已经处于 Established 的 peer 发送 Peer Up。因此,采集器收到消息的时间不一定是 BGP 会话首次变得可用的时间。

Peer Up 也不证明路由流完整。RFC 8671 明确指出,Peer Up/Down 的会话状态与是否发送 Adj-RIB-In、Adj-RIB-Out 的 Route Monitoring 或 Route Mirroring 相互独立。RFC 7854 还把 Initiation、Peer Up、初始 RIB dump、End-of-RIB 和增量更新分成不同阶段。要声称“看到了全部相关路由”,必须另有覆盖范围、完成标记和连续性证据。

Loc-RIB 场景更容易发生身份错配。RFC 9069 使用模拟 peer 表示 Loc-RIB,同一表还可能按地址族使用多个模拟 peer。global 这样的名称并不全局唯一,真正归属还要结合 per-peer header 与 OPEN capability。

从注册表到行动结果的收据链

一次可信核验应依次回答:适用的是哪一版注册表;哪个发送端构建版本发出消息;消息属于哪条 BMP 会话和哪个 peer epoch;线上到底有哪些字节;哪个采集器版本解析;未知字段如何处理;原始与解码记录保存了什么;BGP 会话事实是否吻合;相关路由流是否完整;RIB、FIB 或主动探测支持什么结论;采取了什么获授权行动;行动后有什么独立结果。

证据链可以诚实地停在中间。一条有效 Peer Up 能证明一次会话报告,却可能不知道路由是否被接受;完整路由流也可能不知道硬件是否转发;转发观察仍未必证明业务影响。RFC 9736 把最前面的模式权属整理清楚。专业判断的价值,在于不让这项进步冒充后面的事实。