您所在的位置: 首頁 >
新聞資訊 >
技術前沿 >
基于SDN的互聯網域間路由研究
互聯網流量的爆發式增長,疊加互聯網流量固有的突發性特點,使得網絡流量不均衡現象日益加劇。傳統BGP協議由于缺乏全網拓撲和全局流量觀,只能遵循標準BGP選路原則,在解決流量調度和負載均衡方面存在不足。針對BGP協議存在的局限性,研發了基于RR+的互聯網骨干網流量調度系統,并應用于ChinaNet骨干網的網內中繼、網間互聯出口、IDC出口等多個流量優化場景。更進一步地,提出了一種基于SDN的互聯網域間路由架構,通過在域間控制器之間交換BGP路由,無需在域內和域間運行BGP協議,極大地簡化了網絡協議,并能夠實現靈活的流量調度和負載均衡。
邊界網關協議(Border Gateway Protocol,BGP)作為互聯網基石的網間互聯協議,已經把全世界所有大大小小的網絡互聯在一起,形成通達全球的Internet。BGP用于在不同自治系統(Autonomous System,AS)之間交換路由信息,實現不同AS之間IP可達性。
隨著互聯網流量的爆發式增長,網絡擴容總是滯后于流量增長速度,網絡資源捉襟見肘。網絡需要為高價值業務提供更好的傳輸服務,在保持效率優先的同時,還能夠體現出互聯網服務的普惠性和公平性,而傳統互聯網“盡力而為”的服務模式難以兼顧兩者之間的平衡。
與此同時,互聯網固有的流量突發性導致網絡流量不均衡,表現為網絡中部分鏈路擁塞不堪,而另一部分鏈路利用率低下,難以實現全網資源的最佳利用。盡管BGP可以提供靈活豐富的路由策略實現流量路徑優化和負載均衡,但是由于全網設備都需要運行BGP,網絡運維人員需對設備進行復雜化、個性化的配置操作,進一步增加了網絡運維難度。
為簡化網絡操作,提升網絡效率,降低網絡運營商的CAPEX和OPEX,近年來SDN技術受到網絡界的追捧,全球運營商和設備提供商正積極探索利用SDN技術實現網絡運維自動化,提升網絡的智能化水平,實現極簡網絡。
本文分析用于互聯網域間路由的BGP協議存在局限性,然后研究利用SDN技術實現智能化域間路由,以期達到簡化網絡、優化全網流量、實現多出口負載均衡的目的。
1. BGP協議的局限性分析
BGP是運行于TCP之上的自治系統邊界網關協議,必須在交換路由更新之前協商建立TCP連接。因此,BGP繼承了TCP的傳輸可靠性和面向連接的特性。BGP根據在BGP鄰居之間交換的路由信息建立一張自治系統圖。從BGP角度來看,整個互聯網就是由自治系統組成的一張圖。
BGP通告的網絡層可達信息(Network Layer Reachablility Information,NLRI)可攜帶豐富的路徑屬性(Path Attribute)。其中,AS_PATH屬性包含到達該目的網絡所經過的一串AS列表,BGP基于AS_PATH屬性確保無環路的路徑選擇。
NEXT_HOP屬性用于IP報文轉發必經的下一跳,其他如LOCAL_PREF、MULTI_EXIT_DISC、COMMUNITY屬性可由網絡管理員實施BGP路由策略,根據網間負載實際情況選擇流量出、入的最佳出口,根據自治系統內部網絡的鏈路負載情況選擇最優路徑等。
在一個由運營商管理的單個互聯網自治系統中,網絡規模龐大。例如,中國電信、中國聯通和中國移動的互聯網骨干網通常由成百上千臺核心路由器組成,不同網絡之間通過十幾臺自治系統邊界路由器(Autonomous System Boundary Router,ASBR)進行網間互聯,以實現網間流量在多出口負載均衡。
充當網關設備的ASBR之間運行EBGP協議用于交換域間路由信息,而在自治系統內部網絡,路由器需要進行全網狀的IBGP連接,用于學習外部網絡路由,防止產生路由黑洞。
因為網內路由器數量大,全網狀IBGP連接需要消耗大量CPU處理資源,存在嚴重的擴展性問題,所以普遍采用路由反射器(Route Reflector,RR)方式,網內路由器只跟RR建立IBGP連接。
盡管如此,由于網內路由器需同時運行IGP、BGP等多種路由協議,為實現全網流量工程和負載均衡,須協同IGP和BGP路由協議配置復雜的路由策略,使得網絡的運行和維護變得十分復雜。此問,不同路由策略之間相互影響,難以達到預期的優化目標。
現以RR優選BGP路由為例,分析基于BGP的路徑選擇的局限性。
由于自治系統存在多個ASBR出口,基于路徑冗余和負載均衡考慮,對端AS會從多個ASBR向本AS對應的ASBR鄰居通告相同路由信息,網內這些ASBR鄰居收到同一目的網絡路由并向RR通告。當RR接收到屬于外網同一目的地網絡的多條路由時,RR遵循標準BGP選路原則優選唯一一條BGP路由向全網路由器反射。
這種基于RR的BGP路徑優選存在以下局限性。
(1)BGP路由選擇的唯一性原則無法實現流量的多路徑負載均衡。
(2)RR基于自身到通告路由器(下一跳)的IGP度量(Metric)值選擇一條IGP距離最近的路由,這個優選的路由與RR所處的位置有關,并不能代表全網其他路由器到這個被選定的BGP下一跳是最近的。RR全網拓撲視角的缺失導致次優路由的產生。
(3)只能基于報文流目的IP地址選路,不考慮源IP地址或基于元組對業務流選路。
(4)由于缺乏全局拓撲和全局流量觀,無視全網資源利用情況,因此無法實現全網流量工程。
(5)RR遵循標準BGP選路原則,無法實現流量按照規劃的路徑進行疏導。
以圖1為例說明RR選路引發次優路由問題。RR收到來自北京ASBR和廣州ASBR到其他運營商的同一目的Prefix的路由,由于RR放置位置的不同,RR根據IGP Metric計算自身到北京ASBR和廣州ASBR的距離,發現廣州ASBR距離自身的IGP距離最近,于是把廣州ASBR作為該路由的下一跳向全網反射。
這樣帶來的結果是,由北京片區的路由器轉發的數據流要繞轉至廣州ASBR出口,而不是最短距離的北京ASBR出口。但是,根據實際網絡拓撲,RR應該向北京片區的路由器反射該Prefix的路由的下一跳為北京ASBR,而向廣州片區的路由器反射該Prefix的路由的下一跳為廣州ASBR。這樣不僅可以實現流量的負載均衡,而且減少路徑繞轉,提高網絡效率。
圖1 RR選路引發次優路由
2. 基于SDN的互聯網域間路由
起初在制定BGP協議標準時,主要是為了解決全球互聯網跨自治域的IP可達性及擴展性問題。隨著互聯網流量爆發式增長和網絡規模的持續擴展,網絡流量不平衡以及服務同質化現象日益突出。傳統基于RR的BGP路徑選擇由于缺乏全網拓撲和全局流量觀,難以實現全網流量工程,也難以為服務質量要求較高的客戶提供優化路徑。
SDN具有控制和狀態集中、網絡控制面和數據轉發面解耦以及網絡可編程等特點。通過集中控制器實現全網拓撲自動發現,基于業務需求為客戶提供定制化的網絡服務。
這種全新的網絡架構帶來的最大好處是集中控制器具有全局流量觀和全網的資源利用視圖,能實時發現各鏈路的帶寬利用情況,因此能基于每個業務流的源、宿端位置以及QoS需求(包括帶寬、時延、丟包等),并結合各鏈路負載情況為不同業務流確定合適的路徑。
因此,SDN技術在實現流量工程和負載均衡方面具有天然優勢,目前廣泛部署在運營商網絡和大規模云數據中心需要流量優化的場景。
2.1 基于RR+實現互聯網骨干網流量優化
針對傳統RR在BGP路徑選擇存在的局限性,研究RR實現流量調優能力,并對現有BGP路徑選擇原則進行改進。借助于SDN集中控制的思想,使改進的RR系統(被命名為RR+)具有發現全網拓撲和實時收集全網鏈路流量數據的能力。
同時,基于采集的Netflow流量流向數據分析到外網的目的Prefix所承載的流量TOP N排名,根據網內中繼鏈路負載情況以及域間各個出口的負載情況,在鏈路利用率超過閾值的流量中挑選合適的業務流,通過修改BGP路徑屬性(如修改NEXT_HOP、LOCAL_PREF)等方式,把這部分流量分流到鏈路相對輕載的中繼鏈路和出口,從而達到實現全網流量工程和負載均衡的目的。RR+系統如圖2所示。
圖2 RR+流量調度系統
RR+系統主要包含如下功能模塊:
(1)拓撲管理。系統支持南向BGP-LS接口收集全網拓撲數據,根據形成的拓撲數據庫自動發現全網拓撲結構。
(2)BGP路由管理。系統基于BGP學習網內網外BGP路由,包括來自多個ASBR的相同目的網絡的多路徑路由。
(3)鏈路流量分析。系統基于SNMP收集全網鏈路實時流量數據,對超過鏈路利用率閾值的鏈路以及利用率低下的鏈路進行顏色標記。
(4)流量流向分析。系統基于Netflow收集全網流量流向數據,生成流量流向矩陣表,并對網外目的prefix承載流量的TOP 進行排序。
(5)BGP路徑選擇。根據鏈路流量數據分析模塊得到標記顏色的超過利用率閾值的鏈路、利用率低下的鏈路以及根據流量流向分析模塊得到超過利用率閾值的鏈路承載外網目的prefix流量TOP 排名,在超過利用率閾值的鏈路挑選相應目的prefix的業務流分流到利用率較低的鏈路和出口,形成到出口的端到端優化路徑。
(6)路由策略管理。根據選擇的優化路徑,修改相應BGP路徑屬性(如NEXT_HOP、LOCAL_PREF等)生成BGP路由策略,向網內相關路由器通告。研發的RR+流量調優系統已部署在中國電信ChinaNet骨干網中,實現對網內中繼、網間互聯出口以及IDC出口等多場景的流量調度,達到均衡網絡流量、提升服務質量的效果。
2.2 基于SDN的互聯網域間路由
盡管RR+系統豐富了互聯網流量調優手段,但是全網仍需運行IGP和BGP等多種路由協議,配置復雜的路由策略,并未從根本上簡化網絡。本文提出一種基于SDN的互聯網域間路由架構,能夠真正簡化網絡協議,降低網絡運維復雜度。
在各互聯網AS內部署獨立的SDN控制器。AS域內路由器只需運行IGP協議,無需運行iBGP和eBGP。由各AS域內的SDN控制器負責域間路由信息交換,各個域內的ASBR不再像傳統方式通過eBGP交換域間路由。
SDN控制器收集全網路由信息并相互交換各自域內的路由信息,基于收集的全網拓撲信息對域間路由進行決策控制,然后向AS內全網路由器下發域間路由的轉發信息表。這樣AS內路由器對目的地址為外網的流量依據下發的域間路由轉發信息表進行轉發。
現以圖3為例對該域間路由架構進行描述。
圖3 一種基于SDN的互聯網域間路由架構
各AS中的SDN控制器對收集到的網內路由進行匯總。SDN控制器之間可以采用非常成熟的BGP協議進行交換路由信息。圖3中AS1的控制器向AS2的控制器通告AS1的4條匯總路由1.0.0.0/8~4.0.0.0/8;AS2的控制器向AS1的控制器通告AS2的4條匯總路由5.0.0.0/8~8.0.0.0/8;雙方通告路由時,可以選擇指定下一跳信息。例如,AS1的控制器在通告的2條匯總路由1.0.0.0/8~2.0.0.0/8時選擇ASBR1作為下一跳,在通告的2條匯總路由3.0.0.0/8~4.0.0.0/8時選擇ASBR2作為下一跳。
為實現網間流量在多個ASBR間負載均衡,SDN控制器根據交換得到的域間路由信息及全網拓撲視圖信息,并根據監測到每條匯總域間路由承載的流量大小及多個出口域間鏈路的利用率情況,向全網路由器(除ASBR外)動態下發指定下一跳的域間路由信息。
網內路由器根據IGP最短路徑把外出流量轉發到一個或多個指定ASBR。網內所有路由器只需運行IGP協議,無需運行IBGP和eBGP協議。同時,在所有ASBR上配置缺省路由,出接口為網間互聯接口,外出流量根據缺省路由轉發到網間互聯鏈路。假設AS1中控制器監測到AS2通告的2條匯總路由5.0.0.0/8~6.0.0.0/8承載的流量為10 Gb/s,監測到AS2通告的2條匯總路由7.0.0.0/8~8.0.0.0/8承載的流量為20 Gb/s。AS1中控制器同時也監測到ASBR1與ASBR3之間網間互聯鏈路帶寬利用率比較高,剩余帶寬只能承載10 Gb/s的流量,而監測到ASBR2與ASBR4之間網間互聯鏈路帶寬利用率較低,剩余帶寬能夠承載20 Gb/s的流量。這時AS1中控制器優選ASBR1作為目的地址為5.0.0.0/8~6.0.0.0/8范圍內的IP流量的出口,把域間匯總路由5.0.0.0/8~6.0.0.0/8向全網除ASBR外的路由器通告(如圖中R1和R2),并為5.0.0.0/8~6.0.0.0/8路由指定下一跳為ASBR1。
同樣地,AS1中控制器優選ASBR2作為目的地址為7.0.0.0/8~8.0.0.0/8范圍內的IP流量的出口,把域間匯總路由7.0.0.0/8~8.0.0.0/8向全網除ASBR外的路由器通告,并為7.0.0.0/8~8.0.0.0/8路由指定下一跳為ASBR2。
以上描述了SDN控制器根據多出口鏈路帶寬利用率情況實現外出流量在多個出口之間的負載均衡。SDN控制器也可以根據指定路徑、最短路徑、最小時延等策略,為不同外網目的IP地址的報文流指定出口路由器,無需基于BGP路由策略這種復雜的傳統技術實現多出口負載均衡。
3 結 語
互聯網經歷了半個世紀的發展,已成為現代社會不可或缺的關鍵信息基礎設施,把人類文明駛向一個嶄新的高度。BGP協議把分散在全球各地的一個個孤立網絡互聯在一起,很好地解決了各個自治系統之間的連通性。
可以毫不夸張地說,沒有BGP協議就沒有Internet。隨著互聯網流量的急劇膨脹,疊加互聯網流量固有的突發性,網絡流量不均衡現象日益加劇。同時,互聯網上新業務和新應用層出不窮,互聯網服務需要“效率優先、兼顧公平”。面對互聯網新的變化趨勢,傳統BGP協議也在不斷完善和發展,重新煥發出新的生命力。
然而,BGP不斷擴展新的功能,在帶給網絡靈活調度的便利性同時,也增加了網絡運維復雜度。SDN技術在簡化網絡、實現流量工程和負載均衡方面具有天然優勢,可以彌補BGP協議的不足。針對BGP存在的局限性,研發了基于RR+的互聯網骨干網流量調度系統,并應用于ChinaNet骨干網多個流量優化場景。
更進一步,文章提出了一種基于SDN的互聯網域間路由架構,極大地簡化了網絡協議,并能夠實現靈活的流量調度和負載均衡。后續將繼續探索利用SDN技術來提升互聯網的服務水平。
引用本文
何曉明,劉寧芳,陳文華?;赟DN的互聯網域間路由研究[J].通信技術,2020,53(05):1146-1150.
HE Xiao-ming,LIU Ning-fang,CHEN Wen-hua.Research on Inter-Domain Routing Based on SDN[J].Communications Technology,2020,53(05):1146-1150.
作者簡介:
何曉明(1968—),男,博士,高級工程師,主要研究方向為數據網絡;劉寧芳(1973—),男,碩士,工程師,主要研究方向為數據網絡;陳文華(1967—),男,學士,高級工程師,主要研究方向為數據網絡、云計算。
選自《通信技術》2020年第五期 (為便于排版,已省去原文參考文獻)