是的,BGP是外部網關路由協議,是運行於TCP上的一種自治系統的路由協議,用來在AS之間傳遞路由資訊。 BGP是唯一用來處理像因特網大小的網路的協議,也是唯一能夠妥善處理好不相關路由域間的多路連接的協定。
本教學操作環境:windows10系統、Dell G3電腦。
外部網關協定(Exterior Gateway Protocol)是AS之間使用的路由協議,最初於1982年由BBN技術公司的EricC.Rosen及DavidL.Mills提出。其最早在RFC827中描述,並於1984年在RFC904中被正式規範。 EGP是一種簡單的(網路)可達性協議,其與現代的距離-向量協議和路徑-向量協議不同,它僅限於適用於樹狀拓撲的網路。
由於EGP存在許多的局限性,IETF邊界網關協定工作小組制定了標準的邊界網關協定(BGP),目前被廣泛使用。
BGP的介紹
BGP是外部網關路由協定,用來在AS之間傳遞路由資訊;BGP協定屬於TCP協議,連接埠號碼為179
邊界閘道協定(BGP)是運作於 TCP 上的一種自治系統的路由協定。 BGP 是唯一一個用來處理像因特網大小的網路的協議,也是唯一能夠妥善處理好不相關路由域間的多路連接的協定。 BGP 建構在 EGP 的經驗之上。 BGP 系統的主要功能是和其他的 BGP 系統交換網路可達資訊。網路可達資訊包括列出的自治系統(AS)的資訊。這些資訊有效地建構了 AS 互聯的拓樸圖並由此清除了路由環路,同時在 AS 層級上可實施策略決策。
BGP特點
#(1)是一種增強的路徑向量路由協議,具有可靠的路由更新機制;
(2)具備豐富的Metric度量方法;
(3)無環路協定設計;
(4)為路由條目附帶多種屬性資訊;
(5 )支援CIDR(無類別域間選路);
(6)豐富的路由過濾和路由策略;
(7)無需週期性更新:
(8)路由更新時只發送增量路由;
(9)週期性發送KeepAlive封包以保持TCP的連通性。
擴充:
- BGP鄰居關係是對等關係;
- BGP鄰居就是BGP對等(peer)。
BGP訊息類型
- #運行BGP的路由器稱為BGP Speaker,BGP Speaker之間將會交換五種類型的報文,其中OPEN報文,KEEPALIVE報文以及NOTIFICATION報文用於鄰居關係的建立和維護。
BGP的五種封包如下:
- Open:負責和對等體建立鄰居關係;主要包括BGP版本、AS號等資訊;試圖建立BGP鄰居關係的兩台路由器在建立了TCP會話連線之後開始交換OPEN資訊以確認能否形成鄰居關係。
- KeepAlive:此封包在對等體之間週期性的發送,用於判斷對等體之間的可達性,實現BGP鄰居關係的維護;
- Update:此封包用於在BGP對等體之間用於交換路由資訊。其中包括撤銷路由資訊和可達路由資訊及其各種路由屬性;
- Notification:BGP的錯誤偵測機制;一旦偵測帶任何形式的差錯,BGP Speaker會傳送一個NPTIFICATION封包,接著與之相關的鄰居關係將被關閉;
- Route-refresh:用來通知BGP對等體自己支援路由刷新能力。
BGP資料庫類型:
- IP路由表--------------IGP
- #BGP路由表-----------EGP
BGP的6個狀態機
- Idle–空閒:Idle是BGP連線的第一個狀態,在空閒狀態,BGP在等待一個啟動事件,啟動事件出現以後,BGP初始化資源,重試計時器,發起一條TCP連接,同時轉入Connect狀態;
- Connect–連接:在Connect狀態,BGP發起第一個TCP連接,如果連接重試計時器(Connect-Retry)超時,就重新發起TCP連接,並繼續保持在Connect狀態,如果TCP連接成功,就轉入OpenSent狀態,如果TCP連接失敗,就轉入Active狀態;
- Active–活躍:在Active狀態,BGP總是在試圖建立TCP連接,如果連線重試計時器逾時,就會退回到Connect狀態,如果連接TCP成功,就轉入OpenSent狀態。如果TCP連線失敗,就繼續保持在Active狀態,並繼續發起TCP連線;
- OpenSent–開啟訊息已傳送:在OpenSent狀態,TCP連線已經建立,BGP也已經發送了第一個Open報文,剩下的工作,BGP就在等待其對等體發送Open封包。並對收到的Open封包進行正確性檢查,如果有錯誤,系統就會發送一條出錯通知訊息並退回到Idle狀態,如果沒有錯誤,BGP就開始發送Keepalive報文,並重設Keepalive計時器,開始計時。同時轉入OpenConfirm狀態;
- OpenConfirm–開啟訊息確認:在OpenConfirm狀態,BGP發送一個Keepalive報文,同時重設保持計時器,如果收到了一個Keepalive報文,就轉入Established階段,BGP鄰居關係就建立起來了。如果TCP連線中斷,就退回到Idle狀態;
- Established–連線已建立:在Established狀態,BGP鄰居關係已經建立,這時,BGP將和它的鄰居們交換Update報文,同時重設保持計時器。
更多相關知識,請造訪常見問題欄位!
以上是bgp是外部路由協定嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!