BGP(边界网关协议)是自治系统之间的动态路由发现协议。
当前,它在Internet中被广泛使用。
BGP协议具有非常丰富的属性,路由选择过程相对复杂。
在使用CISCO设备的网络中,BGP路由协议根据以下规则进行路由选择。
1. WEIGHT值最高的路径优先。
WEIGHT是CISCO专有参数,仅对配置了该参数的本地路由器有效,不能传输。
默认情况下,本地来源的路径具有相同的WEIGHT值(32768),所有其他路径的WEIGHT值均为0. 2,即LOCAL-PREF值(本地优先级)。
在CISCO IOS中,LOCAL-PREF的默认值为100。
只能在此AS中传递此属性。
3.路由是基于起点(原始)进行评估的,并且首选由路由器本地发起的路由。
优先级从高到低依次为:默认来源(为每个邻居配置),默认信息来源(为每个地址群集配置),网络,重新分配,聚合地址。
4.评估AS-PATH的长度,并且AS-PATH列表中的最短路径优先。
但是可以通过将bgp bestpath配置为as-path ignore(隐藏命令)来忽略此步骤。
5.评估路由的原点属性,首选具有最低原点属性值的路由。
IGP:原点值= 0; EGP:原点值= 1;不完整:原点值= 3 6,评估为MED。
MED值最小的路径获胜。
该属性可以从AS传递出去。
缺省情况下,仅当两个路径的第一个AS相同时才执行比较。
如果配置:bgp always-compare-med,则将比较所有路径的MED,无论它们是否来自同一AS。
7,EBGP路径优先于IBGP路径。
8. BGP优先选择IGP度量最低的路径到BGP的下一跳。
9.如果配置了maximum-paths [ibgp] n,则n在2-6之间,并且有多个开销相等的路径,那么BGP将最多将n条接收的路径插入到IP路由表中。
这将激活BGP多路径负载共享功能。
如果未使用可选关键字ibgp,则多路径功能仅应用于ebgp路径。
如果未激活此选项,则默认值为1.×10。
如果两个路径均为外部路径,则BGP会优先选择最先接收的路径(最旧的路径)。
11. BGP优先从具有最低路由器ID的BGP路由器中选择路由。
12.如果多个路径具有相同的原始路由器ID或路由器ID,则BGP将首选具有最短CLUSTER-LIST长度的路径。
13. BGP首选从最低邻居地址开始的路径。