当BGP收到到达同一目的地的多条路由时,会根据选路规则选择出最优路由,然后将最优路由下发到IP路由表,指导数据流量转发。在交换机的实现中,当到达同一目的地存在多条路由时,BGP选路的概要过程如图9-4所示。图9-4 BGP选路流程图
交换机目前不支持AIGP属性。
BGP在选择路由时严格按照先后顺序比较路由的属性,如果通过前面的属性就可以选出最优路由,BGP将不再进行后面的比较;如果BGP通过所有属性仍没有选出最优路由,则先收到的路由优选。表9-1按照顺序列出了这些属性的助记简写、选择规则和补充说明。从表9-1可以看出,仅前两项协议首选值和本地优先级是数值高者优选,其他大部分是数值小者或长度短者优选。另外,表格的第一列还可以归纳成如下字符串:“PPAAA OMTCC RA”,记住此字符串有助于记忆整个选路规则。 表9-1 BGP选路流程表
助记简写 | | | | P | 协议首选值(PrefVal) | 数值高者优选。 缺省值0。 | 华为设备的特有属性,仅在本地有效。 | P | 本地优先级(Local_Pref) | 数值高者优选。 缺省值100。 | 可以通过执行default local-preference命令修改BGP路由的缺省本地优先级。 | A 说明:此处取字符串"ASNIL"的首字母。
| 路由生成方式 | A>S>N>I>L。其中:- A:aggregate命令生成的聚合路由。
- S:summary automatic命令生成的聚合路由。
- N:network命令引入的路由。
- I:import-route命令引入的路由。
- L:从邻居学习的路由。
| - | A | AIGP(Accumulated Interior Gateway Protocol) | 数值小者优选。 有AIGP的路由优于没有AIGP的路由。 | - | A | AS_Path | 长度短者优选。 | 执行bestroute as-path-ignore命令后,BGP选路时忽略AS_Path的比较。 | O | Origin | IGP>EGP>Incomplete。 | - | M | MED(Multi Exit Discriminator) | 数值小者优选。 缺省值0。 | 执行bestroute med-none-as-maximum命令后,BGP选路时将该路由的MED值按最大值4294967295来处理。 | T | 邻居类型(Peer Type) | EBGP>IBGP。 | 依次优选EBGP路由、IBGP路由、LocalCross路由、RemoteCross路由。 PE上某个VPN实例的VPNv4路由的ERT匹配其他VPN实例的IRT后复制到该VPN实例,称为LocalCross;从远端PE学习到的VPNv4路由的ERT匹配某个VPN实例的IRT后复制到该VPN实例,称为RemoteCross。 | C | IGP Cost | 数值小者优选。 | 在IGP中,对到达同一目的地址的不同路由,IGP根据本身的路由算法计算路由的度量值。 执行bestroute igp-metric-ignore命令后,BGP选路时忽略IGP Cost的比较。 | C | Cluster_List | 长度短者优选。 | 缺省情况下,BGP在选择最优路由时Cluster-List优先于Originator-ID。配置bestroute routerid-prior-clusterlist命令后,BGP在选择最优路由时Originator-ID优先于Cluster-List。 | R | Router ID | 数值小者优选。 | 如果路由携带Originator_ID属性,选路过程中将比较Originator_ID的大小(不再比较Router ID),并优选Originator_ID最小的路由。 | A | 对等体地址(Peer Address) | 数值小者优选。 | - |
配置负载分担时的路由选择配置BGP负载分担后,满足如下所有条件的多条BGP路由会成为等价路由,进行负载分担: 首选值(PrefVal)相同。 本地优先级(Local_Pref)相同。 都是聚合路由,或者都不是聚合路由。 AIGP值相同。 AS_Path属性完全相同。 Origin类型(IGP、EGP、Incomplete)相同。 MED(Multi_Exit Discriminator)值相同。 都是EBGP路由或都是IBGP路由。配置maximum load-balancing eibgp命令后,BGP在选择最优VPN路由时忽略该条比较。 AS内部IGP的Metric相同。配置maximum load-balancing eibgp命令后,BGP在选择最优VPN路由时忽略该条比较。
此外,需要特别指出的是,携带标签的BGP路由与不携带标签的BGP路由即使满足上述条件,也不能形成负载分担。
私网路由选路规则在交换机的实现中,私网BGP路由选路规则与公网BGP路由选路规则相同。唯一的不同是,相对于公网BGP路由,私网BGP路由需要根据VPN-Target进行路由交叉。
|