BGP協議原理-狀態機詳解

3.BGP狀態機

BGP對等體的交互過程中存在6種狀態機:空閒(Idle)、連接(Connect)、活躍(Active)、Open報文已發送(OpenSent)、Open報文已確認(OpenConfirm)和連接已建立(Established)。在BGP對等體建立的過程中,通常可見的3個狀態是:Idle、Active和Established。

BGP協議原理-狀態機詳解

Idle:BGP連接的第一個狀態。在空閒狀態,BGP在等待一個啟動事件。啟動事件出現以後,BGP初始化資源,復位連接重試計時器(Connect-Retry),發起一條TCP連接,同時轉入Connect(連接)狀態。

Connect:在此狀態,BGP發起第一個TCP連接,如果連接重試計時器超時,就重新發起TCP連接,並繼續保持在Connect狀態,如果TCP連接成功,就轉入OpenSent狀態,如果TCP連接失敗,就轉入Active狀態。

Active:在此狀態,BGP總是在試圖建立TCP連接,如果連接重試計時器(Connect-Retry)超時,就退回到Connect狀態,如果TCP連接成功,就轉入OpenSent狀態,如果TCP連接失敗,就繼續保持在Active狀態,並繼續發起TCP連接。

OpenSent:在此狀態,TCP連接已經建立,BGP也已經發送了第一個Open報文,剩下的工作,BGP就在等待其對等體發送Open報文。並對收到的Open報文進行正確性檢查,如果有錯誤,系統就會發送一條出錯通知消息並退回到Idle狀態,如果沒有錯誤,BGP就開始發送Keepalive報文,並復位Keepalive計時器,開始計時。同時轉入OpenConfirm狀態。

OpenConfirm:在OpenConfirm狀態,BGP等待一個Keepalive報文,同時復位保持計時器,如果收到了一個Keepalive報文,就轉入Established階段,BGP鄰居關係就建立起來了。

Established:在Established狀態,BGP鄰居關係已經建立,這時,BGP將和它的鄰居們交換Update報文,同時復位保持計時器。

另外,在除Idle狀態以外的其它五個狀態出現任何Error的時候,BGP狀態機就會退回到Idle狀態。

BGP協議原理-狀態機詳解

BGP協議原理-狀態機詳解

BGP協議原理-狀態機詳解

BGP協議原理-狀態機詳解

BGP協議原理-狀態機詳解

BGP協議原理-狀態機詳解

BGP協議原理-狀態機詳解


分享到:


相關文章: