一張紙上的A、 B 兩個點,很容易就可以找到最佳連線方式,但如果 A 點是計算機,而 B 點是地球另一端的網(wǎng)站,如何從這紛亂復雜的線路中,找到最佳路徑呢?
在這種情況下,BGP(邊界網(wǎng)關協(xié)議)可根據(jù)可達性和路由信息,權衡最新的網(wǎng)絡狀況,從而找到最佳路徑。
BGP是一種路由協(xié)議,它定義了在AS(自治系統(tǒng))之間交換路由信息的方法。BGP 管理數(shù)據(jù)包如何在構成互聯(lián)網(wǎng)的大型網(wǎng)絡之間傳輸,并使互聯(lián)網(wǎng)能夠高效運行。
在深入了解BGP之前,我們先來認識幾個基礎概念。
01
什么是路由協(xié)議?
路由協(xié)議是一種指定數(shù)據(jù)包轉送方式的協(xié)議?;ヂ?lián)網(wǎng)由錯綜復雜的網(wǎng)絡構成,因此需要適當?shù)靥峁昂侠淼囊龑А?,這個過程稱為路由。
| 路由圖解
路由是將計算機發(fā)送的數(shù)據(jù)(數(shù)據(jù)包)正確傳輸?shù)侥康挠嬎銠C的過程。
為了進行路由選擇,需要在路由器中設置路由信息(路由表)。用于指示的信息稱為路由表,路由表包含“最終目的地”和“下一跳IP地址”。路由表的設置本身可以手動完成,但是路由信息每天都在變化。因此,需要一種機制來自動配置。這里使用的就是路由協(xié)議。
| 路由表工作示意圖
路由協(xié)議可以大致分為以下兩種類型:
IGP ( Interior Gateway Protocol ):內部網(wǎng)關協(xié)議,在一個AS內部所使用的一種路由協(xié)議。一個AS內部也可以有多個路由器管理多個網(wǎng)絡,各個路由器之間需要路由信息以知道子網(wǎng)絡的可達信息。IGP就是用來管理這些路由。代表的實現(xiàn)協(xié)議有RIP和OSPF。
EGP ( Exterior Gateway Protocol ):外部網(wǎng)關協(xié)議,在多個AS之間使用的一種路由協(xié)議,BGP是EGP的代表協(xié)議。
02
什么是AS?
AS(自治系統(tǒng),Autonomous System)是構成互聯(lián)網(wǎng)的網(wǎng)絡單元。一個自治系統(tǒng)(AS)是一個有權自主地決定在本系統(tǒng)中應采用何種路由協(xié)議的小型單位。這個網(wǎng)絡單位可以是一個簡單的網(wǎng)絡也可以是一個由一個或多個普通的網(wǎng)絡管理員來控制的網(wǎng)絡群體,它是一個單獨的可管理的網(wǎng)絡單元(例如一所大學,一個企業(yè)或者一個公司個體)。它可以是一個路由器直接連接到一個LAN上,同時連到Internet上,也可以是一個由企業(yè)骨干網(wǎng)互連的多個局域網(wǎng)。
| 互聯(lián)網(wǎng)拓撲
每個 AS 都會被分配一個稱為 ASN(自治系統(tǒng)編號)的唯一編號。區(qū)域互聯(lián)網(wǎng)注冊機構(Regional Internet Registry,RIR),是管理世界上某特定地區(qū)Internet資源的組織。Internet資源包括IP地址(包含IPv4和IPv6)和使用在BGP路由中的自治系統(tǒng)號(Autonomous System number)。每個 AS 控制一組連接的路由前綴,代表一個 IP 地址范圍。當流量到達 ASN 時,它決定了網(wǎng)絡內部的路由策略。
| AS(自治系統(tǒng))
在一個AS中的所有路由器必須相互連接,運行相同的路由協(xié)議,同時分配同一個ASN。截至 2021 年 1 月,全球有近 100000 個 ASN,其中約 29% 位于美國。
為了使各個AS相互連接并在它們之間進行通信,需要使用EGP,BGP是EGP的代表協(xié)議。
| BGP 簡化版
上圖展示了一個簡化版的 BGP。在此版本中,互聯(lián)網(wǎng)上有 6 個自治系統(tǒng)。如果 AS1 需要向 AS3 路由一個數(shù)據(jù)包,它有兩種不同的選擇:
AS2 → AS3或AS6 → AS5 → AS4 → AS3
在這個簡化的模型中,可以很簡單直接地作出決策。AS2 路由所需的躍點比 AS6 路由要少,因此它是最快、最高效的路由。
那么現(xiàn)在假設有成百上千個 AS,而且躍點數(shù)只是路線選擇算法中的一部分,最終決策就變得非常困難。而這就是BGP 路由的實際情況。
看到這里,我們再回顧一下BGP的概念,是不是就容易理解了!
打個比方,如果我們將 BGP 比作互聯(lián)網(wǎng)的郵政服務,那么AS就相當于各郵政分局,AS中的內部路由器就好比郵箱。一個城鎮(zhèn)可能有數(shù)百個郵箱,但郵箱中的所有郵件都必須先經(jīng)過本地郵政分局,然后再運送到另一個目的地。也就是路由器將出站流量路由到AS,然后使用 BGP 路由將這些流量傳輸?shù)狡淠康牡亍?/p>
但在這個比喻里,還存在一些偏頗。
AS與郵局不同,它們并非都屬于同一個組織。事實上,AS往往屬于互相競爭的公司。因此,BGP 路由有時會將業(yè)務因素考慮在內。AS往往會互相收取費用來傳輸通過其網(wǎng)絡的流量,相關價格也會成為最終選擇哪條路由的考慮因素之一。
03
互聯(lián)網(wǎng)流量路由簡史
在互聯(lián)網(wǎng)早期,只有少數(shù)網(wǎng)絡需要相互連接。那時,網(wǎng)絡節(jié)點之間的路由是靜態(tài)的,即路由器上的路由表是預先配置的,不考慮動態(tài)變化。設置路由所需要做的就是定義網(wǎng)絡節(jié)點并根據(jù)需要在它們之間建立連接。
然而,互聯(lián)網(wǎng)迅速發(fā)展,網(wǎng)絡越來越多,這時候就需要一個更加動態(tài)的路由系統(tǒng)。EGP(外部網(wǎng)關協(xié)議)的發(fā)明就是為了完成這項工作。1982 年,來自BBN Technologies 的Eric C. Rosen定義了 EGP。
EGP 是一種基于樹狀分層拓撲結構的簡單路由協(xié)議,用于在自治系統(tǒng)網(wǎng)絡中的兩個相鄰網(wǎng)關主機之間交換路由信息。
| EGP路由協(xié)議
EGP具有三個主要功能:
建立一組鄰居
檢查鄰居的可用性
通知鄰居其自治系統(tǒng)內的可達網(wǎng)絡
隨著互聯(lián)網(wǎng)上自治系統(tǒng)數(shù)量的增長,EGP 的缺點也開始暴露。EGP 僅支持樹狀拓撲,阻礙了可擴展性,并且難以有效地連接新網(wǎng)絡。需要定義一個更具可擴展性并提供更高級功能的外部路由協(xié)議。
| 樹狀拓撲vs網(wǎng)狀拓撲
1989 年 6 月,新路由協(xié)議的第一個版本正式確定。它的名字叫 BGP,代表邊界網(wǎng)關協(xié)議。
當時,思科的 Kirk Lougheed 和 Len Bosack 以及 IBM 的 Yakov Rekhter 利用在EGP上獲得的經(jīng)驗編寫了一個新協(xié)議。他們在餐巾紙上寫下這個新協(xié)議。出于這個原因,BGP有時被稱為Two-Napkin Protoco。
| 寫在餐巾紙上的BGP注釋
與其前身 EGP 相比,BGP 支持網(wǎng)狀拓撲,使多路徑路由成為可能。BGP 用于路由 AS 到 AS的流量。
BGP Speaker 之間建立對等體的模式有兩種:
IBGP(Internal BGP)是指在相同AS內建立的BGP連接
EBGP是指在不同AS之間建立的BGP連接
在一個 AS 內,可以自由使用其他路由協(xié)議,如 OSPF、EIGRP 和 IS-IS。
| IBGP與EBGP示意圖
BGP 旨在互聯(lián)網(wǎng)上的自治系統(tǒng)之間交換路由和可達性信息,是當今互聯(lián)網(wǎng)運作方式不可或缺的一部分。沒有BGP,不同的網(wǎng)絡將無法通信或共享有關路由的信息,從而無法將數(shù)據(jù)高效、安全地從一個地方發(fā)送到另一個地方。
ISP(互聯(lián)網(wǎng)提供商)、大型組織和云提供商使用BGP 來連接彼此的的網(wǎng)絡,以及與互聯(lián)網(wǎng)的其余部分連接起來。BGP 還用于確保流量盡可能高效的路由,從而減少延遲并提高性能。BGP 基于TCP/IP,在OSI傳輸層(第 4 層)上運行以控制網(wǎng)絡層(第 3 層)。
04
BGP 路由的工作原理
BGP報文
BGP報文由BGP報文頭和具體報文內容兩部分組成。BGP的運行是通過消息驅動的,共有5種消息類型,這些消息有相同的報文頭。這些消息通過TCP協(xié)議進行傳播(端口號是179)。消息最長為4096字節(jié),最短為19字節(jié)(只包含報文頭)。
1. Open報文用于對等體參數(shù)協(xié)商;
2. Keepalive報文用于維護對等體鄰居;
3. Update報文用于通告可達路由和不可達路由;
4. Notification報文 用于錯誤信息通告,斷開對等體鄰居;
5. Route-refresh報文 用于請求對等體重新發(fā)送路由信息。
BGP報文頭包括三部分,總長19字節(jié)。各個部分的格式和功能如下:
Marker:占16字節(jié),用于檢查BGP對等體的同步信息是否完整,以及用于BGP驗證的計算。不使用驗證時所有比特均為1(十六進制則全“FF”)。
Length:占2個字節(jié)(無符號位),BGP消息總長度(包括報文頭在內),以字節(jié)為單位。長度范圍是19~4096。
Type:占1個字節(jié)(無符號位),BGP消息的類型。Type有5個可選值,表示BGP報文頭后面所接的5類報文(其中,前四種消息是在RFC4271中定義的,而Type5的消息則是在RFC2918中定義的)
自治系統(tǒng)通信
當兩個 AS 相互通信時,它們會彼此交換各自的網(wǎng)絡信息,包括 IP 地址范圍、子網(wǎng)掩碼和其他網(wǎng)絡相關數(shù)據(jù)等詳細信息。BGP 決策機制對所有數(shù)據(jù)進行分析,并將其中一個對等體設置為下一站,以轉發(fā)去往某個目的地的報文。每個對等體管理一個表,其中包含它知道的每個網(wǎng)絡的所有路由,并將該信息傳播到其相鄰的自治系統(tǒng)。
通過這種方式,BGP 允許 AS 從其相鄰AS 收集所有路由信息,并進一步“通告”這些信息。每個對等體都在其自己的自治系統(tǒng)內部傳輸信息。
就像在現(xiàn)實生活中一樣,通常有多條路線可以到達給定的目的地。BGP 類似于導航系統(tǒng),負責根據(jù)收集到的信息和組織的路由策略確定最合適的路由,該路由策略基于成本、可靠性、速度和其他因素。
路由更新
一旦建立了路由表,就需要定期更新,以便網(wǎng)絡中的任何變化都能反映在路由表中。這個過程被稱為路由更新,它涉及在兩個 AS 之間來回發(fā)送消息,以保持它們各自的路由表的最新狀態(tài)。
BGP 路徑屬性
除了交換有關網(wǎng)絡的信息外,BGP 還使用路徑屬性來確定從一個AS發(fā)送數(shù)據(jù)包到另一個AS時應該走哪條路由。這些屬性包括跳數(shù)、延遲和傳輸成本等。通過考慮這些因素,BGP 可確保數(shù)據(jù)包沿著最有效的路由發(fā)送。
05
BGP的主要功能
BGP 為互聯(lián)網(wǎng)的運行提供了關鍵功能,包括維護路由信息、選擇最短路由、在路由錯誤的情況下提供冗余、通過身份驗證提供安全性和促進不同網(wǎng)絡類型之間的通信等。
路由故障時提供冗余:如果 BGP 檢測到主路徑無法正常工作,它將自動通過備用路徑重新路由流量。
檢測路由路徑環(huán)路:BGP 可以使用一組稱為 BGP 決策過程的算法來檢測和消除路由路徑中的環(huán)路。這有助于確保數(shù)據(jù)包沿著盡可能最有效的路線發(fā)送,而不會浪費帶寬或走不必要的彎路。
防止惡意攻擊:BGP 可以通過驗證 BGP 消息是否來自合法自治系統(tǒng),以過濾掉惡意的流量。
提供安全保障:BGP 使用預配置的密碼或密鑰對路由器之間的消息進行身份驗證。這有助于確保只有授權實體才能交換信息并防止惡意行為者破壞流量。
控制交通流量:BGP 使 ISP 能夠通過指定將數(shù)據(jù)包從一個網(wǎng)絡發(fā)送到另一個網(wǎng)絡時采用的路由來控制流量如何通過其網(wǎng)絡。
促進網(wǎng)絡交流:BGP 允許網(wǎng)絡之間的通信,例如 IPv4 和 IPv6。這有助于確保所有設備都可以相互通信,無論它們位于哪種類型的網(wǎng)絡上。
06
BGP如何選擇最佳路徑?
上文提到了BGP可選擇兩個對等體之間的最佳路徑,那最佳路徑究竟是怎么選出來的呢?
權重:選擇權重最大的路線。權重值越大,對該路徑的偏好越高。
本地優(yōu)先級:如果有多條權重相同的路由,則選擇本地優(yōu)先級最高的路由。
Origin:優(yōu)先選擇由本地路由器發(fā)起的路由,本地路由的下一跳是 0.0.0.0。
AS路徑:如果AS路徑長度相同,則優(yōu)先選擇具有最低MED (多出口鑒別器)的路徑。
eBGP over iBGP:首選eBGP。eBGP的管理距離是 20,而iBGP的是 200。
IGP指標:優(yōu)先選擇下一跳IGP最低的。
外部路徑:如果兩條路徑都是外部路徑,首先選擇最舊的路徑。
Router ID :選擇Router ID最小的路徑。
集群列表:如果多條路徑具有相同的路由器ID,則選擇最小長度。
鄰居地址:從最低鄰居地址開始選擇,此地址為BGP鄰居配置中使用的IP地址。
07
BGP的局限性
雖然BGP被廣泛使用,但是它也有以下局限性:
普適性問題
>傳播延遲
BGP在處理路由變更時需要時間來計算新的最短路徑,并需要將新路由信息通知給其他路由器。這會導致路由切換的延遲時間較長,可能會影響網(wǎng)絡性能。
>不穩(wěn)定
如果配置不正確,BGP 會導致不穩(wěn)定。如果路由設置不當,可能會導致數(shù)據(jù)包路由效率低下,從而導致性能下降和潛在的中斷。
>難以擴展
BGP是一個復雜的協(xié)議,需要大量的配置和維護工作。BGP 在處理大量路由器或同時路由大量數(shù)據(jù)時,無法很好地擴展。
安全問題
BGP還有一個很大的問題在于,默認情況下BGP 不嵌入任何安全協(xié)議,并且依賴于網(wǎng)絡運營商來保護他們的系統(tǒng)。自 2000 年代初以來, BGP劫持和泄漏事件一直是人們關注的焦點。
BGP路由泄露:路由泄漏是一種在現(xiàn)網(wǎng)中比較常見的路由事件,一般出現(xiàn)于ISP的錯誤配置,對外宣告了本不應該由該AS宣告的IP前綴路由,它能夠造成 BGP 路由發(fā)生嚴重錯誤、進而導致互聯(lián)網(wǎng)部分中斷或擁塞。
BGP路由劫持:整個BGP協(xié)議是建立在信任原則之上的。
BGP 假設每個 AS 對其擁有的IP地址和共享的路由信息都是真實的,這個原理使得它很容易受到惡意攻擊。BGP 劫持是通過破壞使用BGP 維護的互聯(lián)網(wǎng)路由表來非法接管IP 地址組,惡意重新路由互聯(lián)網(wǎng)流量。
| BGP路由劫持
攻擊者可以操縱 BGP 路由表,讓受到攻擊的路由器通告尚未分配給它的前綴。如果這些虛假通告表明有比合法路徑更好的路徑可用,流量就可能會被定向到該路徑,導致惡意服務器竊取憑據(jù)、下載惡意軟件并執(zhí)行其他破壞性活動。而最終用戶始終以為他們訪問的是合法站點。
在某些情況下,BGP 路由劫持可能使攻擊者能夠訪問未加密的數(shù)據(jù)流或用于繞過 IP 屏蔽列表來發(fā)起未經(jīng)請求的活動,如垃圾郵件等。
BGP DoS:這種惡意攻擊主要針對 BGP 路由協(xié)議。在這種攻擊中,網(wǎng)絡犯罪分子向受害系統(tǒng)發(fā)送意外或不需要的 BGP 流量,這會耗盡受害者的所有可用資源,從而無法處理有效的 BGP 流量。
BGP 威脅事件
多年來,BGP 經(jīng)歷了無數(shù)次安全事件。
2017 年 8 月,由于谷歌錯誤泄露了 BGP 通告,日本經(jīng)歷了全國范圍的中斷。同年 10 月,巴西的 Twitter 和 Google 等服務因另一起 BGP 泄漏事件而中斷。2017 年 11 月,互聯(lián)網(wǎng)骨干網(wǎng)提供商 Level 3 經(jīng)歷了一次路由器配置錯誤,導致了嚴重的路由泄漏,最終直接影響了康卡斯特,并在此過程中關閉了美國大片地區(qū)的互聯(lián)網(wǎng)。
2018 年 4 月,惡意黑客公布了一些屬于 AWS 的 IP 前綴,一些試圖登錄加密貨幣網(wǎng)站的用戶被重定向到黑客所創(chuàng)造的虛假網(wǎng)頁之中,導致了超過 160000 美元的損失。
2021 年 10 月 4 日。Facebook 及其子公司經(jīng)歷了一次影響全球用戶的重大中斷。中斷的原因被追溯到 BGP 故障,導致流量路由中斷。這導致許多用戶無法訪問他們的帳戶或使用 Facebook 及其子公司提供的任何服務。中斷持續(xù)了幾個小時才得到解決,并使該組織損失了 6000 萬美元的收入。
| 來源:騰訊安全應急響應中心(TSRC)
這些事件都說明了BGP協(xié)議在互聯(lián)網(wǎng)中的重要性,同時也提醒我們BGP安全方面的風險。
08
如何防范BGP威脅?
為了充分防范 BGP 威脅,有必要采取適當?shù)膶Σ吆捅Wo措施。
IP前綴過濾
大多數(shù)網(wǎng)絡應該只在必要時接受IP段前綴聲明,并且只應將其IP前綴聲明到某些網(wǎng)絡,而不是整個互聯(lián)網(wǎng)。這樣做有助于防止意外的路由劫持,并可能使AS不接受偽造的IP前綴聲明。但是,這在實踐中很難實施。
BGP劫持檢測
劫持檢測可以采取多種形式?;€性能的變化,例如更大的延遲、錯誤的流量或性能的普遍下降是可能表明某種形式的劫持的初步跡象。此外,監(jiān)控通告以及記錄路線的可用性和停機時間是發(fā)現(xiàn)劫持的重要方面。
更復雜的系統(tǒng)還可以分析來自鄰居的公告 AS 以查看被劫持的前綴是否包含在公告中,可以識別前綴不匹配,并使用路徑分析來確保正確的路由。
全路由認證安全機制
2017年10月,國際互聯(lián)網(wǎng)工程任務組(IETF)和美國國家標準與技術研究院(NIST)、美國國土安全部(DHS)等機構共同啟動了一個名為安全域間路由(SIDR)的聯(lián)合項目,明確提出應對 BGP 協(xié)議進行保護以抵御BGP路由攻擊威脅?!癝IDR ”項目主要分為三個基本組成部分:資源公鑰基礎設施 (RPKI)、BGP 源路由驗證(ROV)和 BGP 路徑驗證 (BGPSec)。
>RPKI
RPKI是一種專門為路由來源身份驗證開發(fā)的加密系統(tǒng)。RPKI 使用被稱為路由源授權(Route Origin Authorization, ROA)的加密簽名記錄。其基本思想是構建一個PKI(公鑰基礎設施)來完成對IP地址前綴和AS號的所有權和使用權的認證。
RPKI 允許網(wǎng)絡運營商通過使用私鑰和公鑰系統(tǒng)對BGP中的路由通告進行數(shù)字加密和簽名。信息可以使用私鑰加密和簽名,并且只能使用匹配的公鑰解密或驗證其簽名。數(shù)字簽名信息保證了在路由系統(tǒng)中看到的路由通告可以被驗證并且是真實的。
| 使用RPKI的BGP
>BGPSec
不過RPKI和ROV,只能防范如BGP路由劫持中的起源AS欺騙的簡單攻擊,像AS路徑篡改、BGP路由泄露等場景,則需要采用BGPSec方案。
BGPSec旨在補充BGP源路由驗證的不足,當它與ROV結合使用時,可以防范各種針對BGP的路由劫持攻擊。在路由宣告過程中,路由器從它的鄰居AS收到的IP前綴路由宣告消息進行簽名,簽名內容作為路由消息的BGPSec_Path屬性傳播給其它鄰居AS,當路由器接收到帶有BGPSec_Path屬性的IP前綴更新路由時通過檢查簽名判斷該路由的AS_Path路徑是否正確,若錯誤的話直接丟棄,并不廣播給其鄰居AS。
09
BGP用在什么地方?
BGP用于多種類型的網(wǎng)絡,包括:
互聯(lián)網(wǎng)服務提供商 (ISP):ISP 使用 BGP 在多個互聯(lián)網(wǎng)自治系統(tǒng)之間傳遞路由數(shù)據(jù)。這使得有效流量可在各種網(wǎng)絡和地理位置之間路由。
企業(yè)網(wǎng)絡:在工業(yè)網(wǎng)絡中,BGP 還用于跨多個站點或區(qū)域交換路由數(shù)據(jù)。這可以在同一組織的各個部門內實現(xiàn)有效的流量路由。
數(shù)據(jù)中心網(wǎng)絡:BGP用于數(shù)據(jù)中心網(wǎng)絡,在同一數(shù)據(jù)中心的不同部分之間或不同數(shù)據(jù)中心之間交換路由信息。這允許有效地路由流量并啟用負載平衡和故障轉移等功能。
服務提供商網(wǎng)絡:服務提供商使用 BGP 在不同網(wǎng)絡之間進行高效的流量路由并提供冗余。
域間路由:BGP是互聯(lián)網(wǎng)不同域之間使用的路由協(xié)議,它是唯一可以用來在不同自治系統(tǒng)之間交換路由信息的協(xié)議。
綜上所述,BGP廣泛應用于互聯(lián)網(wǎng)服務提供商、企業(yè)網(wǎng)絡、數(shù)據(jù)中心網(wǎng)絡、服務提供商網(wǎng)絡等不同類型的網(wǎng)絡,主要用于互聯(lián)網(wǎng)域間路由。
10
BGP 有其他替代方案嗎?
對于那些不想或不需要 BGP 提供的所有功能的人來說,有幾種選擇。其中最突出的是開放最短路徑優(yōu)先 (OSPF) 和增強型內部網(wǎng)關路由協(xié)議 (EIGRP)。
OSPF
OSPF 用于在 IP 網(wǎng)絡中找到源和目標之間的最佳路徑,是一種內部網(wǎng)關協(xié)議 (IGP),可以在單個自治系統(tǒng)內路由數(shù)據(jù)包。與其他 IGP 不同,OSPF 是一種鏈路狀態(tài)路由協(xié)議。換句話說,它依賴于鏈路狀態(tài)信息來計算路由路徑并做出路由決策。OSPF 基于 Dijkstra 算法來尋找兩點之間的最短路徑。
OSPF 相對于其他路由協(xié)議(包括 BGP)的主要優(yōu)勢之一是其高效的路徑選擇。此外,OSPF 比 BGP 具有更快的收斂時間,這意味著它可以快速檢測網(wǎng)絡中的變化并相應地更新其路由表。然而,OSPF 需要比 BGP 更多的內存和處理能力,因為它需要在其路由表中存儲有關鏈路的所有信息。
BGP 常用于 Internet 冗余、WAN 和 IaaS 環(huán)境。OSPF 主要用于 LAN 和數(shù)據(jù)中心,但偶爾也可用于 WAN 和 IaaS 環(huán)境。
| BGP 與OSPF 的應用場景
不過BGP 與OSPF 在大多數(shù)情況下一起使用。在數(shù)據(jù)中心,OSPF 通常是網(wǎng)絡交換機和/或路由器之間內部路由的通用協(xié)議。當該流量需要傳輸?shù)搅硪粋€組織時,就需要BGP 協(xié)議了。
EIGRP
EIGRP 由思科在 1990 年代開發(fā),最初僅限于在思科產品中使用。2013年前后,思科向IETF提出了EIGRP作為協(xié)議草案進行審查,最終批準成為官方標準。迄今為止,它仍處于 IETF 的草案模式。
與 BGP 不同,EIGRP 是一種內部網(wǎng)關協(xié)議,它在組織完全管理的網(wǎng)絡中動態(tài)路由數(shù)據(jù)流量,例如企業(yè)或政府。EIGRP 被視為混合協(xié)議,使用以下兩種協(xié)議類型的功能:
距離矢量路由,其中路由器定期發(fā)送消息,通知相鄰路由器網(wǎng)絡拓撲的任何變化;
鏈路狀態(tài)路由,發(fā)送消息通知每個路由器整個網(wǎng)絡拓撲。
EIGRP 使用擴散更新算法 (DUAL) 來計算網(wǎng)絡中到達目的地的最短路徑。該算法允許快速收斂時間,這意味著當網(wǎng)絡發(fā)生變化時,EIGRP 可以快速適應并找到新的數(shù)據(jù)傳輸路徑。
與 BGP 相比,EIGRP 具有幾個優(yōu)點。它比 BGP 更容易配置和維護,因為它需要更少的參數(shù)和更少的人工干預。它還可以更有效地使用帶寬和內存等資源,更適合資源有限的網(wǎng)絡。而且它提供比 BGP 更快的收斂時間。
但EIGRP 也有一定的局限性。例如,雖然 EIGRP 同時支持 IPv4 和 IPv6 地址,但 BGP 同時支持 IPv4 和 IPv6 地址以及多個自治系統(tǒng),這使得BGP更適合具有復雜拓撲結構的大型網(wǎng)絡。此外,由于 EIGRP 是專有協(xié)議,它在其他供應商設備上的實施可能具有挑戰(zhàn)性。
| BGP 與EIGRP的對比
11
BGP在數(shù)據(jù)中心網(wǎng)絡中的應用
下面介紹具體網(wǎng)絡架構場景下的BGP。在DC1場景中,有五排機架,排列成Spine-Leaf的網(wǎng)絡架構。推薦使用EBGP建立VXLAN Underlay網(wǎng)絡。每排機架采用EBGP時的網(wǎng)絡設計如下圖所示。每個主干或葉子交換機都有自己的 AS 編號。
| DC1場景下運行EBGP
EOR交換機部署DC2場景的EBGP設計如下圖所示。
| DC2場景下運行EBGP
第一排機架可以分配AS號AS65000和AS65001,然后每臺設備的AS號依次遞增1。如果在DC中選擇IBGP進行VXLAN Overlay路由交換,設計會很簡單,因為只需要為DC1中的所有設備分配相同的AS號。同樣的方法也可以用在DC2中,如下圖所示。
| DC1場景下運行IBGP
| DC2場景下運行IBGP
12
未來發(fā)展
隨著IPv4地址的枯竭,未來的互聯(lián)網(wǎng)將越來越多地使用IPv6地址。因此,未來的BGP協(xié)議可能會更好地支持IPv6地址。此外,隨著自動化技術的進步,BGP協(xié)議可能會更加智能化和自動化,以便更快速地適應網(wǎng)絡變化。
總的來說,未來的BGP協(xié)議可能會更加智能、自動化和安全,以適應不斷變化的互聯(lián)網(wǎng)環(huán)境和用戶需求。
審核編輯 :李倩
-
網(wǎng)絡安全
+關注
關注
11文章
3341瀏覽量
61464 -
路由協(xié)議
+關注
關注
1文章
128瀏覽量
29969
原文標題:圖解BGP協(xié)議:路由選擇與網(wǎng)絡安全
文章出處:【微信號:SDNLAB,微信公眾號:SDNLAB】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
動態(tài)BGP與靜態(tài)BGP的區(qū)別?
網(wǎng)絡安全隱患的分析
【§網(wǎng)絡安全技巧§】利用路由器的安全特性控制DDoS攻擊
動態(tài)BGP與靜態(tài)BGP的區(qū)別
網(wǎng)絡安全協(xié)議
BGP路由監(jiān)測與分析研究
Zebra與BGP路由監(jiān)測的實現(xiàn)
BGP協(xié)議的路由選擇原則
基于BGP協(xié)議屬性的路由策略

bgp路由協(xié)議的路由屬性_BGP路由協(xié)議的優(yōu)勢

評論