BGP(Border Gateway Protocol)是一種自治系統(tǒng)間的動態(tài)路由發(fā)現(xiàn)協(xié)議,目前在互聯(lián)網(wǎng)中使用非常廣泛,,BGP協(xié)議有非常豐富的屬性,,路由選擇的過程也相對復雜。在使用CISCO設備的網(wǎng)絡中BGP路由協(xié)議按以下的規(guī)則進行路由選擇。
1,、WEIGHT值最高的路徑優(yōu)先,。WEIGHT是CISCO專有的參數(shù),,且只對配置該參數(shù)的本地路由器有效,,不能傳遞。缺省條件下,,本地始發(fā)的路徑具有相同的WEIGHT值(32768),,所有其它的路徑的WEIGHT值為0。
2,、LOCAL-PREF值(本地優(yōu)先級),。CISCO IOS中,LOCAL-PREF缺省值為100,。該屬性只能在本AS內(nèi)傳遞,。
3、基于始發(fā)地(origination)評估路由,,路由器本地始發(fā)的路徑優(yōu)先,。依次降低的優(yōu)先級順序是:default-originate(針對每個鄰居配置), default-information-originate(針對每種地址簇配置),network , redistribute , aggregate-address ,。
4,、評估AS-PATH的長度,AS-PATH列表最短的路徑優(yōu)先,。但可以通過配置 bgp bestpath as-path ignore (隱藏命令)來忽略這一步,。
5、評估路由的origin屬性,,origin屬性值最低的路由優(yōu)先,。IGP:origin值=0;EGP:origin值=1,;INCOMPLETE:origin值=3
6,、評估MED。MED值最小的路徑勝出,。該屬性可以傳遞出AS,。缺省條件下,只有在兩條路徑的第一個AS相同的情況下才會進行比較,。如果配置了:bgp always-compare-med,,那么對于所有路徑都將比較MED,而不考慮它們是否來自于同一個AS,。
7,、EBGP路徑優(yōu)先于IBGP路徑。
8、BGP優(yōu)先選擇到BGP下一跳的IGP度量最低的路徑,。
9,、如果配置了maximum-paths[ibgp]n, n在2-6之間,并且存在多條等價成本的路徑,,那么BGP會在IP路由選擇表中插入最多n條接收到的路徑,。這就激活了BGP多路徑負載分擔特性。如果沒有使用可選關鍵字ibgp,,則多路徑特性就僅僅應用于ebgp路徑,。當不激活這一選項時,它的缺省值為1,。
10,、當兩條路徑都是外部路徑時,BGP將優(yōu)先選擇最先收到的路徑(最老的路徑),。
11,、BGP優(yōu)先選擇來自于最低的路由器ID的BGP路由器的路由。
12,、如果多條路徑的始發(fā)路由器ID或路由器ID相同,,那么BGP將優(yōu)選CLUSTER-LIST長度最短的路徑。
13,、BGP優(yōu)選來自于最低的鄰居地址的路徑,。