1. 程式人生 > >BGP(邊界閘道器協議)

BGP(邊界閘道器協議)

1.什麼是BGP?

邊界閘道器協議(Border Gateway Protocol)是一種實現自治系統AS(Autonomous System)之間的路由可達,並選擇最佳路由的距離向量路由協議。

2.為何會出現BGP?

為了方便管理規模不斷擴大的網路,網路被分為了不同的自治系統。1982年,外部閘道器協議EGP(Exterior Gateway Protocol)被用於實現在AS之間動態交換路由資訊。但是EGP設計的比較簡單,只發佈網絡可達的路由資訊,而不對路由資訊進行優選,同時也沒有考慮環路避免等問題,很快就無法滿足網路管理的需求。

BGP是為取代最初的EGP而設計的另外一種外部閘道器協議,不同於最初的EGP,BGP能夠進行路由優選,避免環路。更高效率的傳遞路由和維護大量路由資訊。

雖然BGP用於AS之間傳遞資訊,但並不是所有AS之間傳遞路由資訊都需要執行BGP。比如在資料中心上行的連入Internet的出口上,為避免Internet海量路由對資料中心內部網路的影響,裝置採用靜態路由代替BGP與外部網路通訊。

3.BGP的報文型別有哪些?(4種)

Open報文、:建立鄰居

Keepalive報文、:維持鄰居關係

Notification報文、:鏈路錯誤傳送該報文斷開鄰居關係。

Updata報文、:用於在BGP鄰居之間交換路由資訊

4.BGP有那幾種狀態?

Idele (初始)——→Connect(連線,正在試圖建立連線)——→Active(Connect失敗了進入這個狀態,等候發起連線)——→Opensent(開始接收報文,收到Keepalive資訊就Established,如果收到Notification就重新回到Idle重新來過)——→Established(成功建立連線狀態)

5.BGP的通告原則有哪些?

BGP通告原則一:僅將自己的最優路由釋出給鄰居。

BGP通告原則二:通過EBGP獲得的最優路由釋出給所有BGP鄰居。

BGP通告原則三:通過IBGP獲得的最優路由不會發布給其他的IBGP鄰居。

BGP通告原則四:BGP與IGP同步。

6.BGP如何建立鄰居關係?

BGP使用TCP三次握手以單播形式建立連線。

7.BGP都有哪些屬性?

公認屬性:所有BGP路由器都必須識別並支援的屬性。

公認必遵屬性(BGP的Update訊息中必須包含的屬性):

公認任意屬性(不必存在於BGP的Update訊息中,可以根據需求自己選擇的屬性):

可選屬性:不要求所有BGP路由器能夠識別的屬性。

可選過渡屬性(BGP不能識別該屬性,但可以接受該屬性並將其釋出給它的鄰居的屬性。):

可選非過渡屬性(BGP可以忽略包含該屬性的訊息並且不祥它的鄰居釋出):