BGP它是一種路徑矢量協議,用于決定數據包在互聯網中的最佳路徑。
1、工作原理:
- 自治系統(AS)間路由: BGP主要用于連接不同自治系統之間的路由器,其中每個自治系統(AS)代表一組具有共同路由的網絡。
- 路徑選擇: BGP通過在不同AS之間傳播路由信息,讓路由器了解到達目的地網絡的最佳路徑,并根據各種策略(如AS路徑長度、AS權重等)選擇最佳路徑。
- TCP連接: BGP使用TCP連接來交換路由信息,這種連接是可靠的,可以確保路由信息的可靠傳遞。
2、BGP交互報文
BGP對等體間通過以下5種報文進行交互,其中Keepalive報文為周期性發送,其余報文為觸 發式發送。
OPEN報文:BGP報文頭中的TYPE為1,OPEN報文用于建立BGP連接。
Hold Time:用于協商BGP對等體間保持建立連接關系,發送KEEPALIVE或UPDATE等報文的時間間隔。默認180秒。
Update報文:BGP報文頭中的TYPE為2,則該報文為UPDATE報文。UPDATE報文用于通告路由。
1、路由通告(NLRI,Path attribute(as-path,next-hop,Orgin,MED,Localpreference)) 2、路由撤銷:withdraw routes前綴
Notification報文:如果BGP報文頭中的TYPE為3,則該報文為NOTIFICATION報,NOTIFICATION報文用于處理BGP進程中的各種錯誤。
Keepalive報文:如果BGP報文頭中的TYPE為4,則該報文為KEEPALIVE報文。KEEPALIVE報文用于保持BGP連接。KEEPALIVE報文只有BGP報文頭,沒有具體內容,故其報文長度應固定為19個字節。存活時間為60秒,保持時間為180秒。
Route-refresh報文:如果BGP報文頭中的TYPE為5,則該報文為REFRESH報文。REFRESH報文用于動態的請求BGP路由發布者重新發布UPDATE報文,進行路由更新。(用于在改變路由策略后請求對等體重新發送路由信息。只有支持路由刷新(Route-refresh)能力的BGP設備會發送和響應此報文。)
3、BGP路由策略:
入站路由策略: 控制從鄰居AS接收的路由信息。
出站路由策略: 控制向鄰居AS發送的路由信息。
轉發策略: 控制路由器在路由轉發過程中的行為
4、BGP特點:
可擴展性: BGP是一種高度可擴展的協議,適用于大規模的互聯網環境。
靈活性: BGP允許管理員定義各種路由策略,以滿足網絡需求。
安全性: BGP支持各種安全機制,如基于MD5的鄰居認證、BGP Route Origin Validation(ROV)等,以確保路由信息的安全性和可信度。
5、BGP應用:
互聯網路由: BGP是互聯網主干路由的主要協議,用于在不同的ISP之間交換路由信息。
企業網絡: 企業可以使用BGP來連接到多個ISP,實現網絡的負載均衡和故障切換。