李瑋 孫丹青 袁榮宇
[摘要]BGP作為目前Internet骨干網上常用的核心路由協議,亦是應用最為廣泛的路由協議之一,是整個Internet穩定運行的基礎。但在部署過程中,BGP日益凸顯出路由不穩、擴展性受制以及慢收斂等方面的問題,而且伴隨著互聯網不斷擴大發展導致網絡結構復雜化,上述問題也愈發嚴重。本文對上述問題出現的原因進行分析,欲從直接方式以及間接方式對該問題加以解決,希望對今后的BGP的應用發展有所借鑒作用。
[關鍵詞]BGP 路由協議 問題 解決方案
前言:
BGP即邊界網關協議,作為當前多數路由器生產商普遍采用并實現產品支持的協議,主要作用在路由器不同自治系統之間或者同一自治系統內,其穩定性將會對整個網絡運行可靠性造成直接的影響。隨著網絡已經覆蓋了日常生活的方方面面,已經給現如今人們的生活方式帶來巨變,因此現階段對于網絡的穩定性也有著更高的要求,對此研究BGP在應用過程中存在的問題,并采取有效措施予以解決就有著重要的實際價值。
一、BGP實際應用過程中存在的問題
1.1路由不穩定
造成路由不穩定的原因為網絡可達性或者是拓撲信息急劇變化,也被人們稱為“路由振蕩”。路由不穩定不但會增加網絡丟包率還會增加收斂時間,嚴重時會導致終端性能受損,影響網絡正常工作。導致路由不穩定的因素有很多,可歸為兩大類:第一,生產路由器時的軟硬件抉擇。部分路由器廠商收到路由更新問題時,因為BGP實現中沒有對等體路由信息進行維護,所以他們不管有沒有向其發送相應更新,只是簡單的做出等體轉發。第二,配置問題。由于某路由的交互信息對域外的其他路由器是不可見的,致使很多錯誤的配置不容易定位,因此,僅僅是ISP錯誤配置就會導致一部分網絡崩潰。
1.2慢收斂特性
BGP的另一個問題就是慢收斂特性,雖然域內路由協議能夠有數十毫秒級左右的收斂時間,但與PSTN的收斂時間相對比要慢得多了,而且,若是某處發生故障問題,要想達成對互聯網拓撲共識還要花費很長時間。最早我們都認為是由于CPU處理時延和排隊延遲造成的,但真正的原因極有可能是不同生廠商的協議實現抉擇和協議定時器出現配置錯誤造成的。由于BGP使用了路徑向量算法,這就能夠減少不必要的更新傳播以及避免路由壞路。但即使是這樣,也不能破解路由反彈問題,還可能會使振蕩的次數以指數增加。
1.3可擴展性受制
路由資源占用比以及鏈路資源占用比兩者是評價路由可擴展性的重要指標,BGP使用的是遞增更新機制,所以其鏈路資源占用比非常小。BGP所占用的路由資源主要有如下兩方面的內容,第一,CPU資源占用。在網絡拓撲相對較為穩定時,BGP此時并不會占用過多的CPU,一旦出現網絡拓撲變化,此時CPU資源將會進行消息處理以及策略計算。第二,路由器內存損耗。對于BGP在可擴展方面而言,其影響因素主要是互聯網內的網絡層數、路由策略復雜程度以及BGP會話數。
二、BGP實際應用過程中存在問題的有效解決措施
2.1直接方法
直接方式主要是對BGP進行改造,從而使其功能得到增強。可以采用的方式是采用路由衰減,該方式保證對等體所獲取的路由前綴具有一定的懲罰值,這個懲罰值依照路由更新所屬種類的不同在其基礎上增加或者是降低某一固定值,諸如接收到的通告更新與撤銷更新,懲罰值所要增加的固定值便是不一樣的。一旦懲罰值大于該路由器所設定的抑制閾值時,該前綴將不會繼續使其進行數據報文方面的轉發。此外,懲罰值還會在一定時間內根據指數函數進行遞減,當懲罰值減小至路由器所設定的啟動閾值時,該路由變回可用路由,參與路由優選。
2.2迂回方法
可以采用的方式有路由服務器、Detour網絡以及彈性覆蓋網絡三種方式。其中路由服務器得到了普遍的應用,已經是目前網絡基礎設施中重要的組成部分,而Detour網絡目前尚不成熟,存在這諸多的問題,因此要對其進行深入的研究,彈性網絡覆蓋作為與分布式網絡相適應的方式,可以依據自身關心參數實現路由選擇。
三、結語
路由器作為目前網絡中普遍應用的設備,除數據轉發性能外,穩定性也是人們重點關注的因素。本文通過BGP路由協議呈現出的問題加以淺層分析,提出對應的解決方案,希望實現問題的有效解決。也希望通過本文提出的應對辦法,對路由器生產廠商、相關研究人員有所幫助,從而在此基礎上研究出完整的解決方案。