AIGP 是什么
AIGP(Accumulated IGP Metric,累积 IGP 度量)是 BGP 的可选非传递属性,属性类型码 26,由 RFC 7311 定义。它把一条路由在 IGP 域内累积出的度量随更新一起携带出去,让接收端能够比较到达同一前缀的端到端内部代价,弥补普通 BGP 只看 AS_PATH 与 LOCAL_PREF、看不到内部度量的短板。行为上有两个默认:iBGP 内默认携带,向 eBGP 传播时被剥离,需要显式开启才带出管理域。
基本信息
| 适用平台 | 支持 AIGP 的 Cisco IOS/IOS-XE/IOS-XR、部分 Huawei VRP 版本 |
|---|---|
| 属性类型 | 可选非传递,类型码 26 |
| 传播范围 | iBGP 内默认携带;出 eBGP 需显式开启 |
| 数值来源 | 沿途各 IGP 度量累积,也可在策略中手工设定基础值 |
| 典型用途 | 单域多区域选址、跨域 L3VPN 与 TE 联合选路 |
典型使用场景
- 多区域 L3VPN 中比较两个 PE 到同一 CE 的端到端 IGP 代价,避免流量绕远
- MPLS TE 与 BGP 联合选路时把 IGP 度量随前缀一起传播,让远端感知真实开销
- 同一 AS 内多条内部路径收敛时,让对端 PE 按内部代价而非跳数选路
- 跨域(Inter-AS)方案评审时,判断是否值得把内部度量带出管理域
- 排查「BGP 选到更远的路径」类问题时,确认属性是否真的被携带
配置与确认
配置与确认
router bgp 65001
neighbor 10.0.0.2 aigp # 与该邻居交换 AIGP 属性
!
route-map RM-AIGP permit 10
set aigp-metric 100 # 设定基础度量,随后沿途继续累加
!
show ip bgp 10.1.1.0/24 # 输出中的 AIGP 字段即累积度量
show ip bgp neighbors 10.0.0.2 | include AIGP属性读取要点
| 字段 | 含义 | 注意 |
|---|---|---|
| AIGP 值 | 该路径累积的 IGP 度量 | 只在同域语义下可比,数值小者更优 |
| LOCAL_PREF | 内部优先级,不传出 AS | 先于 AIGP 参与比较 |
| AS_PATH | 路径长度 | AIGP 不参与长度计算,只做代价比较 |
| Next Hop | 下一跳地址 | AIGP 比较发生在同一前缀的多条路径之间 |
确认属性是否真的带出
确认属性是否真的带出
show ip bgp neighbors 10.0.0.2 # 关注 AIGP 能力协商结果
show ip bgp 10.1.1.0/24 # 对端应能看到累积度量随路径列出
# 若两侧数值不一致,先查中间是否剥离了属性把 AIGP 带出管理域等于把内部度量暴露给对端,间接泄露部分拓扑代价信息;跨域前先与对端确认是否具备语义共识,否则应在边界剥离。
AIGP 只在同一管理域(同一运营商、同一 AS 内部)有意义:对端的 IGP 度量口径与本端不同时,数值不可比,比较结果没有参考价值。
各平台支持差异明显:华为 VRP 侧有独立的 AIGP 相关命令与开关,落地前以对应版本手册为准,不要照搬 Cisco 语法。