999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

P2P系統模擬器的分析與比較

2007-12-31 00:00:00陳志剛
計算機應用研究 2007年11期

摘要:通過分析當前一些主流的P2P系統模擬器并對它們進行比較,說明了不同模擬器在實際應用中的各自側重所在,為P2P系統研究人員和P2P模擬器設計者的研究提供了便利。

關鍵詞:對等網; 模擬器; P2PSim; NeuroGrid; 搜索

中圖分類號:TP31文獻標志碼:A

文章編號:1001-3695(2007)11-0037-03

0引言

目前對P2P的研究主要采用分析、實驗與模擬的方法。分析方法就是根據一定的限制條件和合理假設,對研究對象和系統進行初步描述,抽象出研究對象的數學分析模型,利用數學分析模型對問題進行求解。分析方法的有效性和精確性受假設限制很大,無法詳細描述很復雜的系統,尤其對于現實世界的復雜性,使許多情況下分析方法不能適用。實驗方法主要是設計出研究所需的合理硬件和軟件配置環境,建立實驗室,在現實網絡上實現對網絡協議、網絡行為和網絡性能的研究。這種方法的局限性主要在于成本高、重新配置和共享資源難、不靈活、規模不能做大、不能實現多種通信流量和拓撲的融合。模擬方法就是采用模擬器來建立所研究的網絡體系的模擬模型,在計算上運行這個模型,并分析運行的輸出結果。這種方法可以在很大程度上克服前面兩種方法的不足。模擬方法可根據需要設計所需的模型,花較少的時間和成本了解網絡體系在不同條件下的各種特性,獲取網絡研究豐富有效的數據。所以網絡模擬可以提供一個方便、高效的分析和驗證方法。

本文將介紹當前一些有代表性的P2P模擬器,包括GridSim、SimGrid、NS-2、P2PSim和NeuroGrid。對它們的功能、特點以及適用領域進行分析并比較,以方便P2P研究人員對模擬器的選擇與使用。

1GridSim

GridSim[1]是一款主要用于模擬資源調度的模擬器,它是基于離散事件的模擬器。GridSim由澳大利亞墨爾本大學的Rajkumar Buyya領導開發。其主要目標是在計算經濟的基礎上,通過模擬來研究有效的資源分配技術。它通過模擬大量的資源和大量有不同要求的用戶來研究系統的可擴展性、調度算法、資源分配策略的有效性和用戶的滿意程度等。

GridSim是以工具包(GridSim toolkit)的形式發布的。GridSim提供了豐富而方便使用的函數庫,用戶可以模擬和創建網絡環境中不同層次的資源(如時間共享和空間共享)、用戶、應用程序、用戶代理和調度器以進行調度算法的設計和評估。

除了通過手工編程來實現模擬外,GridSim還提供了一套圖形界面工具visual modeler(VM)幫助用戶配置網絡環境并產生相應的代碼。模擬結束后,用戶可以調用GridSim中的GridStatistics的庫函數來收集各種模擬的統計數據。

總之GridSim能夠模擬網絡多方面的特性。由于采用Java語言開發,使其可以跨平臺運行。

GridSim中另一個比較靈活的地方是它提供了很多的API和用戶接口,可以靈活調用,它也可以很方便地創建各種異構資源的類。

GridSim的一個不足之處是資源類型太少,基本上只是計算資源。更重要的是,GridSim所能仿真的網絡主要是針對之前對網格的定義,它沒有體現對服務網格的仿真,而且其路由器的類僅支持Flood協議(泛洪協議)和RIP(router information protocol,路由信息協議)。此外它沒有提供生成拓撲結構的工具,需要手工編寫,不支持網絡延遲的模擬。

2SimGrid

SimGrid[2]是由美國加州大學圣地亞哥分校網格研究和創新實驗室主導開發的。其目標是為在分布計算網格環境下進行分布并行應用調度研究,提供一個合適的模型和抽象并生成準確的模擬結果。

SimGrid是運行在Linux下用C++開發的模擬器,它使用基于trace-driven的模擬,按照真實網格資源中的訪問trace記錄來模擬網格資源,從而達到更真實的網格模擬。該模擬器已經成功應用在可分布負載調度應用的領域。SimGrid 正在驗證的領域有在環形組織中重新分配負載的實驗。

SimGrid提供了一系列核心函數,用于建立異構分布環境下分布應用的仿真環境。目前SimGrid 有兩個版本:

a)SG。比較底層的工具,只提供了建立仿真環境的一些核心函數。但正因為它提供一些底層的核心函數,所以它可以用來構建各種面向領域的仿真器,比較靈活、通用。SG適合于基于DAG的集中式調度的仿真。

b)MSG。建立在SG之上,比SG更面向應用,是一個應用層仿真器。MSG適合于調度中存在多個獨立調度行為(schedu ̄ling actions)的情況。

利用SimGrid可以研究算法在非常差的環境中的魯棒性,也可以比較兩個算法的效果,在真正實現前測試和調試算法。但SimGrid不能夠精確地對一個計算機平臺進行模擬,也不能勝任調試已經存在的代碼。

SimGrid另一顯著的特點是可以使用復雜的與實際情況相符的平臺,可以進行快速仿真。但SimGrid可視化不是很好,它的資源類型只是計算資源,沒有專門生成網絡拓撲結構的工具。

3NS-2

NS-2 [3,4] 是采用面向對象的、基于離散事件驅動的模擬器,易于對實際網絡建模,系統易于擴展。它致力于網絡的研究,支持TCP、UDP、IP、RTP/RTCP、SRM、802.3 MAC、802.11 MAC等協議;支持算法路由、分級路由、廣播路由、多播路由、靜態路由、動態路由協議;支持drop tail、RED、CBQ、WRR、DRR和SFQ等隊列管理和包調度機制;支持鏈路失效、鏈路出錯處理。

NS-2使用了OTcl和C++兩種建模語言,兼顧到了模擬效率和系統建模的靈活性。編程者可以使用面向對象、解釋執行的腳本程序設計語言OTcl進行模擬配置,并通過編寫C++構件擴充系統的模擬能力。

相對于一般的離散事件模擬器來說,NS-2的一個優勢特點就是提供了豐富的構件庫。針對網格模擬,NS-2已經預先做了大量的模型化工作。NS-2對網絡中一些常用的實體已經進行了建模,如鏈路、隊列、分組、節點等,并用對象來實現這些實體的特性和功能。這些對象比較易于組合和擴展。用戶可以充分利用這些已有的對象,進行少量的擴展,組合出要研究的網絡體系模型,然后進行模擬。這樣就大大地減輕了進行網絡研究的工作量。

NS-2的構件庫所支持的網絡類型包括廣域網、局域網、移動通信網、衛星通信網等,所支持路由方式包括層次路由、動態路由、多播路由等。NS-2還提供了跟蹤和監視的對象,可以把網絡系統中的狀態和事件記錄下來以便分析。另外,NS-2還提供了大量的數學方面的支持,包括隨機數的產生、隨機變量、積分等。

NS-2可以運行在Linux、UNIX、Windows等多種操作系統平臺上。由于采用C++開發,在Windows下需要用cygwin來提供Linux下的環境。NS-2能很好地支持可視化,利用NAM (network animator) 和Xgraph軟件,可以將仿真結果文件以NAM和Xgraph 兩種方式進行動態顯示。

NS-2的不足之一就是它所針對的協議都是比較底層的協議,不適合用來作網絡覆蓋層方面的模擬。同時它也很難模擬網絡中大規模高度動態的情況。此外,其仿真效果也不理想。NS-2除了模擬功能外,還具仿真功能,NS-2中的對象可以把真實網絡中的分組引入到模擬器,并將模擬器中產生的分組輸出到真實的網絡中去。但NS-2的這種仿真功能一直并不完善,而且平臺的可移植性較差,所以NS-2的這種仿真功能很少被使用。

4P2PSim

P2PSim[5]是一個免費的、多線程的、基于離散事件的模擬器,是由T. M. Gil等人開發,屬于IRIS工程的一部分。IRIS工程正在發展一個新穎的、基于分布式哈希表(DHT)的分布式構造組織。

P2PSim的主要目標是使理解P2P協議的源代碼變得更容易,方便比較不同的協議,擁有較好的性能。P2PSim可用于評估、研究和開發 P2P協議。它采用C++編寫,可運行在類似UNIX 環境下的操作系統中(要求有GCC)。在進行模擬前,P2PSim必須要先建立三個文件,即拓撲結構文件(topology file)、協議文件(protocol file)和事件文件(events file)。

P2PSim官方網站提供了一個叫做“king”數據集的拓撲結構文件,用戶可以從中選擇自己感興趣的拓撲結構文件。P2PSim本身也提供了生成拓撲結構的多個類。

到目前為止,P2PSim已經支持了Chord、Accordion、Koorde、Keklips、Tapestry和Kademlia協議。其中Chord 又包括多個不同的類,即chord、chordFinger和chordFingerPNS。除了可以使用本身已經支持的P2P協議外,P2PSim也允許用戶添加自己編寫的協議。在P2PSim中,能夠模擬的節點數與所采用協議的復雜程度有關,如采用Chord協議的合理節點數是3 000。

P2PSim可把結果可視化,提供根據記錄文件(logfiles)生成統計圖的標準工具。例如可以生成以平均查找延遲為y軸,存活節點平均帶寬消耗為x軸的統計圖。

P2PSim的優點在于它支持多種協議,這些支持的協議可以直接使用。這樣就可以很方便地比較這些協議的異同。P2PSim的擴展性比較好,用戶可以添加自己編寫的協議;此外,它也提供多種網絡拓撲結構的模擬。

P2PSim的欠缺在于它所支持的協議大都是結構化的協議,也就是說目前P2PSim還不支持模擬非結構化的P2P系統。由于采用C++設計,需在Linux下運行,其移植性相對于那些用Java開發的模擬器而言稍弱。另外它提供的documen ̄tation太少,造成用戶認識和使用P2PSim沒那么方便。

5NeuroGrid

NeuroGrid[6,7]模擬器是一個用Java語言開發的屬于開源工程的P2P模擬器,由東京大學的Sam Joseph領導開發。NeuroGrid模擬器起初是為了支持比較Freenet、Gnutella和 NeuroGrid系統的模擬而設計的。不像某些針對某一個具體的P2P系統而設計的模擬器,NeuroGrid是明確地考慮到可擴展性而設計的。

NeuroGrid模擬器主要包含配置文件參數的設置、網絡的創建、消息的產生、消息的傳播處理過程、統計數據收集和綜合分析五個模塊。其主要工作過程如下:用戶對配置文件進行參數設置;然后該模擬器根據相關的參數創建相應的網絡;網絡創建好后再產生一定類型的消息;接著將消息由某個節點發送到網絡中,然后對該消息進行傳播和處理;最后將收集到的數據進行綜合分析。

NeuroGrid模擬器使用戶可以通過配置文件來設置要模擬的網絡類型、創建拓撲圖的種類、節點的數目、為每個節點分配的文件個數、為每個文件分配關鍵字的個數、消息的類型、消息的初始TTL值等。NeuroGrid默認的拓撲選項包括隨機的、環形的以及符合冪規律的拓撲。

網絡的創建包括網絡節點的創建、關鍵字的創建、文件的創建、文件分配給節點以及節點之間的拓撲結構的創建等。網絡創建好后就可以進行相關查找文件的模擬了,進行文件查找之前首先要產生一個查詢消息。NeuroGrid模擬器可以從message這個抽象的類中擴展出不同類型的消息,simpleContentMessage、fuzzyContentMessage、probabilisticFuzzyContentMessage。對于不同類型的網絡,消息的傳播方式是不一樣的。NeuroGrid模擬器在進行消息查找時收集了相關的統計數據。這些數據有匹配查詢的文件數、第一個匹配查詢的文件找到時消息的TTL值、消息傳播量、網絡中所有節點中存在的匹配查詢的文件個數、消息所到達節點的數目等。每完成一次模擬查詢,就將上述數據添加到收集數據的statisticsCollection類中。最后由這個類收集到的數據產生相關統計圖。通過以上介紹,可以知道NeuroGrid模擬器支持可視化、使用方便、可擴展性好。由于采用Java編寫,它的跨平臺性也較好。NeuroGrid的不足在于它只能用自身提供或產生的拓撲網絡,而不能導入由其他拓撲產生器產生的拓撲。這樣,每次模擬過程必須從網絡初始構建開始,因此模擬速度較慢。它也不支持帶寬節點的實際性能模擬,僅僅把帶寬看成是一個相同的值,這樣的模擬假設是比較粗糙的。NeuroGrid在模擬網絡的動態變化方面也有不足,如在模擬過程中只能模擬節點的動態增加而不能方便地模擬節點的動態退出。此外NeuroGrid目前版本尚不支持DHT協議,要在其上面實現DHT還需要進行適當的擴展。

6綜合比較

通過對五個模擬器的分析與比較可以看到,SimGrid和GridSim都是用于任務調度的模擬器,一般來說這類模擬器均側重在對資源調度的模擬,而不是側重資源的搜索查找。NS-2主要是針對比較底層的協議(如TCP/IP協議),而目前P2P系統的搜索算法大多是建立在TCP/IP協議基礎之上的應用層協議,所以NS-2也不太適合用來作P2P搜索算法方面的模擬,同時不能適應巨大規模、高度動態的模擬。P2PSim和NeuroGrid都是針對應用層協議的模擬,較適合作P2P系統搜索方面的模擬。但是P2PSim主要是對Chord等結構化搜索協議進行的模擬,目前不支持非結構化搜索協議。NeuroGrid則是針對非結構化協議的模擬,對于結構化方面的搜索協議需要進行適當的擴充。各種模擬器的比較如表1所示。

7結束語

本文首先介紹了當前一些主要的P2P系統模擬器,對它們的功能、特點、適用領域等方面進行了初步的分析與比較。通過研究這些模擬器,筆者更加相信P2P系統模擬器在P2P研究中的輔助作用。除此之外,筆者希望能借鑒這些模擬器的優點,設計一個通用的P2P系統模擬器。

參考文獻:

[1]BUYYA R. GridSim [EB/OL]. (2003).http://www.buyya.com/gridsim.

[2]INRIA. SimGrid [EB/OL]. (2005).http://simgrid.gforge.inria.fr.

[3]UC Berkeley. NS-2 [EB/OL]. (2005.)http://www.isi.edu/nsnam/ns/.

[4]徐雷鳴,龐博,趙耀.NS與網格模擬[M].北京:人民郵電出版社,2003:13-20.

[5]GIL T M. P2PSim [EB/OL]. (2004).http://pdos.csail.mit.edu/P2PSim/index.html.

[6]JOSEPH S. NeuroGrid [EB/OL]. (2003).http://www.neurogrid.net/php/index.php.

[7]JOSEPH S. An extendible open source P2P simulator [J]. P2P Journal, 2003,3:1-15.

“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”

主站蜘蛛池模板: 呦视频在线一区二区三区| 伊在人亞洲香蕉精品區| 欧美国产成人在线| 在线观看国产网址你懂的| 国产三级韩国三级理| 国产靠逼视频| 91po国产在线精品免费观看| 老色鬼久久亚洲AV综合| 久久人搡人人玩人妻精品| 麻豆国产精品一二三在线观看| 亚洲另类第一页| 999福利激情视频| 久久永久视频| 亚洲品质国产精品无码| 国产精品欧美激情| 色综合网址| h视频在线播放| 最新国产成人剧情在线播放| 久久99精品久久久大学生| 亚洲国产成人无码AV在线影院L| 精品国产污污免费网站| 中文字幕在线免费看| 九色综合伊人久久富二代| 九九热精品视频在线| 欧美日韩国产精品综合 | 国产乱人免费视频| 久久一日本道色综合久久| 日本人妻丰满熟妇区| 中文天堂在线视频| 天天色天天操综合网| 日韩精品无码免费一区二区三区 | 无码内射在线| 国产一区二区三区视频| 日韩不卡高清视频| 日本一区中文字幕最新在线| 亚洲精品桃花岛av在线| 国产成人高清在线精品| 亚洲成网777777国产精品| a级毛片网| a级高清毛片| 农村乱人伦一区二区| 最新国语自产精品视频在| 狠狠色丁香婷婷综合| 久久久久九九精品影院| 亚洲天堂.com| 天堂在线www网亚洲| 精品久久香蕉国产线看观看gif | 直接黄91麻豆网站| 国产在线观看99| 国产精品久久久久久搜索| 91在线激情在线观看| 国产精品男人的天堂| 国产永久在线视频| 欧美亚洲香蕉| 亚洲系列无码专区偷窥无码| 国产亚洲欧美日韩在线一区| 国产黄色视频综合| 2019年国产精品自拍不卡| 国产一区二区三区在线观看视频| 内射人妻无套中出无码| 免费全部高H视频无码无遮掩| 深爱婷婷激情网| 久久久久亚洲精品成人网 | 国产国产人成免费视频77777| 亚洲熟女偷拍| 亚洲va在线∨a天堂va欧美va| 国产视频一区二区在线观看 | 国产精品人莉莉成在线播放| 久久综合色88| 婷婷午夜天| 国产成人91精品免费网址在线| 找国产毛片看| 伊人久久久大香线蕉综合直播| 91在线精品麻豆欧美在线| 91丝袜美腿高跟国产极品老师| 91视频日本| 亚洲日韩AV无码精品| 久青草网站| 欧美中文字幕在线播放| 亚洲欧美另类中文字幕| 成人在线亚洲| 国产麻豆精品在线观看|