BGP
數據庫
工做範圍 EGP網絡
距離矢量
app
無類路由協議
ide
封裝 封裝在TCP上,TCP=179。TCP在IP上 IP=6 單播創建鄰居,且鄰居不須要相連,只要IGP可達學習
更新方式 觸發更新,增量更新優化
AD 內部IBGP=200 外部EBGP=20router
度量值 不會計算度量,有個相似的MED值,但med不會計算路由從頭至尾的值,只會影響相鄰的值blog
BGP 自制系統圖片
- 共同技術管理的網絡集合內存
- IGP 運行自制系統內部
- BGP 運行在姿式系統之間
- 必須交換無環路的信息
自制系統號:1-65535 ,最後的1024個是私有AS號(64512-65525)
1-64511須要去公有化組織申請。
BGP 是路徑矢量協議
- IGPs 宣告網絡,及描述到這個網絡的度量
- BGP 宣告路徑,以及到達相應網絡所通過的AS
BGP 使用屬性來描述路徑,他相似於度量
- BGP 運行管理員定義策略或規則,定義如何將數據穿過AS 自制系統
BGP 路由策略
BGP支持任何策略,符合AS-BY-AS 的路由模式
GBP 的特徵
路徑矢量協議,加強的距離矢量協議
- 可靠的路由更新 使用TCP 179
- 增量更新,觸發更新
- 利用keepalive來提供保活和驗證鏈接
- 支持超大規模的網絡
-BGP 最適合用於如下狀況
- 一個AS 容許數據經過他透傳到其餘自制系統(例如 ISP)
- 有多個鏈接到其餘自制系統
- 在流量進入或離開AS 時,必須實施路由策略以及路由選擇
- BGP is not always appropriate.當知足以下要求是,將不能使用
- limited understanding of route filtering and BGP path-selection process
- 只有單一的鏈接到其餘AS 或 ISP
- 在路由器上沒有足夠的內存和處理器來執行BGP
BGP 數據庫
- 鄰居表
列出了全部BGP 鄰居
- BGP表 (轉發數據庫)
列出了全部從每個鄰居學到的網絡
到一條目的網絡能夠包含多個路徑
每一個路徑都包含BGP 屬性
- IP 路由表
列出到達目的地最好的路徑
BGP 消息類型
- open
包含hold time以及BGP router ID
- keepalive
- update
發送如何到達目的網絡的路由更新
包含路徑屬性及網絡
- notification
檢測到錯誤
BGP 鏈接關閉消息的發送
對等體 = 鄰居
- 一個BGP 對等體,能夠理解爲一個BGP 鄰居。是一個特定的術語,用來描述BGP發言人,創建鄰居 關係
- 任何兩個運行BGP的路由器,創建一個TCP鏈接交換BGP路由信息被稱爲BGP對等體或者BGP鄰居
EBGP
- 當正在運行的BGP鄰居之間屬於不一樣的自治系統,稱爲EBGP
- EBGP 鄰居,默認須要直接鏈接
IBGP
- 當兩個運行的BGP 鄰居之間屬於相同的自治系統
- 鄰居不須要直接鏈接
自治系統內,在IGP基礎上還要配置BGP的緣由:IBGP鄰居不須要直接相連,可是BGP運行在TCP上,TCP運行在IP上,若是不直連的路由器直接要創建BGP鄰居,必須IP可達,因此這時,IGP就是爲了讓BGP通訊起來。
IBGP 在中轉AS中(ISP)
- 重分佈BGP到IGP (強烈不建議)
- 代替方法,全部設備運行BGP
路由黑洞:
A產生路由,經過EBGP告訴B,B經過IBGP告訴E,E經過EBGP告訴F。這樣F就學到去往A的路由,可是當數據從F去往A時,從F出發經過EBGP到達E,E經過IBGP學到去往A的路由嚇一跳是B,數據到達D或C時,D,C沒有去往A的路由,因此就出現控制層面可達,數據層面不可達的現象(路由黑洞)
解決 路由黑洞:
BGP同步:從IBGP學到一個路由而並無從IGP,學到,那麼這個路由器將不會通告給他的EBGP鄰居
在整個AS中,確保了路由信息的一致性
若要關閉它而不帶來任何問題,就要整個AS每一個鄰居要全互聯
cisco 12.2(8)T 開始,這個功能是關閉的
no synchronization
關閉同步,所以即便沒有從IGP學到路由,也能夠學習路由
synchronization
開啓同步,所以沒有從IGP學到路由,就不接受這個路由
BGP 水平分割
默認下,通過IBGP學習的路由,永遠不傳遞給其餘IBGP 對等體,因此須要全網狀IBGP鄰居關 系
雖然全互聯運行BGP能夠解決路由黑洞,可是形成鏈路過多,BGP條目過多,形成路由器不堪重負,因此優化解決方案是,路由反射器或聯邦,解決BGP鄰居過多
防環機制
IBGP -- 水平分割
EBPG -- 經過AS號,當收到本地還有的AS號的路由,就丟棄