陸 璇 龔向陽 程時端
[編者按] 互聯網目前面臨著各種問題和挑戰,其體系結構再次成為了網絡領域研究的熱點之一。本講座將分為3期介紹互聯網體系結構的研究現狀及未來的展望。第1期介紹了目前互聯網體系結構面臨的挑戰以及國內外的研究現狀。第2期介紹現有互聯網體系結構向新一代互聯網體系結構演進中的關鍵技術與解決方案,內容涉及新型路由尋址體系結構、端到端原則、網絡安全性與可信性等方面的研究。第3期將介紹以全新的革命性方式來解決當前互聯網體系結構缺陷的新一代互聯網體系結構,包括國內外的研究現狀和主要的解決方案,并對新一代互聯網體系結構的研究進行展望和總結。
3 新型路由尋址體系結構
近年來,互聯網的路由可擴展性問題引起了越來越多的關注。在互聯網的無缺省路由域(DFZ)中,路由表的規模正以“超線性”的速度增長,如圖3所示。由于IPv6擁有比IPv4大得多的IP地址空間,隨著IPv6的逐步部署,這種增長速度將會持續下去甚至發生爆炸式的增長。這無疑嚴重影響了互聯網路由系統的可擴展性。
2006年10月,互聯網架構委員會(IAB)在荷蘭的阿姆斯特丹舉行了路由和尋址專題會議。與會專家對目前互聯網路由系統的可擴展性問題達成一致共識,即運營商獨立地址、網絡多歸屬、流量工程以及為應對前綴劫持而采取的策略是導致當前DFZ中路由表規模高速增長的主要原因,其技術上的根本原因是由于IP地址同時承擔標識主機身份和尋址雙重功能而導致的IP地址語義過載。為解決這個問題,多數專家認為需要從根本上對現有路由體系結構進行重新設計規劃。
為解決路由系統的可擴展性問題,目前已經提出了多種方案。這些方案大致可以被歸納為兩類:一類方案是通過減少邊界網關協議(BGP)消息更新的頻率、壓縮路由表或轉發表來解決擴展性問題,如虛擬聚合方案(VA);另一類方案是基于身份標識和位置標識(ID/Locator)分離的思想,將IP地址的主機身份標識與路由標識功能分開,如主機標識協議(HIP)、位置/身份分離協議(LISP)等。第一類方案只解決了路由表、轉發表快速增長的問題。第二類方案不僅能夠減小DFZ中路由表的規模,還支持站點的網絡多歸屬和流量工程,實現路由系統的可擴展。
目前學術界和工業界的很多研究團體已經提出了眾多基于位置和身份分離的方案。大多數方案的設計都遵循兩層命名空間模型,即位置標識命名空間和主機標識命名空間,也有部分方案設計了多層命名空間模型,如分層的因特網命名體系結構(LNAI)。兩層命名空間方案又可以按照位置標識和身份標識分離點的位置不同分為兩類:第一類方案在主機處將ID/Locator徹底分離,這需要對主機作一定的修改;第二類方案在邊界路由器處進行ID/Locator的分離,通過在網關處進行封裝映射來實現,主機無需作任何改變。
3.1 基于虛擬聚合技術的路由體系結構
VA是互聯網工程任務組(IETF)全局路由運作工作組(GROW)提出的一種解決當前路由系統可擴展性的方案。VA的核心思想是阻止路由信息庫(RIB)中非必要表項加載到轉發信息庫(FIB)中,以壓縮FIB的規模。實際上,核心路由器完整覆蓋(CRIO)是最早提出通過壓縮FIB來解決路由可擴展性的方案,VA對其進行了擴展和完善。VA把IP地址空間分成多個虛擬前綴(VP),每個VP是對多個子前綴(目前傳統網絡的網絡前綴)的虛擬聚合。這種虛擬聚合是指用隧道實現對每個虛擬前綴內的所有子前綴的匯聚,需要指出的是這些子前綴在拓撲上是不可聚合的。VA提出了匯聚點路由器(APR)的概念,將同一個自治系統(AS)中的路由器分為APR、非匯聚點路由器(Non-APR)和傳統路由器,其中APR與Non-APR都是安裝了VA的路由器。

圖4說明了VA中轉發數據包的基本流程。首先,路由器D被配置為VP(1.0.0.0/8)的APR,建立了到路由器B的一條隧道。路由器C作為入口路由器,收到由路由器A發送的數據包(目的地是與路由器B相連的網絡中的某臺主機)。路由器C先將數據包轉發給路由器D,D通過隧道將數據包發送給隧道終點B,最后由B將數據包發送給目的主機。
VP并不是按拓撲進行匯聚的,而是通過虛擬聚合技術對多個不連續的運營商獨立地址的聚合。VA在減小路由器中FIB規模的同時卻可能導致路徑長度的增加,如圖4。這個問題可以通過將APR部署在最短路徑上來解決。

3.2 基于ID/Locator徹底分離的路由體系結構
這類方案的基本思想是在主機處實現位置標識符和身份標識符的徹底分離。早期M.ODell提出的GSE就屬于此類方案,它將主機的IPv6地址分為Locator和ID兩部分,實現了位置與身份的分離,但并不保證ID的全球唯一性和安全性。此后提出的LNAI以及HIP也屬于此類方案。
LNAI設計了一個扁平的4層名字空間結構,包括用戶級描述符(ULD)、服務描述符(SID)、主機描述符(EID)和IP地址。同時LNAI還提出了一個三級地址解析方案,包括將ULD解析為SID、將SID解析為EID、將EID解析為IP地址。通過增加SID和EID這兩個額外的名字空間和解析層次,LNAI不僅能夠允許服務和數據成為一級因特網對象(能夠直接和持久地命名),還支持主機的無縫移動和網絡多歸屬,并可以將中間盒如網絡地址轉換(NAT)和防火墻等整合到互聯網體系架構中。
HIP提出在網絡層和傳輸層中間插入一個新的協議層——主機標識層。主機標識層將原來緊密耦合的傳輸層和網絡層分開,徹底分離IP地址的雙重功能,使IP地址只作為網絡層使用的位置標識符,專用于數據包的路由轉發,而把主機標識的功能交給主機標識符(Host ID),傳輸層使用主機標識符而不是IP地址作為主機的標識。在雙方進行通信時,IP地址的變化對傳輸層透明,從而保證在發生移動或者地址變化時,通信可以持續進行,而不會被中斷。
圖5簡要顯示了HIP協議進行一次完整對話的基本流程。通信發起者在初始化連接時,首先發送域名系統(DNS)查詢請求,DNS服務器返回目的地對應的主機標識符;接著由主機標識層查詢映射服務器得到對應的IP地址;源端與目的端的主機標識層之間建立HIP關聯;最后,源端和目的端開始進行數據交換。
整個體系結構從根本上適應了移動和網絡多歸屬的需求。同時,主機層的引入削弱了網絡層和傳輸層的依賴關系,增加了網絡的靈活性,有利于從IPv4到IPv6遷移。但是HIP也存在一些問題:需要主機作一定的修改,部署起來比較困難,不支持組播。由于HIP未修改現有網絡設備,故并不能對互聯網服務提供商(ISP)實現有效的流量工程提供直接支持。
3.3 基于封裝/映射的路由體系結構
此類方案的基本思想是:將整個路由域分為全局路由域和本地路由域,ID/Locator的分離在邊界網關處實現,如圖6。全局路由域是由邊界網關組成的,在同一個本地路由域內的實體之間的通信使用身份標識符進行路由,在全局路由域內使用位置標識符進行路由。需要發往本地域外的數據包攜帶的是目的主機的身份標識,它們首先被轉發到本地路由域的邊界網關處(源網關)。源網關通過某種映射服務獲得目的網關的位置標識并將這個標識作為目的地址。接著,根據目的網關的位置標識,這個數據包就可以通過全局路由域到達目的網關。目的網關去掉數據包中的位置標識,根據目的主機的身份標識轉發數據包,最終數據包將到達目的主機。這類方案不僅僅能夠解決目前Internet面臨的路由可擴展問題、支持站點多歸屬,而且由于ID/Locator在路由器處進行分離,有利于ISP進行流量工程控制。