1. 程式人生 > >一句話總結BGP特性

一句話總結BGP特性

由器 pre 一次 community 通過 _id 完成 客戶機 組成

一、 BGP使用的是TCP的179端口建立連接,不使用組播IP,而是單播建立鄰居,所以它無法自動發現鄰居,需要手工配置鄰居的更新地址。
二、 數據包:

  1. open: 用來建立鄰居關系
  2. update:用來發送NLRI
  3. keepalive:用來維護鄰居關系,每60秒發送一次。
  4. notification:路由器檢查到差錯後,用來中斷鄰居關系
  5. Route-refresh:請求對等體重新發送路由。
    三、狀態機
  6. idel:初始狀態,不接受鄰居發送的連接請求
  7. connect:等待BGP連接的完成;如果TCP連接成功,則向鄰居發送open報文,進入opensent狀態;如果TCP連接不成功,則轉入Active狀態。
  8. active: BGP進程會嘗試與其鄰居初始化TCP連接。如果連接成功,BGP向對等體發送Open報文,關閉連接重傳定時器,並轉至OpenSent狀態。 如果TCP連接失敗,那麽BGP停留在Active狀態。如果連接重傳定時器超時,BGP仍沒有收到BGP對等體的響應,那麽BGP將轉入Connect狀態。
  9. opensent:在此狀態下,BGP等待對等體的Open報文,接到到Open報文後,會對接收到的AS號、版本號、認證碼進行檢查。如果接收到的Open報文正確,那麽BGP發送KeepAlive報文,並轉到Openconfirm狀態;如果接收到的Open報文有誤,那麽BGP發送Notification報文給對等體,並轉到Idle狀態。
  10. openconfirm:BGP等待Keepalive或者Notification報文。如果收到Keepalive則轉入Establish狀態,如果收到Notification報文,則轉到Idle狀態。
  11. establish:已經建立了鄰居關系,BGP可以和對等體交換Update、Keepalive、Route-refresh、Notification報文。如果收到正確的Update和Keepalive,將保持BGP連接。 如果收到錯誤的Update和Keepalive,那麽BGP將發送Notification報文對知對端,並進入Idle狀態。如果收到Notification或TCP拆除連接的通知,那麽也會轉入Idle狀態。
    四、 路徑屬性
  12. 公認可遵:所有路由器都要識別,並且必須包含在Update包中的屬性。這些屬性有:Origin、Next_hop、AS_Path
  13. 公認必遵:所有路由器都要識別,但不一定要包含在Update包中的屬性。這些屬性有:Local-Pref
  14. 可選傳遞:BGP路由器可以不識別這個屬性,但它仍然會接收這類屬性,並通知給其他對等體。這些屬性有Community
  15. 可選非傳遞:BGP設備可以不識別此類屬性,如果BGP設備不識別此類屬性,則會忽略該屬性,不會通告給對等體。這些屬性有:MED、Originator_ID、Cluster_list
    五、選路原則: 見 http://blog.51cto.com/liu008qing/2298895
    六、RR:
  16. 路由反射器,它打破了IBGP的水平分割。非客戶機與非客戶機之間不能傳遞路由。從客戶端學到的路由傳遞給客戶端和非客戶端;從非客戶端學到的路由傳遞給客戶端;從EBGP學習到的路由傳遞給客戶端和非客戶端。
  17. Cluster:RR和它的客戶端組成一個Cluster,同一個Cluster有相同的Cluster_ID。
  18. Cluster_List:當一條路由被RR反射以後,就會形成一個Cluster_list,當即RR接收到一條更新的路由時,會檢查Cluster_list,如果已經有本地的Cluster_list,則會丟棄這條路由;如果收到的路由沒有本地的Cluster ID,則會將其加入Cluster_list,並反射該路由。
  19. Originator_ID:Originator_ID用來標識路由的發起者,當一條路由第一次被反射的時候,RR將這個屬性加入這條路由。如果一條路由已經有了Originator ID,則不會再添加了。當設備接收到這條路由時,會將Originator_id與Router_ID進行比較,如果相同則不接收這條路由。
  20. 雖然RR打破了IBGP的水平分割,但它通過自己的Cluster_list和Originator_ID來防止環路的產生。
  21. 兩臺路由之間可以互為RR客戶端。
    七、 聯盟:
  22. 聯盟是將一個AS劃分為更多的子AS的技術。
  23. 每個子AS建立全互聯的鄰居關系
  24. 子AS之間建立EBGP連接關系。
  25. 在配置時,BGP進程處起的是子AS的AS號,全局的AS號將成為聯盟ID。
  26. 需要配置confed peer-as,這些AS指的是同一個全局AS內的其他的子AS號。
    八、同步:BGP路由器不應該使用或向EBGP鄰居通告從IBGP鄰居那裏學習到的BGP路由信息,除非該路由是本地的或者該路由存在於IGP數據庫,即該路由也能從IGP學習到。
    九、 最優:只有最優的路由才能傳遞給對等體。最優的前提條件:1. 關閉同步 2. 下一跳可達。
    十、 有效: 不通告BGP的更新源做為業務網段
    十一、防環:從IBGP學習到的路由不能再通告給IBGP,也就是說IBGP的路由只能傳一跳。

一句話總結BGP特性