跨網域路由與 BGP

BGP 對等互連(BGP peering)

兩個網路無法對著虛空喊叫就交換路由;它們必須先同意對話。BGP 對等互連(BGP peering)就是這份協議加上實際的對話:兩台 BGP 路由器建立一個會話,並開始交換路由宣告。可以把它想成兩家相鄰的郵政公司簽下協議,要在邊界互相遞交對方的郵件,然後設置一個專用櫃台來交換郵袋。

在機制上,一個 BGP 會話跑在一條普通的 TCP 連線之上(TCP port 179),連接兩台事先設定好的路由器。每一方都事先被告知對方的 IP 位址與 AS 編號——BGP 不會自動發現鄰居,你必須明確地設定它們。TCP 連線建立後,路由器互傳 OPEN 訊息以協調參數,接著把各自的完整路由表傾倒給對方,此後只送增量的 UPDATE 訊息(新路由、撤回),外加定期的 KEEPALIVE 訊息,讓雙方都知道對方還活著。若 keepalive 停止抵達,會話便被宣告中斷,所有從該鄰居學到的路由都會被撤回。

「peering」這個詞含義過載,而這個區別對網際網路的經濟很要緊。嚴格說來,無結算對等互連(settlement-free peering)指兩個規模大致相當的網路相連,免費交換彼此各自客戶之間的流量,因為這對雙方都有利。這不同於客戶付費向供應商購買轉送(transit,也就是抵達整個網際網路的權利)。兩者都以 BGP 會話實作,但商業關係——對等者、供應商、客戶——才是驅動各方所套用之路由政策的根本。

兩家 ISP 都進駐法蘭克福的一個網際網路交換中心,並把彼此設定為 BGP 對等者:路由器 10.0.0.1(AS64500)與路由器 10.0.0.2(AS64501)。每一方只把自己客戶的前綴宣告給對方,無結算,於是一方客戶送往另一方客戶的封包,不再需要繞道經過付費的轉送供應商。

一個 BGP 會話是一條設定好、跑在 port 179 上的 TCP 連線;「對等互連」往往也指一種免費、互利的關係。

BGP 裡的「peer」可指任何設定好的鄰居,也可特指無結算的對等夥伴——別假設兩個在彼此之間跑 BGP 的網路就一定是免費交換流量。

又称
peering對等互連BGP 鄰接