BGP ECMP

  • OSPF 支持 ECMP
  • EIGRP 支持 ECMP 和 UECMP
  • BGP 默认不做ECMP,只会选出1条最佳路由。可以通过一些设置来调整
    • eBGP
      • maximum-paths number-paths
    • iBGP
      • 前提条件,IGP cost 必须一致,即底层协议开销需要一致
      • maximum-paths iBGP number-paths
    • eBGP and iBGP
      • 根据Rule8, eBGP > iBGP,所以默认不会同时进入 RIB Table。那为了同时加载这两种,需要使用如下命令。这个命令可能会导致环路,因为来源可能是交叉的
      • maximum-paths eIBGP number-paths
  • 开启ECMP 不会影响路由选择,即使开启了,BGP得到的永远只有1条。现在是通过其他方式,把BGP Table中的其他次优路由也加载到RIB Table,增加转发路径
  • 只有最佳途径会被宣告给 Peering,次优路径即使加载进RIB,也不会宣告给对方。所以影响的只是本地