特約通訊員 許廷濤
MobilityFirst(“移動優先”)項目啟動于2010年9月,屬于美國國家科學基金會FIA(未來互聯網架構)計劃的一部分,旨在直接應對大規模無線接入和移動設備使用的挑戰,同時為新興的移動互聯網應用提供新的組播、選播、多路徑方案,以及新型的情境感知服務。
MobilityFirst項目成立的前提是,移動平臺和應用程序在逐漸取代自互聯網誕生以來便占主導地位的固定主機或服務器?;ヂ摼W正在接近一個歷史性的拐點,而互聯網的轉變孕育出了一個獨特的機會——在移動設備、應用程序中設計出下一代互聯網。隨之而來的服務、誠信和管理的變革便是新架構的主要驅動力。
新架構在設計上的主要目標是:在符合動態主機和網絡的規范的基礎上提高移動性;在考慮無線媒體的內在特性的基礎上保證穩健性;通過加強移動網絡和有線基礎設施的隱私安全性來保證可靠性;具有如支持靈活的上下文感知的移動網絡服務、可發展的網絡服務等易用性特征;具有可管理性和經濟可行性。此外,該項目的設計也要考慮如無線頻譜資源的稀缺性等技術性因素,利用摩爾定律來繼續改進移動和傳感設備在計算和能源約束上存在的問題。
為實現以上設計目標,需要使用以下協議組件:
(1)徹底分離的標識符與網絡位置
MobilityFirst徹底地分離了三樣東西:可讀的名稱、全局唯一的標識符以及網絡位置信息。名稱認證服務(NCS)安全地把一個可讀的名稱綁定到一個全局唯一的標識符(GUID)。全球名稱解析服務(GNRS)安全地把全局唯一標識符映射到一個網絡地址(NA)。通過使全局唯一標識符成為一個加密的可驗證的標識符(例如一個公鑰),MobilityFirst提高了可信度;而通過徹底地分離網絡地址信息和全局唯一標識符,MobilityFirst則能夠實現大規模的無縫移動性。
(2)分散的名稱認證服務(NCS)
MobilityFirst在名稱認證方面分散信任,也就是說,不同的獨立的名稱認證服務組織可以驗證一個可讀的名稱和關聯的全局唯一標識符之間的綁定??梢韵胂蟮氖?,不同的組織可能會不同意一個名稱相應的全局唯一標識符。終端用戶可以選擇信任某一個(或某些)名稱驗證服務,并且通過基于仲裁集的技術解決各個名稱認證服務之間的不一致。
(3)大規??蓴U展的全球名稱解析服務(GNRS)
GNRS是MobilityFirst最核心的組件之一,主要負責支持大規模的無縫移動性。預想的規模是一天有100億個移動設備通過大約100個網絡,這相當于每秒1000萬個更新。相比之下,域名服務器很大程度上依賴于緩存,并且承擔大約幾天內更新一條記錄的開銷。因此,設計一個大規??蓴U展的分布式全球名稱解析服務是MobilityFirst的一個關鍵挑戰。
(4)廣義存儲感知路由
MobilityFirst在路由器中利用網絡存儲解決在現實世界的移動場景中不可避免會出現的無線接入網絡帶寬變化和偶爾斷線的問題。在CNF(Cache-And-Forward Network Architecture,緩存轉發網絡架構)的早期研究工作表明了存儲的好處并且概述了存儲感知路由算法。該算法用于當作出轉發決定的時候,計算長期和短期的路徑質量指標。GSTAR(Generalized Storage-Aware Routing,廣泛的存儲感知路由)協議進一步集成延遲容忍網絡(DTN)。該網絡具備類似CNF的存儲路由功能,能為大范圍的無線接入方案提供一種無縫的解決方法。
(5)內容和情境感知服務
MobilityFirst架構中的網絡層被設計成內容感知層,也就是說其積極地協助內容檢索,而不是如當今互聯網簡單地提供一個原始數據包發送到指定的目的地。MobilityFirst通過分配全局唯一標識符給內容實現內容感知。這些全局唯一標識符是加密可驗證的。比如說,內容的自驗證哈希,允許一個接收器輕松地檢查內容的完整性。MobilityFirst也把基本的服務和內容全局唯一標識符擴展應用到更靈活的設備組或用戶組,例如公園的全部移動設備,或廣場的全部出租車。

圖1 MobilityFirst架構中的名稱與地址分離
(6)計算與存儲層
現有互聯網的經驗表明,設計的可擴展性是必不可少的。為此,MobilityFirst的路由器明確支持一個計算與存儲層,能夠快速地引進新的可能的特定方法和服務,同時將對現有用戶性能的影響降到最低。
總的來說,MobilityFirst互聯網架構主要由八大關鍵要素組成:第一,命名和尋址的分離,通過一個快速的全球動態名稱解析服務得到實現;第二,高度的安全性,該架構的認證公鑰網絡地址支持高效的身份驗證;第三,數據包傳輸過程中包含網內存儲的廣義延時容忍;第四,含公共密鑰地址的固定標簽網絡路由;第五,基于分段路徑而不是端到端路徑的跳轉傳輸協議;第六,一個具有可見性的分離網絡管理平臺;第七,為用戶和地址數據而設的可選擇的隱私保護功能;第八,文本和文本感知的網絡服務;第九,一個集成算法和路由存儲層,支持可編程性和增強性網絡服務的發展。整個互聯網架構在設計時,雖然具有一定的復雜性,但是也保證了可實施性,此外也具有一定的可擴展性。
通過上述的介紹,我們已經對MobilityFirst的架構有了初步的了解。MobilityFirst協議體系架構是在徹底分離網絡地址和名稱(或網絡連接對象)的基礎上實現的(如圖1)。這是MobilityFirst架構的第一大特征。
圖1中所示,通過特定的名稱認證服務把可讀的名稱諸如“sensor@xyz”或者“John’slaptop”轉換成一組對應于當前網絡對象連接點的網絡地址。該服務把可讀的名稱轉換成一個全局唯一標識符,該標識符通常是設備、內容、傳感器等網絡附著對象的權威標識符。全局唯一標識符也是一個公鑰,因此能為所有網絡連接的設備和對象提供一個驗證和信任管理的機制。
MobilityFirst框架也支持基于情境描述符的概念,把一個特殊的全局唯一標識符賦予給這個情境描述,然后進行命名,通過一個動態的組播組,為當前在該區域的所有移動設備服務。一旦一個全局唯一標識符被指定到一個網絡對象,就會產生一個從全局唯一標識符到網絡地址的映射。具體方法是分配路由網絡地址到網絡端口,并且通過使用全新的分布式網絡服務——全球名稱解析服務,來把全局唯一標識符綁定到網絡端口上。全球名稱解析服務通過提供移動設備的實時網絡接入點來實現動態移動性,而不需要像手機IP一樣通過現有網絡協議來連接。網絡地址有望慢慢逐步改變,并且可以使用第二個分布網絡協議(類似于互聯網上的邊界網關協議)傳播路由更新。
進入網絡的數據包都有關于協議數據單元(PDU)的目的地和數據源的全局唯一標識符。還有,在數據包報頭里設有一個服務標識符(SID),顯示哪種服務類型(諸如單播,多播,選播,情境傳送,內容查詢等)是協議數據單元所需要的。在第一次接入路由器時,目的地GUID通過訪問GNRS來分解,分解后的網絡地址會被隨意地附加在數據包報頭的后面,從而使得隨后的路由器有可能沿著路徑單獨地轉發基于網絡地址的協議數據單元。這被稱為快速路徑轉發。通過查詢GNRS,任何沿著路徑的路由器都可以選擇是否再次分解GUID。這就是所謂的慢速路徑。它允許傳輸數據暫時斷線后,重新綁定到一組新的網絡地址上。GUID路由選項使得它可以實現“后期綁定”算法決定路由通過哪些網絡端口可以被推遲,直到協議數據單元接近目的地。
另外,在MobilityFirst架構中,協議數據單元還可能是大單元(100MB~1GB),相當于一個音頻文件或者視頻文件的大小,并且這些都是從一個路由器到下一個作為連續的單元傳輸。
MobilityFirst架構的第二個特征是,在路由器中存在著網絡存儲。這使得在應對較差的鏈路通信質量或斷線時能夠使用存儲感知協議,該協議選擇把協議數據單元暫時存儲在路由器中,而不是通過轉發至目的地的方式。對比在TCP/IP協議中端到端的方法,一個可靠的逐跳傳輸協議是在路由器之間傳遞數據包的。
MobilityFirst架構的第三個特征是,服務具有靈活性,特別強調多播、選播、多路徑、多鏈路作為路由協議的集成功能。這些已經提供的服務特性主要負責滿足移動應用所更關心的情境(例如設備位置或功能),而不是其網絡地址的需要。
MobilityFirs項目的研究是通過構建一系列的數據模型來測試的,包括關鍵協議組件的獨立認證,例如命名服務、GDTN(全面延遲容忍網絡)路由選擇和固定標簽域間路由選擇;控制實驗的小規模實驗室架構模型;跨網絡實驗和概念驗證演示的多站點、中等規模的系統原型(使用全球網絡創新環境[GENI]的基礎設施)。
MobilityFirst架構早期的概念原型是基于改進的具有全球名稱解析服務和存儲路由功能的Click模塊化路由器組(Click是一種新的軟件體系結構,它被用于建立靈活的和可配置的路由器)。
MobilityFirst協議棧中包含了一個由自麻省理工大學提出的基于“跳”協議的逐跳可靠鏈路協議。在Linux系統和安卓手機客戶端上,GUID服務層也實現了與塊傳輸(包含單播和多播)、選播和由新協議提供的內容查詢服務相關聯的服務接口。一個雙路徑的數據抽象可以通過以下方式實現:快速路徑(如點擊轉發模塊)和慢路徑(用戶層面服務如控制和管理)。
原型的實驗測試與展示是在美國的堪薩斯州開展的,構建了包含7組可編程路由器的兩大邊緣網絡,覆蓋了整個美國地區,設有許多的WIMAX基站和WiFi接入點供移動終端進行訪問。該網絡拓撲結構如圖2所示。

圖2 GENI概念驗證的實驗配置

圖3 GENI實驗中的內容傳送應用
網絡中GENI節點的物理拓撲結構應用不同組合的OpenFlow交換機和各地的ProtoGENI節點,配置包含了一個在路由器節點之間的RTT(Round-trip Time,往返時間)延遲,輔之以各種鏈路速度和接入網絡技術。在考慮的方案中,有兩個分別歸屬于BBN和Rutgers網絡的移動設備,一個作為內容服務器,另一個作為客戶端。GSTAR協議提供這樣一個功能:利用內網存儲和多宿主(利用了有效的WiMAX和WiFi接口),以逐級跳轉的方式,有效地把內容從服務器傳送到客戶端中。
圖3展示了GENI實驗中帶唯一GUID標簽的內容傳送方案,從客戶端傳送一個“get(GUID)”查詢請求。內容傳送操作包括了GNRS解決方案,接著是在逐級跳轉基礎上的整個協議數據單元(媒體文件)的GSTAR選擇。實驗還表明這樣一個事實,GSTAR協議能夠處理邊緣網絡帶寬的變化和通常發生在WiMAX和WiFi網絡邊緣的偶然斷線。特別是,路由器節點會存儲傳送的那段信息,直到信道條件充分改善,再沿著路徑重新推送信息。該協議還能夠自動選擇一個或兩個多宿主路徑,以滿足所需的服務和政策目標。
目前,MobilityFirst協議棧的概念驗證模型已成功在GENI實驗測試平臺上開發,這是迄今為止最令人鼓舞的成果。項目的進一步工作將包括域間路由方面、設計內容和情境感知服務、管理平臺功能和計算層服務。