摘要:通信工程師考試培訓主動網(wǎng)絡實現(xiàn)方式:這里,主動程序將分別插入可編程的主動節(jié)點,與實際的數(shù)據(jù)包相分離,并可以在網(wǎng)絡中傳輸。用戶可以將程序發(fā)送至網(wǎng)絡節(jié)點(交換機、路由器),在節(jié)點中被存儲,然后當數(shù)據(jù)抵達節(jié)點時執(zhí)行程序,對數(shù)據(jù)進行處理。
2.2.3 主動網(wǎng)絡實現(xiàn)方式
主動網(wǎng)絡的實現(xiàn)可分為離散型和集成型。
離散型是將主動程序的處理與數(shù)據(jù)代碼的分發(fā)作為兩種獨立的機制。這里,主動程序將分別插入可編程的主動節(jié)點,與實際的數(shù)據(jù)包相分離,并可以在網(wǎng)絡中傳輸。用戶可以將程序發(fā)送至網(wǎng)絡節(jié)點(交換機、路由器),在節(jié)點中被存儲,然后當數(shù)據(jù)抵達節(jié)點時執(zhí)行程序,對數(shù)據(jù)進行處理。數(shù)據(jù)中包含引導節(jié)點如何處理或處理哪些程序的信息。這種基于可編程交換節(jié)點(Programmable Switch)的離散方案,如Switch Ware體系結構,適合于面向連接的網(wǎng)絡。
集成型是將一段程序與數(shù)據(jù)組成一個封裝體,然后發(fā)送到網(wǎng)絡?當這典包到達主動節(jié)點時,主動節(jié)點將解釋這些程序,然后處理包內(nèi)的數(shù)據(jù)。這種基于封裝(Capsule)的集成方案.如Active Ware體系結構,主要應用于面向無連接的網(wǎng)絡。
當然,也有將這兩種實現(xiàn)方式相結合的方法,目前已被賓夕法尼亞大學開發(fā)的主動網(wǎng)絡編程語言(Programming Languagefor Active Network,PLAN)采用。
主動網(wǎng)絡的實現(xiàn)建立在對主動網(wǎng)絡體系結構框架和主動網(wǎng)絡使能技術的研究基礎上,目前已有數(shù)所大學研究并實現(xiàn)了不同的主動網(wǎng)絡體系結構,并開發(fā)出了能夠成功運行主動應用程序的NodeOS和EE。還有些大學利用已開發(fā)出的主動網(wǎng)絡基礎結構來測試并實現(xiàn)了新的主動程序。
1)ANTS與PAN
ANTS(ActiveNodeTransportSystem)工具包是由麻省理工大學在封裝(Capsule)模型的基礎上開發(fā)出來的主動網(wǎng)絡T.具。每個封裝包含一個以宇節(jié)編碼的Java程序和用戶數(shù)據(jù)凈荷。ANTS的網(wǎng)絡應用程序接口包含一個擴充了ANTS類的Java虛擬機,執(zhí)行對封裝進行譯碼和解釋的功能。
首先,包識別出它們的類型和協(xié)議,當包抵達節(jié)點時,它檢查自己的緩存,觀察所需的代碼是否出現(xiàn)。如果沒有出現(xiàn),則要求上一個節(jié)點為當前節(jié)點發(fā)送代碼。當上一個節(jié)點收到它可以響應的負載請求時,它將馬上發(fā)送。當前的節(jié)點收到負載請求時?它將這些負載加載到自己的緩存中,然后對等待的包執(zhí)行所需的操作。這是一種有效的具有魯棒性的機制,從而使節(jié)點能充分利用主動網(wǎng)絡的優(yōu)點。
最近,麻省理工大學又開發(fā)出了PAN(PracticalActiveNetwork〉主動網(wǎng)絡系統(tǒng),用于實現(xiàn)可實際使用的基于封裝的主動網(wǎng)絡。PAN的體系結構與ANTS非常類似,但它的性能更適于實際的應用。PAN的體系結構可以支持多種移動代碼系統(tǒng)。用主動節(jié)點內(nèi)核執(zhí)行本地代碼轉發(fā)封裝的試驗表明,其發(fā)送1500字節(jié)的數(shù)據(jù)包時的速度可以使100Mbit/s的快速以太網(wǎng)達到飽和,而只比傳統(tǒng)網(wǎng)絡節(jié)點處理每個數(shù)據(jù)包的時間多出13%,SwitchWare項目賓夕法尼亞大學開發(fā)的SwitchWare項目是另一個主動網(wǎng)絡的實現(xiàn)原型,它向用戶提供了兩層編程接口。下面一層是主動分組層,主動分組與ANTS中的封裝囊相類似,它們攜帶著少ft程序代碼用以激活由上一層,即主動擴展機制層所支持的駐留節(jié)點的服務例程。主動擴展機制層常駐節(jié)點內(nèi)部,是由系統(tǒng)管理員或授權用戶安裝的。主動分組層是用PLAN和Calm語言開發(fā)的,而主動擴展機制層是由Calm語言開發(fā)。Calm程序能夠被動態(tài)載人(按照需要從網(wǎng)絡上或從本地磁盤安裝)到SwitchWare主動節(jié)點。
2)PLANET
PLAN語言是賓夕法尼亞大學開發(fā)的第一種主動分組語言,而后該大學又開發(fā)出了SNAP(SafeandNimbleActivePackets),這種語言被設計用來提高PLAN的靈活性、高效性及安全性。研究者旨在找到保護節(jié)點的整體性,并對節(jié)點提供保護及安全的資源控制的方法,以期建立第一個實際投人使用的主動分組系統(tǒng)。
該大學的主動網(wǎng)絡試驗床叫做PLANet,是一種以主動網(wǎng)絡為基礎的“主動互聯(lián)網(wǎng)”。它以100Mbit/s以太網(wǎng)為鏈路層,也可以用IP作為鏈路層。PLANET的早期開發(fā)使用PLAN語言,有相當大的延遲。智能包或網(wǎng)絡基礎結構中的額外代碼,和因此而帶來的計算開銷的增長造成了網(wǎng)絡性能的下降。與PLAN相比,SNAP則展示了其性能的優(yōu)越性,在ping的延遲和吞吐量測設中與IP網(wǎng)絡相當。
3)Bowman和CANE
喬治亞大學研究開發(fā)出了Odyssey軟件包,由Bowman主動網(wǎng)絡操作系統(tǒng)和CANE執(zhí)行環(huán)境兩部分組成。Bowman建立在一個標準的傳統(tǒng)操作系統(tǒng)基礎上,作為實現(xiàn)CANE執(zhí)行環(huán)境的平臺。以插槽處理模型為基礎的CANE執(zhí)行環(huán)境包括兩部分:一部分是固定的承栽程序,它是一個運行時可重定位的模塊,由主動節(jié)點管理器負責裝載。承載程序為包提供處理平臺,可以看做是一個全局操作的模板;另一部分是可變的嵌人程序,嵌人程序支持用戶主動代碼的定制。承載程序中供嵌人程序運行的特定點叫做插槽(Slot),用戶將定制程序與這些插槽相連接。
4)其他
除此之外,還有一些機構也參與了主動網(wǎng)絡的研究。例如哥倫比亞大學研究開發(fā)了NetScript.NetScript語言提供了一種處理分組流的腳本語言,NetScript代理能夠較容易地被發(fā)送到遠端系統(tǒng),比如路由器和交換機.使這些節(jié)點可編程。
另外還有BBN技術組的智能包(SmartPacket),能夠利用主動網(wǎng)絡技術以助于網(wǎng)絡的管理問題。
在大多數(shù)情況下,主動網(wǎng)絡的實現(xiàn)采用離散型實現(xiàn)機制,如ANTS和PAN。離散型機制的性能要優(yōu)于集成型機制,因為在網(wǎng)絡中傳輸?shù)目刂菩畔⑦_到了最小化。PAN實現(xiàn)模型從本質上講是ANTS實現(xiàn)模型的內(nèi)核,它使用了本地代碼,有較高的性能,但在資源管理和安全上卻比較薄弱??梢赃@樣說,要在主動網(wǎng)絡上同時具有較高的性能、安全性和互操作性,關鍵在于要有一種短小的、可嵌人的、高性能的移動代碼系統(tǒng)。
返回目錄:
編輯推薦
通信工程師備考資料免費領取
去領取