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

大型P2P網絡的虛擬仿真實驗床構建

2017-06-10 08:38:55史建燾李秀坤
實驗室研究與探索 2017年4期
關鍵詞:實驗

史建燾, 李秀坤

(哈爾濱工業大學 計算機科學與技術學院, 哈爾濱 150001)

·專題研討——虛擬仿真實驗(44)·

大型P2P網絡的虛擬仿真實驗床構建

史建燾, 李秀坤

(哈爾濱工業大學 計算機科學與技術學院, 哈爾濱 150001)

針對大規模P2P網絡的虛擬仿真實驗床,采用了虛實結合的系統架構、基于事件驅動的高并發IO框架、基于插件架構的業務邏輯處理以及應用了相關數學模型。以虛擬仿真實驗床為支撐設計的P2P污染實驗案例表明,實驗床既可支持8 000個節點以上的大規模虛擬仿真實驗,也可將系統接入Internet,在不影響實際網絡環境運行狀況的同時進行真實網絡實驗。通過這種以虛補實、以實補虛的方式,能夠加深學生對P2P等大規模網絡系統運行原理的理解,進而培養學生的綜合創新能力。

對等網絡; 網絡仿真; 大規模網絡; 內容污染; 實驗教學

0 引 言

隨著信息技術的迅猛發展,P2P(Peer-to-Peer,對等網絡)技術已經成為業界研究和關注的一個熱點,其特有的自組織、分布性的特點,使其迅速發展,已經成為互聯網不可分割的一部分。許多基于P2P技術的應用都應運而生,包括文件共享[1-2],流媒體[3-4],即時通信[5]以及分布式計算[6]等。在研究領域,P2P的結構優化與設計[7],激勵機制[8]和安全性研究[9]都備受關注,同時有關P2P網絡的內容也被加入到了大多數高校的教學計劃中。但是,由于P2P技術摒棄了服務器和客戶端之分,大大顛覆了我們對傳統網絡模式的認知,同時P2P類網絡應用往往會涉及大量節點,其相關實驗多為大規模網絡實驗,P2P攻擊類實驗還會對互聯網產生不可逆的災難性后果,故傳統的實驗環境已經無法滿足研究和實驗教學的需求。因此,在資源和客觀條件有限的情況下,使用虛擬仿真手段成為一個很好的選擇。目前,已經有一些針對P2P網絡的仿真器,使用較多的有NS2[10-11]、Peersim[12]、Oversim[13]以及P2Psim[14]。但是,這些仿真器或多或少都存在著模擬規模有限,系統擴展性不強,不能與真實節點交互的缺點。因此,本文給出了一個針對大型P2P網絡的虛擬仿真實驗床。本著以虛補實、以實補虛的宗旨,不但在網絡拓撲上具有靈活的擴展性,適合不同的網絡規模。同時虛實結合的系統設計、基于事件驅動的高并發IO框架、基于插件架構的業務邏輯處理以及相關P2P數學模型的應用,使得實驗過程和結果都更加可信。

1 實驗床設計與關鍵技術

1.1 實驗床的系統架構及網絡拓撲

實驗床的系統架構以及網絡拓撲如圖1所示。一套虛擬仿真實驗床系統由若干仿真服務器和一臺域間調度服務器構成,仿真服務器數量可以根據需求擴展,理論上可以同時部署多套虛擬仿真實驗床。仿真服務器負責實現具體的虛擬節點并模擬業務流程;域間服務器負責調度所有仿真節點的行為,并控制仿真服務器之間的流量。

圖1 實驗床系統架構及網絡拓撲圖

仿真實驗床內的虛擬節點可以和局域網內的真實P2P主機和索引服務器相連,并通過防火墻接入到Internet。仿真服務器通過實際物理網卡在域間互聯并對外通信,使得虛擬P2P節點可以像真實節點一樣與其他節點或索引服務器通信。由于實際P2P網絡能夠正常運轉的前提,是需要P2P節點將接入信息發布到一個索引服務器上,并通過索引服務器發現其他節點。而我們的虛擬節點都是發布在防火墻內部自己搭建的索引服務器上的,通過防火墻的過濾,保證了實驗床上的虛擬仿真實驗不會對Internet造成影響。此外,為了滿足大規模實驗的要求,提高單臺服務器主機的節點承載能力,實驗床采用了高性能IO模塊、插件和配置管理模塊,接下來會詳細介紹相關的技術路線。

1.2 基于事件驅動的高并發IO框架

為了提高單臺仿真服務器的模擬規模,承載實驗產生的網絡流量,得到更為真實的網絡數據,需要搭建一個高性能的數據處理平臺。由于大規模P2P實驗會在虛擬節點間產生大量TCP連接,需要仿真實驗平臺能夠承受巨大的連接壓力,對系統的IO處理能力有著較高的要求,對此本文搭建了一個具有高并發性的IO框架。主要有以下特點:

(1) 使用了非阻塞I/O和事件驅動模型。由主線程負責處理所有 TCP 連接上的數據讀取和發送,因此TCP的連接數不受線程數的限制。

(2) IO的接入處理和業務邏輯處理相分離。主線程讀取到的數據放入隊列,由業務線程池處理實際的P2P邏輯業務。 IO框架的整體設計如圖2所示。

圖2 高并發IO框架整體設計結構圖

圖2只是一個后端仿真主機與前端IO交互的情景,實際上可以有很多個后端仿真系統同時與前段IO交互。這里設計將數據途經IO處理層而轉流入會話層是為了將所有關于描述符的IO事件處理全部集中于一處,方便更改和維護。當前IO的線程數與主機的CPU數相關,當只有1個CPU時,只有1個主線程,輔助線程有一個任務刪除線程和一個統計線程;當主機為處理器時,每個處理器綁定一個業務處理線程。IO框架采取proactor設計模式。實現了以下功能:

(1) 連接接入管理。包括TCP連接的接收和關閉,連接數據的接收和發送,連接超時的相關處理。

(2) P2P協議數據流的加解密。當仿真節點與外部真實節點互相通信時,需要對真實節點加密的控制報文進行解密。

(3) 會話數據管理。由于整個IO接入模塊是事件驅動的,故系統需要保存每個連接會話的相關數據,當有可讀或可寫事件到來后需根據會話ID向會話管理子模塊查詢相關會話數據。

(4) 連接狀態的監測。對當前TCP連接數、歷史接收和發送的數據量以及即時傳輸速率等信息進行監測,并對外提供查詢接口。

(5) 消息的接收與分發。IO接入層和仿真節點邏輯層采用了相同的消息格式進行通信。IO層將P2P協議報文和控制報文等封裝成消息放入共享內存中,然后以FIFO的方式來通知仿真業務模塊讀取消息并處理。這種采用消息的方式將連接處理和業務處理異步化,一定程度上提高了IO的吞吐性能。

1.3 基于插件架構的P2P邏輯業務處理

進行大規模P2P網絡仿真時,為了保證實驗的真實性,需要模擬不同的節點業務處理流程,在同一仿真服務器上造成線程間運行的異步性。因此在實驗床設計時,采用了基于插件架構的P2P邏輯業務處理技術。在仿真服務器運行時,會有一個或多個線程負責后端P2P邏輯業務的處理。IO接入層和P2P邏輯層之間通過消息隊列來進行通信。P2P邏輯層的主要操作封裝在MessageHandler類中,實現了以下功能:

(1) 協議的解析。主要是P2P報文的解析,根據協議格式將收到的報文解析成不同的消息,提供給上層應用處理。

(2) 協議的處理。由于仿真場景的不同,業務模塊的處理策略可能會變動頻繁,為增強平臺的靈活性即可擴展性,這里采用了插件機制來實現。

P2P邏輯業務處理框架的整體設計如圖3所示。邏輯業務層中的插件架構是最為重要的部分,它使得節點行為策略獨立于整個IO框架系統。每種節點行為策略都以動態鏈接庫模塊的形式存在,策略模塊的編寫只需要專注于P2P消息的處理,而不需要考慮IO連接的情況。同時系統只需要通過配置文件就可以實現節點行為策略的選擇。

圖3 P2P邏輯業務處理框架整體設計結構圖

在系統啟動時,插件管理模塊會根據配置文件為不同仿真節點加載指定的業務插件。當有P2P連接到來時,在應用層連接握手階段將根據對方的節點標識在配置文件中查找相應的插件模塊名稱,然后根據名稱向插件管理模塊查詢模塊句柄,當有應用層消息到達時即可調用該句柄的處理函數進行處理。插件的所有處理函數接口定義都封裝在統一的消息處理接口模塊中。

1.4 相關數學模型的應用

實際的P2P系統具有較高的抖動性,如何真實的模擬大量節點的頻繁加入和離開,直接影響到仿真實驗的可信度。因此,本文在實驗床設計中引入了節點到達和離開數學模型,模型根據實際網絡中的測量數據進行擬合作為依據,更為貼近現實場景。

通過對大量P2P網絡進行研究發現,影響節點請求波動規律的因素主要有三方面:用戶興趣H(t),日周期性P(t),以及隨機噪聲N(t)。不同種子或者同一種子的不同時刻,這些因子所起的作用不同,將節點到達模型表示為:

λ(t)=k1·H(t)+k2·P(t)+k3·N(t)

(1)

將節點離開模型表示為:

γ(t)=l1·H(t)+l2·P(t)+l3·N(t)

(2)

式中:λ(t)為t時刻新到達的節點數量,稱為節點到達率;γ(t)為t時刻離開節點的數量;k1、k2、k3和l1、l2、l3分別為H(t)、P(t)、N(t)的權重。實際仿真系統中設定H(t)服從類高斯分布,P(t)服從類正弦的周期性分布,隨機噪聲根據不同實驗場景進行選擇。在實驗開始前,會根據實驗場景和網絡規模配置不同的參數,并由域間調度服務器進行配置。

2 虛擬仿真實驗舉例

2.1 仿真實驗場景

本節通過一個實驗案例闡述如何應用實驗床進行P2P仿真實驗。實驗場景選取BitTorrent(簡稱BT)網絡下的數據污染實驗,實驗的目的是為了使學生了解BT分塊分片機制的脆弱性。

先了解下相關實驗背景:BT是當前最為流行的P2P應用系統之一,其用戶規模已經達到了百萬級,流量一度占據了P2P網絡總體流量的53%[15]。BT下的數據污染攻擊是在數據交換過程中針對其分塊分片機制的一種攻擊方式,目的是減緩節點的下載速度[16]。攻擊者偽造大量節點加入到要攻擊的共享網絡,向其他節點發送偽造的分塊數據,造成受害節點數據校驗失敗,丟棄整個分片并重新下載,這樣就減緩了用戶下載速度,甚至造成節點無法下載到整個文件。

實驗采用虛實結合,以實驗虛的方式,分別模擬2 000個良性節點和8 000個攻擊節點,并在Internet上選擇實際共享規模分別為500和2 000的兩個種子文件,對應的數據文件大小均為200 MB。隨機選擇P2P仿真節點對應的業務插件,包括攻擊行為插件和不同類型和版本的客戶端行為插件。在局域網內搭建一個索引服務器,運行3個不同類型的客戶端節點,包括比特彗星、比特精靈和uTorrent。

學生需要進行3個實驗步驟:① 不運行仿真節點,讓真實客戶端載入2個種子文件并完成下載,記錄下載用時。該步驟反映了真實的下載情況。② 運行實驗床上模擬的攻擊節點,配置不同的攻擊節點數,讓真實客戶端載入2個種子文件,并完成下載,記錄下載用時。該步驟反映了攻擊對單一節點的影響。③ 運行實驗床上的模擬節點,并斷開與Internet的連接。分別配置不同的攻擊節點數和初始良性節點數,配置節點到達模型和節點離開模型參數,分別反映大小不同的兩個共享網絡規模,記錄單位時間完成下載的良性節點數。該步驟反映了攻擊對整個共享網絡的影響。

2.2 實驗測試結果

以下是在實驗床上運行得到的實驗結果。表1記錄了3種客戶端在真實環境正常下載2個文件的用時,文件1基本在1 h左右下載完成,文件2基本在0.5 h左右下載完成。

表1 各種客戶端在Internet實際網絡中的正常下載用時

表2分別記錄了數據污染攻擊對3種不同客戶端的影響,客戶端從Internet上的真實節點下載正常數據,從虛擬仿真節點下載污染數據。攻擊大大減緩了客戶端的下載速度,完整的文件下載耗時很長,因此實驗只記錄3 h內的完成情況。只有uTorrent在2 000個攻擊節點的情況下能完成文件2的下載,但用時也超過2 h。

表2 攻擊對單個節點下載速度的影響

表3是實驗步驟3的結果,實驗在完全虛擬化的環境下進行3 h,分別記錄了完成下載的各種客戶端的數量。其中良性節點數只表示在線良性節點,實驗過程中隨時都有節點加入和離開共享網絡。

表3 攻擊對整個共享網絡的影響

實驗結束后通過對完成下載的節點類型進行統計,發現絕大多數為uTorrent節點,有少量的比特彗星節點,沒有比特精靈節點。通過對比實驗步驟2與3的結果,發現完全虛擬化環境中的實驗結果與實際網絡中的結果基本一致。

3 結 語

本文介紹的P2P網絡虛擬仿真實驗床,一方面可以同時模擬大量虛擬P2P節點,另一方面也可以接入Internet連接真實節點。通過這種虛實結合的設計,既能進行虛擬仿真實驗,獲取真實環境下無法獲得的實驗結果;同時在不影響實際網絡運行狀況的前提下,也可以完成實際網絡中的實驗,通過真實環境下的實驗結果來驗證虛擬仿真實驗。

以第2節中的實驗為例,由于真實環境下很難評估數據污染攻擊對P2P網絡整體的攻擊效果,學生可通過實驗床進行完全虛擬化的仿真實驗。與此同時,通過部署真實客戶端和半開放的實驗環境來評價攻擊對單個節點的影響。將實驗結果進行對比,可得到相同的結論:① 污染攻擊對小規模共享網絡影響更大;② 攻擊節點越多攻擊效果越好;③ 污染攻擊對比特精靈客戶端效果最好,對uTorrent客戶端效果最差。

這樣通過運用該仿真實驗床可以使學生更加深入了解P2P網絡的各種特性,對比不同客戶端的優缺點。甚至可以對P2P網絡及其客戶端的實現進行改進,并通過虛擬仿真實驗進行驗證。因此,借助實驗床可以更好傳授學生理解、分析和研究問題的方法,培養學生的綜合創新能力。

[1] 陳 鋒,羅逢吉,文俊浩.基于JXTA的P2P文件共享系統的實現研究[J].計算機科學,2007,34(12):126-128.

[2] 馬素剛.P2P技術在大文件共享中的應用研究[J].實驗技術與管理,2016,33(3):147-150.

[3] 張明軍,彭 婭,俞文靜.P2P流媒體服務方案及其關鍵技術研究[J].計算機工程,2013,39(1):125-130.

[4] 張志明,周 晉,陳 震,等.基于網絡編碼的對等網流媒體傳輸模型和算法[J].軟件學報,2012,23(3):648-661.

[5] 王振華,王 攀,張順頤.基于綜合統計特征的Skype流量分析與識別[J].南京郵電大學學報(自然科學版),2006,26(1):1-7.

[6] 茂高偉,韓 華,代亞非.一種P2P環境下分布式文件存儲系統的緩存策略[J].計算機工程與應用,2004,40(30):45-48.

[7] 李 偉,趙慶展,曹傳東. 基于GIS與P2P的區域教育資源共建模式[J].實驗室研究與探索,2013,32(5):201-204.

[8] 王 焱,周天宏.基于多粒度和激勵機制的移動P2P網絡動態信任模型[J].實驗室研究與探索,2013,32(11):246-250.

[9] 聶捷楠,張 洋. 基于安全路由算法的P2P網絡安全性能優化研究[J].科技通報,2013(9):149-151.

[10] 周德榮,夏 齡,舒 濤,等. NS2網絡協議虛擬仿真實驗平臺研究[J].實驗技術與管理,2014,31(3):87-90.

[11] 吉祖勤,黃津津. 基于NS2的隊列管理算法DropTail和RED仿真與研究[J].實驗室研究與探索,2014,33(1):5-8.

[12] 郭 俊,楊 忠. PeerSim模擬技術研究[J].現代計算機(專業版),2010(4):130-131.

[13] 崔建群,賴敏財,蔣文斌,等. OverSim:可擴展的應用層組播網絡仿真框架[J].計算機工程與科學,2012,34(10):1-5.

[14] 任 超,李戰懷,張 英. 異構P2P網絡的分布式查詢協議[J].電子科技大學學報,2009,38(1):108-112.

[15] 蘇馬婧. P2P文件共享系統測量及其安全性研究[D].哈爾濱:哈爾濱工業大學,2013.

[16] 史建燾,張宏莉,方濱興. BitTorrent假塊污染攻擊的對抗方法研究[J].計算機學報,2011,34(1):15-24.

A Virtual Simulation Experiment Bed towards Large Scale P2P Networks

SHIJiantao,LIXiukun

(School of Computer Science and Technology, Harbin Institute of Technology, Harbin 150001, China)

The characteristics of self-organization,distributing and large scale,make P2P network different from the traditional network. It is often difficult to realize P2P related experiments in the traditional experiment environment. The virtual simulation experiment bed towards large scale P2P networks uses system architecture combined by virtuality and reality, high concurrent IO framework driven events, plug-in unit based business logic processing and application of relevant mathematical models. Experiment cases show that the experiment bed can do both large scale virtual simulation experiment and real network experiment in the Internet. The real network experiment will not affect the actual operation of the P2P network. The methods of "reality supplying virtuality" and "reality verifying virtuality" can deepen students' understanding of the P2P network and cultivate students' comprehensive innovation ability.

P2P network; network simulation; large-scale network; content pollution; experimental teaching

2016-08-15

國家自然科學基金(61402137)資助

史建燾(1980-),男,黑龍江哈爾濱人,博士,工程師,研究方向:計算機網絡,云計算,信息安全。

Tel:0451-86413844,13826462016; E-mail:shijiantao@hit.edu.cn

TP 393.0

A

1006-7167(2017)04-0079-04

猜你喜歡
實驗
我做了一項小實驗
記住“三個字”,寫好小實驗
我做了一項小實驗
我做了一項小實驗
記一次有趣的實驗
有趣的實驗
小主人報(2022年4期)2022-08-09 08:52:06
微型實驗里看“燃燒”
做個怪怪長實驗
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
主站蜘蛛池模板: 四虎成人在线视频| 伊人无码视屏| 亚洲高清资源| 成人小视频在线观看免费| 欧美一级夜夜爽| 亚洲二区视频| 国产特一级毛片| 天天爽免费视频| 国产日本一区二区三区| 91精品国产一区自在线拍| 中文字幕亚洲另类天堂| 91久久精品日日躁夜夜躁欧美| 国产精品手机视频| 88国产经典欧美一区二区三区| 国产v欧美v日韩v综合精品| 美女免费黄网站| 九九热视频精品在线| 玖玖精品在线| 国产麻豆va精品视频| 欧美精品不卡| 国产欧美高清| 国产国拍精品视频免费看| 久久成人18免费| 狠狠v日韩v欧美v| 亚洲区一区| 精品黑人一区二区三区| 人妻21p大胆| 中文字幕有乳无码| 欧美色99| 久久永久视频| 色综合日本| 亚洲国产第一区二区香蕉| 色噜噜综合网| 国产一级毛片yw| 亚洲综合色婷婷中文字幕| 五月天久久综合| 成年女人a毛片免费视频| 四虎亚洲国产成人久久精品| 国产精品大白天新婚身材| 国产高清在线精品一区二区三区| 国国产a国产片免费麻豆| 亚洲69视频| 高清码无在线看| 制服丝袜在线视频香蕉| 亚洲成A人V欧美综合| 亚洲色图欧美| 精品無碼一區在線觀看 | 免费A∨中文乱码专区| 精品無碼一區在線觀看 | 国产又爽又黄无遮挡免费观看| 91小视频在线观看免费版高清| 成人日韩欧美| 久久黄色毛片| 99免费在线观看视频| 91免费精品国偷自产在线在线| 日本高清有码人妻| 久久男人资源站| 女人天堂av免费| 亚洲天堂在线视频| 日韩高清欧美| 久久国产高清视频| 无码AV高清毛片中国一级毛片| 国内毛片视频| 色综合久久无码网| 欧美在线天堂| 少妇精品网站| 亚洲成人免费看| 中文字幕在线播放不卡| 国产精品浪潮Av| 无码专区国产精品第一页| 中文字幕66页| 亚洲swag精品自拍一区| 亚洲AV无码精品无码久久蜜桃| 欧美国产精品不卡在线观看| 91精品最新国内在线播放| 久久黄色影院| 色丁丁毛片在线观看| 久久一本精品久久久ー99| swag国产精品| 国产香蕉在线视频| 久久一本日韩精品中文字幕屁孩| 国产美女一级毛片|