BGP協(xié)議工作機制的簡單介紹
網(wǎng)絡(luò)協(xié)議中,BGP協(xié)議的使用在很多程度上來說是比較復(fù)雜的。這是因為不同主機的不同IP地址,以及不同的網(wǎng)絡(luò)接洽,不同終端和硬件接口等問題造成的。所以在我們的網(wǎng)絡(luò)協(xié)議中,路由協(xié)議的種類也非常的多。BGP是為TCP/IP互聯(lián)網(wǎng)設(shè)計的外部網(wǎng)關(guān)協(xié)議,用于多個自治域之間。它既不是基于純粹的鏈路狀態(tài)算法,也不是基于純粹的距離向量算法。它的主要功能是與其他自治域的BGP交換網(wǎng)絡(luò)可達信息。各個自治域可以運行不同的內(nèi)部網(wǎng)關(guān)協(xié)議。BGP更新信息包括網(wǎng)絡(luò)號/自治域路徑的成對信息。自治域路徑包括到達某個特定網(wǎng)絡(luò)須經(jīng)過的自治域串,這些更新信息通過TCP傳送出去,以保證傳輸?shù)目煽啃?#65377;
1.BGP協(xié)議簡介
BGP(Border Gateway Protocol)是一種自治系統(tǒng)間的動態(tài)路由發(fā)現(xiàn)協(xié)議。BGP 協(xié)議早期發(fā)布的三個版本分別是BGP-1(請參閱RFC1105)、BGP-2(請參閱RFC1163)和BGP-3(請參閱RFC1267),當(dāng)前使用的版本是BGP-4(請參閱RFC1771)。BGP-4 適用于分布式結(jié)構(gòu),并支持無類域間路由CIDR(Classless Inter-Domain Routing)。利用BGP 還可以實施用戶配置的策略。
BGP-4正迅速成為事實上的Internet外部路由協(xié)議標準,BGP協(xié)議經(jīng)常用于ISP之間。
2.BGP工作機制
BGP系統(tǒng)作為高層協(xié)議運行在一個特定的路由器上。系統(tǒng)初啟時BGP路由器通過發(fā)送整個BGP路由表與對等體交換路由信息,之后只交換更新消息(update message)。系統(tǒng)在運行過程中,是通過接收和發(fā)送keep-alive消息來檢測相互之間的連接是否正常的。
發(fā)送BGP消息的路由器稱為BGP發(fā)言人(speaker),它不斷地接收或產(chǎn)生新路由信息,并將它廣告(advertise)給其他的BGP發(fā)言人。當(dāng)BGP發(fā)言人收到來自其他自治系統(tǒng)的新路由廣告時,如果該路由比當(dāng)前已知路由好,或者當(dāng)前還沒有該接收路由,它就把這個路由廣告給自治系統(tǒng)內(nèi)所有其他的BGP發(fā)言人。一個BGP發(fā)言人也將同它交換消息的其他的BGP發(fā)言人稱為對等體(peer),若干相關(guān)的對等體可以構(gòu)成對等體組(group)。
BGP協(xié)議在路由器上以下列兩種方式運行:
IBGP(Internal BGP)
EBGP(External BGP)
當(dāng)BGP運行于同一自治系統(tǒng)(AS)內(nèi)部時,被稱為IBGP;當(dāng)BGP 運行于不同自治系統(tǒng)之間時,稱為EBGP。
BGP協(xié)議機的運行是通過消息驅(qū)動的,其消息共可分為4類:open messageupdate、 notification message、messagekeep-alive和message
open message是連接建立后發(fā)送的***個消息,它用于建立BGP協(xié)議對等體間的連接關(guān)系。
notification message是錯誤通告消息。
keep-alive message是用于檢測連接有效性的消息。
update message是BGP系統(tǒng)中最重要的信息,用于在對等體之間交換路由信息,它最多由3部分構(gòu)成,即不可達路由(unreachable)、路徑屬性(path attributes)和網(wǎng)絡(luò)可達性信息NLRI(network layer reach/reachable information)。