黃俊敏
【摘要】 政企客戶通過BGP/MPLS VPN組網(wǎng)比較普遍,重要客戶為了提高網(wǎng)絡(luò)的可靠性,和SP構(gòu)建雙宿網(wǎng)絡(luò),通過EBGP自動恢復(fù)網(wǎng)絡(luò)問題,同時利用BGP豐富的路由控制功能提高鏈路資源利用。本文通過雙PE、雙CE完成一個典型的雙宿專網(wǎng)部署。
【關(guān)鍵詞】 雙宿 BGP AS 路由
一、雙宿專網(wǎng)的路由協(xié)議比較
政企客戶為了提高整個信息系統(tǒng)的彈性與可靠性,增加帶寬,會在中心機房設(shè)置雙核心設(shè)備,租用多條專線,實現(xiàn)冗余和熱切換。最常見的情況是租用同一SP(服務(wù)提供商)兩條專線,實現(xiàn)雙宿(dual homed)的BGP/MPLS VPN專網(wǎng),下面的分析基于這種三層專網(wǎng)。
1.1靜態(tài)路由方式
在客戶和SP之間轉(zhuǎn)發(fā)分組,最簡單的方法是在客戶邊緣路由器和SP之間配置靜態(tài)路由。這種路由在客戶和SP達成配置一致后,應(yīng)無需經(jīng)常修改。靜態(tài)路由的缺點是靈活性和適應(yīng)性不夠,需要人工干預(yù)切換路由,涉及到SP和客戶雙方配合管理,維護反應(yīng)時間比較長
1.2 IGP動態(tài)路由方式
內(nèi)部網(wǎng)關(guān)協(xié)議用于自治系統(tǒng)(AS)內(nèi)部交換路由信息,OSPF是客戶網(wǎng)絡(luò)使用最為廣泛的路由協(xié)議。使用IGP路由協(xié)議,SP和客戶的網(wǎng)絡(luò)互相開放,耦合程度高,網(wǎng)絡(luò)風險大。使用IGP無法在SP的BGP/MPLS VPN實現(xiàn)穿透,需要重分發(fā)路由,路由控制不方便,對SP的PE資源占用高。
1.3 EBGP動態(tài)路由方式
BGP是一種域間路由協(xié)議,主要用于自治系統(tǒng)之間,提供一種域間路由系統(tǒng),確保自治系統(tǒng)能夠無環(huán)路地交換有關(guān)前往目標網(wǎng)絡(luò)的路徑信息。當BGP用于不同自治系統(tǒng)之間時,也稱為EBGP(同一自治系統(tǒng)內(nèi)使用IBGP)。BGP是一種基于策略的路由協(xié)議,讓自治系統(tǒng)能夠根據(jù)多種BGP屬性來控制數(shù)據(jù)流的傳輸。運行BGP的路由器交換被稱為路徑矢量或?qū)傩缘木W(wǎng)絡(luò)可達性信息,其中包括前往目標網(wǎng)絡(luò)時經(jīng)過的完整路徑(BGP自治系統(tǒng)號列表)。BGP讓組織能夠操縱這些路徑屬性,以充分利用帶寬。
1.4路由協(xié)議綜合對比
1、SP和客戶網(wǎng)絡(luò)使用EBGP路由協(xié)議具有以下優(yōu)點:
適應(yīng)所有網(wǎng)絡(luò)拓撲變化;自動冗余切換;可以區(qū)別對待SP和客戶的數(shù)據(jù)流;多條電路之間均衡負載;實施不同的策略,方便路由控制;利用TCP窗口機制,路由信息傳遞可靠、效率高,適合大量路由信息更新;BGP易于擴展,能夠適應(yīng)網(wǎng)絡(luò)新的發(fā)展。
2、SP和客戶網(wǎng)絡(luò)使用EBGP路由協(xié)議具有以下不足:
路由器的內(nèi)存和處理器性能要求高;維護配置要求高,對路由過濾和BGP路徑過程熟悉;
二、EBGP部署
2.1網(wǎng)絡(luò)拓撲
SP為客戶組建BGP/MPLS V PN后,為了進一步提高可靠性,一些重要客戶會選擇雙宿,網(wǎng)絡(luò)拓撲如圖1。
重要客戶在配置雙核心雙鏈路以及安全設(shè)備,后者會隔離客戶核心路由器對鏈路的通斷感知,SP提供的光電轉(zhuǎn)換器/ONU也會隔離網(wǎng)絡(luò)設(shè)備對光纖鏈路通斷的感知,在這種情況下部署動態(tài)路由,尤其是EBGP是比較好的選擇。
2.2 EBGP參數(shù)確定
在配置EBGP時,必須滿足多個條件。
(1)自治系統(tǒng)號不同:要建立EBGP鄰接關(guān)系,EBGP鄰居必須位于不同自治系統(tǒng)中;
(2)定義鄰居:交換BGP路由更新前,必須建立TCP會話;
(3)可達:在鄰居指定的地址必須可達,EBGP鄰居通常是直連的。[1]
開始配置前,客戶和SP需要預(yù)先把相關(guān)參數(shù)進行溝通確認。IP地址或互聯(lián)地址,由客戶規(guī)劃網(wǎng)絡(luò)時確定,在配置時提供給SP, EBGP常使用互聯(lián)地址建立鄰居;AS號是一個16位數(shù)字,取值范圍1-65535,一般專網(wǎng)使用私有AS號,范圍64512-65535,這類似于私有IP地址,具體由SP確定,并分配給客戶使用;路由策略原則上由SP確定,客戶提出要求,雙方通過路由策略宣告網(wǎng)絡(luò);雙宿鏈路的帶寬負荷策略由客戶提供,雙方SLA協(xié)商確定,通過BGP具體選擇和分配負荷。
2.3 設(shè)備部署EBGP
(1)SP 配置EBGP
PE1是SP的設(shè)備,具體型號為阿朗的SR7750。配置中第1行進入客戶VPN專網(wǎng),第6行進入BGP配置,第12行配置PE1的AS號,13行配置客戶CE1的AS號,兩個AS號不一樣構(gòu)成EBGP的基本條件。第14行指定本地BGP更新的源地址,16行配置BGP對等體。其中11行是BGP通告的網(wǎng)段前綴,可以用于路由過濾。
PE2是SP普遍采用的華為NE80E路由器。第1行進入BGP配置視圖,第2行進入對應(yīng)BGP/MPLS VPN實例視圖,第9行配置EBGP對等體,3-5行采取聚合方式發(fā)布路由,并且通過參數(shù)detail-suppressed關(guān)閉默認的詳細路由通告。由于10.79.235.0/24在其他PE上還有子網(wǎng)段,因此PE2必須發(fā)布詳細網(wǎng)絡(luò)通告,否則其他PE無法學到PE2上正確的詳細路由,同時CE2需要實施入路由過濾,防止詳細路由在客戶網(wǎng)絡(luò)通告,通告詳細路可能導(dǎo)致客戶到SP的路由和回程路由不一致,容易形成路由黑洞。
(2)客戶配置EBGP
客戶的CE1和CE2是完全相同的網(wǎng)絡(luò)設(shè)備,采用的是H3C的S7506E核心交換機,對兩臺客戶CE做統(tǒng)一說明。第1行進入BGP配置視圖,第2行通告本CE上的網(wǎng)段,第3、4行分別重分發(fā)直連和靜態(tài)路由到BGP。第5、7行表明客戶網(wǎng)絡(luò)運行了IBGP,因此需要在全互聯(lián)的IBGP網(wǎng)絡(luò)禁用BGP同步,第4行禁用BGP同步。第5行配置PE為CE的EBGP對等體,第9行允許BGP通告默認路由。
2.4 通告網(wǎng)絡(luò)
將網(wǎng)絡(luò)通告到BGP有兩種方法,一是使用命令network,二是將路由從IGP重分發(fā)到BGP。不建議將路由從IGP直接重分發(fā)到BGP,因為IGP路由出現(xiàn)任何變化(如鏈路出現(xiàn)故障), 都將導(dǎo)致BGP更新,從而使BGP表不穩(wěn)定。
使用network通告網(wǎng)絡(luò)是實際中通常采用的方法。 BGP通告網(wǎng)絡(luò)時使用精確匹配通告,當指定了網(wǎng)絡(luò)掩碼,則僅當路由選擇表中有與該網(wǎng)絡(luò)地址和掩碼完全匹配的條目時,該網(wǎng)絡(luò)才被通告出去。例如,客戶網(wǎng)絡(luò)為10.79.224.0/26,由于該網(wǎng)絡(luò)被分成了多個子網(wǎng),因此沒有辦法直接通告,當然可以寫多條對應(yīng)子網(wǎng)的network,一般在配置的時候使用一條指向空接口的靜態(tài)路由,ip route-static 10.79.224.0 255.255.255.192 NULL0,這樣BGP將在路由表中找到完全匹配的條目,進而將網(wǎng)絡(luò)10.79.224.0/26通告給鄰居。由于路由表使用最長匹配原則,在同一自治區(qū)域內(nèi),數(shù)據(jù)轉(zhuǎn)發(fā)時不會使用到黑洞路由,如果該網(wǎng)絡(luò)的子網(wǎng)絡(luò)不連續(xù),出現(xiàn)空缺,到空缺網(wǎng)絡(luò)的數(shù)據(jù)將被丟棄。PE上BGP網(wǎng)絡(luò)通告的原理和CE上一致,這里不再一一列舉,需要注意的是華為NE80E會自動通告BGP/MPLS VPN的詳細路由給EBGP對等體,可以使用aggregate發(fā)布聚合路由,具體配置在前文已有闡述。
2.5 負荷分擔
BGP可以感知鏈路和拓撲的變化,自動完成冗余設(shè)備和鏈路的切換,切換時間由BGP的收斂時間決定。冗余鏈路一般閑置不用,發(fā)生障礙才切換,整體帶寬利用率低于50%。不同于內(nèi)部路由協(xié)議,BGP并非用于選擇最快路徑,而是用于控制數(shù)據(jù)流的傳輸帶寬,以最大限度地利用帶寬。 客戶網(wǎng)絡(luò)初始設(shè)計是主、備網(wǎng)絡(luò),CE1至PE1鏈路主用,CE2至PE2鏈路備用。BGP通過使用路由映射表,CE2為自治系統(tǒng)AS 64512中的所有路由器通告一個比CE1更高的本地優(yōu)先級,由于運行BGP的路由器首選本地優(yōu)先級最高的路由,因此可以把流量調(diào)節(jié)到CE2備用電路??蛻艟W(wǎng)絡(luò)(AS 64512)主要由用戶服務(wù)器以及上級網(wǎng)絡(luò)組成,BGP/MPLS VPN的其他site訪問這些服務(wù)器,數(shù)據(jù)從客戶網(wǎng)絡(luò)(AS 645112)流出到SP側(cè)的BGP/MPLS VPN(AS 64663),客戶可以通過在CE2的BGP配置,調(diào)節(jié)部分流量從CE2至PE2鏈路流出,提高帶寬利用率。下面的配置調(diào)整10.79.230.0/23網(wǎng)段流量走備用鏈路。
第3行在入方向應(yīng)用路由策略修改路由的本地優(yōu)先級屬性。4-6行對acl 2000匹配的目的網(wǎng)絡(luò)路由設(shè)置本地優(yōu)先級150(默認為100),第7行匹配其他所有網(wǎng)段,不做修改??蛻艟W(wǎng)絡(luò)的所有路由器將根據(jù)本地優(yōu)先級修改路由表,最終把去往目的網(wǎng)絡(luò)的流量送向備用鏈路。
對于入流量,需要使用BGP屬性MED來操縱數(shù)據(jù)流進入客戶網(wǎng)絡(luò)(AS 64512)的方式,在CE上建立路由策略:
route-policy route-policy permit node 10
apply cost 100
配置MED值為100,默認為0,值越小越優(yōu)先,這樣通告出去的路由,對端PE會參考MED值調(diào)低路由選擇優(yōu)先級。在BGP配置視圖下,CE在出方向引用路由策略,使MED調(diào)整發(fā)生作用,但MED屬性只能對SP的PE進行建議,具體選路還是以PE的本地優(yōu)先級為主,要達到控制入流量需要SP配合,客戶網(wǎng)絡(luò)無法完全控制。
三、結(jié)束語
EBGP是部署在客戶雙宿專網(wǎng)最好的路由協(xié)議,在增加網(wǎng)絡(luò)冗余和彈性的同時,自動根據(jù)網(wǎng)絡(luò)拓撲或鏈路的變化作出合適的路由調(diào)整,滿足客戶專網(wǎng)高可用性要求。由于BGP在路由通告和控制上很方便,非常適合SP和客戶這樣不同的網(wǎng)絡(luò)管理群體使用,雙方的管理策略互不干涉??蛻魧>€的經(jīng)濟性關(guān)注度比較高,希望提高冗余鏈路的利用率,EBGP可以由客戶控制負荷分擔的比例,達到鏈路的合理利用。
參 考 文 獻
[1] Dinae Teare著 袁國忠譯 《CCNP ROUTE(642-902)學習指南》 人民郵電出版社 2012 第418頁