摘要:互聯(lián)網(wǎng)端到端屬性使得運行于主機端的應用層協(xié)議易于修改和部署,從而促進互聯(lián)網(wǎng)通過新應用的競爭不斷發(fā)展;但是涉及到網(wǎng)絡核心層和網(wǎng)絡設備(交換機、路由器等)的新協(xié)議則在實現(xiàn)和應用上十分困難,阻礙了互聯(lián)網(wǎng)核心技術的演進。文章提出一種可演進的網(wǎng)絡體系結構(EIA)。網(wǎng)絡可以通過EIA提供的接口在主機和網(wǎng)絡設備上添加新的模塊來得到試驗和實際部署。不同的用戶可以任意選擇不同的體系結構,同時用戶可以是一種或多種網(wǎng)絡體系結構的使用者。人們可以多樣化競爭的方式推動互聯(lián)網(wǎng)的演進。
關鍵字:網(wǎng)絡虛擬化;網(wǎng)絡體系結構;互聯(lián)網(wǎng)演進
英文摘要:The end-to-end characteristics of networks enables easy modification and development of applications running on the host. Competition among these applications promotes the development of the Internet. However, new protocols related to core networking or network equipment (routers, switches etc.) are often hard to successfully implement. This paper proposes an Evolvable Internet Architecture (EIA). It proposes that new network architectures can plug themselves as new modules into EIA network equipment using the interfaces provided by EIA for experiment and actual development. Different users can independently select network architectures, and at the same time there may be one or more users of network architectures. This diversity and competitiveness promotes the evolution of the network.
英文關鍵字:network virtualization; network architecture; Internet evolution
基金項目:教育部高等學校博士學科點專項科研基金(200800030034)
互聯(lián)網(wǎng)經(jīng)過30多年的發(fā)展,已經(jīng)成為與人們工作、生活息息相關、不可缺少的基礎設施之一,互聯(lián)網(wǎng)自身也獲得空前的發(fā)展與繁榮。然而,互聯(lián)網(wǎng)傳輸控制協(xié)議/網(wǎng)間協(xié)議(TCP/IP)式的體系結構從誕生之日起就存在天生的缺陷,如:盡力而為的轉發(fā)策略不能提供用戶需求的服務質量、網(wǎng)絡管理難以部署、網(wǎng)絡安全漏洞日益暴露、IP地址資源枯竭、接入設備的泛在移動性與異質性、大規(guī)模網(wǎng)絡情況下路由的可擴展性等等。
對互聯(lián)網(wǎng)TCP/IP體系結構的變革一直在進行,新的協(xié)議與算法不斷提出;ヂ(lián)網(wǎng)端到端屬性使得運行于主機端的應用層協(xié)議易于修改和部署,從而促進互聯(lián)網(wǎng)通過新應用的競爭不斷發(fā)展。但是,互聯(lián)網(wǎng)端到端屬性同時限制了互聯(lián)網(wǎng)核心部分的革新能力。涉及網(wǎng)絡核心部分和網(wǎng)絡設備內核改變的新協(xié)議(如IPv6、集成業(yè)務、IP多播、差異化服務、安全路由協(xié)議等)需要部署者全局部署和網(wǎng)絡設備統(tǒng)一修改,而這種修改對網(wǎng)絡運營者和網(wǎng)絡設備制造者缺乏激勵機制,難以在現(xiàn)實網(wǎng)絡中大規(guī)模部署;同時由于缺乏真實網(wǎng)絡環(huán)境的充分測試,這些涉及網(wǎng)絡核心層的新協(xié)議難以得到充分信任與支持,進一步阻礙了設備實現(xiàn)的成熟度和運營者的部署決策。這些都造成新協(xié)議沒有得到大規(guī)模應用,互聯(lián)網(wǎng)核心技術的演進陷于停滯。
針對現(xiàn)有TCP/IP體系結構的諸多缺陷,網(wǎng)絡研究者們提出了一些全新的體系結構,如RBA[1]、RNA[2]、SILO[3]等。這些新體系結構解決了一些現(xiàn)有體系結構的問題。但是僅有一種固定的體系結構難以滿足未來互聯(lián)網(wǎng)的需求,這是因為:
(1)需要多種體系結構共存以解決網(wǎng)絡多方面的問題。
(2)網(wǎng)絡體系結構需要不斷演進,包括:更新、補充及老化。
(3)實驗流量需要在真實網(wǎng)絡上運行,需要與用戶流量共存。
基于以上分析,本文提出了一種支持多種體系結構并存的可演進的體系結構(EIA)。EIA是一個能夠包容多個網(wǎng)絡體系結構的結構,且支持網(wǎng)絡體系結構數(shù)目的不斷擴充。EIA如同一個“插座”,上面插著不同的體系結構,現(xiàn)有的TCP/IP協(xié)議棧也作為一個體系結構插在上面,EIA是這些體系結構的“基”。EIA上層的多種體系結構可以形成競爭關系去解決同一問題,類似于實時網(wǎng)絡通信中Skype、QQ、MSN、Gtalk的關系,也可以形成互補的關系去解決不同的問題。不同的用戶可以任意選擇不同的體系結構,同時用戶可以是一種或多種網(wǎng)絡體系結構的使用者。
1 EIA網(wǎng)絡體系結構
1.1 EIA的演進策略
當前互聯(lián)網(wǎng)的演進方式主要分為兩種:革命型和革新型。革命型的代表有網(wǎng)絡革新的全球環(huán)境(GENI)、未來互聯(lián)網(wǎng)設計項目(FIND)、未來互聯(lián)網(wǎng)研究和實驗(FIRE)等;革新式則是在現(xiàn)有的互聯(lián)網(wǎng)上進行修補式的改進。
互聯(lián)網(wǎng)采取革命式的演進需要重新構建試驗網(wǎng)絡,演進代價高,并且研究者對未來的預測有誤差,只有不斷改革才是可能的。因此EIA采用的是改革式的演進策略,在現(xiàn)有網(wǎng)絡的基礎上支持研究者實現(xiàn)和部署新協(xié)議的目的,進而推進互聯(lián)網(wǎng)的長期演進。
EIA改革式的演進和目前改革式的演進方法又是不同的。目前的演進方法是在TCP/IP體系結構的基礎上修補、發(fā)現(xiàn)問題、再修改,但是某次修補可能不容易“兼容”未來的繼續(xù)修改。并且現(xiàn)有的演進可能引入短期收益而長期有破壞性如網(wǎng)絡地址轉換(NAT),或者局部收益對整體有破壞性。而EIA不是在現(xiàn)有的TCP/IP結構上做改進,其上層支持多種體系結構的并存,TCP/IP只是作為其中的一種體系結構。多種不同的體系結構之間通過競爭的方式使更適合需求的方案得以生存和發(fā)展。
1.2 EIA的目標
EIA的主要目標:(1)研究者可以在現(xiàn)實的網(wǎng)絡設備上編程并試驗其新的協(xié)議,實驗流與正常流同時運行在實際網(wǎng)絡上且之間互不影響;(2)EIA上層承載多種體系結構,作為容納多種體系結構的特殊結構,EIA可以使能上層體系結構之間的競爭。EIA承載的不同體系結構之間可以形成競爭關系去解決同一問題,也可以形成互補關系去解決不同的問題,各種不同的體系結構在硬件資源方面共享。
現(xiàn)在已經(jīng)提出很多不同的體系結構,每種結構均有不同的設計,哪種體系結構應該被選擇,EIA可以通過競爭的方式使更適合需求的方案得以生存和改進。同時EIA作為一個可以包容網(wǎng)絡結構的結構,做到能夠承載上層的結構需要考慮很多問題:每種體系結構可能只覆蓋整個Internet的一部分;終端用戶也許只用到一種或幾種上層的體系結構而不是所有,類似于部分互聯(lián)網(wǎng)網(wǎng)民使用QQ、Gtalk,而不使用MSN進行實時通信。
1.3 EIA的組成
EIA包括兩部分:主機對多體系結構的支持;網(wǎng)絡設備(交換機或路由器)對多體系結構的支持。
1.4 EIA主機
1.4.1 基礎模式
EIA主機多協(xié)議棧如圖1所示,EIA模塊位于鏈路層,是為支持上層多種體系結構而在現(xiàn)有網(wǎng)絡上增加的一些函數(shù)接口,F(xiàn)有的主機要支持多體系結構并存,需要增加EIA模塊。部分體系結構也可以不增加EIA函數(shù),直接利用現(xiàn)有的函數(shù)接口來滿足需求。
EIA 模塊根據(jù)不同的體系結構代碼,把數(shù)據(jù)包傳遞給上層不同的體系結構。已有的TCP/IP通信協(xié)議模型作為一個特殊的體系結構和其他新體系結構并存。
增加EIA模塊后,鏈路層的工作方式為:當接收到一個數(shù)據(jù)包后,解幀并根據(jù)協(xié)議號上傳到上層相應的協(xié)議棧;當接收到上層傳遞來的數(shù)據(jù)包后,根據(jù)上層協(xié)議的任務,把數(shù)據(jù)包轉發(fā)到一個端口或調用相應的硬件資源做出處理動作。
和現(xiàn)有開放系統(tǒng)互連(OSI)模型的套接字相比,EIA模型把現(xiàn)有套接字接口往下移動從而建立在物理層上,不同的體系結構在鏈路層之上呈現(xiàn)為縱向、并行的方式。
1.4.2 高級模式
基礎模型中,鏈路層主要提供解幀、封幀的操作。為了開發(fā)者易于開發(fā)新的體系結構,EIA高級模式把各新體系結構中的通用功能模塊抽象出來,以可選項的形式提供給各個新體系結構的開發(fā)人員,如網(wǎng)絡監(jiān)管、QoS等功能就可以在此處開放給新體系結構的開發(fā)者。添加公用模塊后的EIA示意圖如圖2所示。