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

基于NS3的BCube數(shù)據(jù)中心網(wǎng)絡(luò)仿真

2020-06-22 13:15:56蔣凌云盧凱黃海平
軟件導刊 2020年5期

蔣凌云 盧凱 黃海平

摘 要:為了解決復雜數(shù)據(jù)中心網(wǎng)絡(luò)仿真難題,在對NS3仿真工具的研究基礎(chǔ)上,對NS3的路由協(xié)議進行擴充,研究使用NS-3網(wǎng)絡(luò)仿真軟件自動生成BCube網(wǎng)絡(luò)拓撲,實現(xiàn)BSR路由協(xié)議,通過NetAnim可視化模塊直觀展示網(wǎng)絡(luò)仿真結(jié)果,并通過Tracing系統(tǒng)收集、統(tǒng)計與分析網(wǎng)絡(luò)丟包情況、端到端時延以及吞吐量等性能指標。與傳統(tǒng)RIP協(xié)議、OSPF協(xié)議進行對比,證明了BSR路由的優(yōu)越性。該研究可為數(shù)據(jù)中心網(wǎng)絡(luò)提供有效的參考信息,有利于簡化數(shù)據(jù)中心網(wǎng)絡(luò)仿真工作,使數(shù)據(jù)中心網(wǎng)絡(luò)能更快地投入使用。

關(guān)鍵詞:NS3;網(wǎng)絡(luò)仿真;BCube;數(shù)據(jù)中心;網(wǎng)絡(luò)性能指標

DOI:10. 11907/rjdk. 192104 開放科學(資源服務(wù))標識碼(OSID):

中圖分類號:TP393文獻標識碼:A 文章編號:1672-7800(2020)005-0190-05

0 引言

近年來,隨著云計算和計算機密集型網(wǎng)絡(luò)技術(shù)的快速發(fā)展,作為其基礎(chǔ)設(shè)施的數(shù)據(jù)中心網(wǎng)絡(luò)再次成為研究熱點。在當前的云計算與大數(shù)據(jù)環(huán)境下,數(shù)據(jù)中心網(wǎng)絡(luò)中的服務(wù)器節(jié)點數(shù)呈指數(shù)級增長,而傳統(tǒng)多根樹型數(shù)據(jù)中心網(wǎng)絡(luò)結(jié)構(gòu)[1]由于具有造價昂貴、容錯性差等缺點,很難滿足實際需求。因此,學術(shù)界與企業(yè)界研究出很多新的數(shù)據(jù)中心網(wǎng)絡(luò)結(jié)構(gòu),例如BCube[2]、DCell[3]、RCube[4]等以服務(wù)器為中心的數(shù)據(jù)中心網(wǎng)絡(luò)結(jié)構(gòu),以期解決現(xiàn)有問題。

每種數(shù)據(jù)中心網(wǎng)絡(luò)都有其對應的路由協(xié)議。本文重點研究了BCube數(shù)據(jù)中心網(wǎng)絡(luò)中的BSR路由算法,其相比傳統(tǒng)RIP協(xié)議與OSPF協(xié)議有著很大不同。BSR是一種基于函數(shù)計算的路由協(xié)議,無需維護龐大的路由信息,路由負載能力較強,配置相對簡單,適用于大規(guī)模數(shù)據(jù)中心網(wǎng)絡(luò)[5]。

但由于受到數(shù)據(jù)中心網(wǎng)絡(luò)的服務(wù)器節(jié)點數(shù)量龐大、拓撲結(jié)構(gòu)復雜及實驗成本高等現(xiàn)實因素限制,目前大多僅停留在理論研究階段[6]。一般來說,科研人員經(jīng)過研究提出的新數(shù)據(jù)中心網(wǎng)絡(luò)及路由協(xié)議不會立即部署使用,在此之前,必須進行大量復雜的測試與分析工作,而如何更好地測試與驗證新提出的數(shù)據(jù)中心網(wǎng)絡(luò),是一個亟待解決的難題。

一種有效的解決方案是運用仿真方法對新提出的數(shù)據(jù)中心網(wǎng)絡(luò)進行初步實現(xiàn)與驗證,有助于對新結(jié)構(gòu)作出及時調(diào)整與改進。當前有許多優(yōu)秀的網(wǎng)絡(luò)仿真軟件(如NS-2[7]、OPNET[8])都具備很強的模擬仿真功能。NS3在完備性、開源性、易擴展性等方面的特色使其優(yōu)于現(xiàn)有大多數(shù)主流網(wǎng)絡(luò)仿真軟件。NS3功能非常強大,其可以對各種網(wǎng)絡(luò)協(xié)議和各個層次進行模擬與研究,并提供靈活的擴展支持[9]。

本文主要對NS3網(wǎng)絡(luò)仿真軟件的點到點通信模塊進行分析,重點介紹網(wǎng)絡(luò)設(shè)備節(jié)點和網(wǎng)絡(luò)鏈路仿真特性,并以此為基礎(chǔ)給出BSR路由協(xié)議擴展方法,并構(gòu)建BCube結(jié)構(gòu)的數(shù)據(jù)中心網(wǎng)絡(luò)。

1 BCube數(shù)據(jù)中心網(wǎng)絡(luò)特點

BCube是一種基于集裝箱的模塊化數(shù)據(jù)中心新型網(wǎng)絡(luò)架構(gòu)[10]。BCube架構(gòu)核心是以服務(wù)器為中心的網(wǎng)絡(luò)結(jié)構(gòu),其中具有多個網(wǎng)絡(luò)端口的服務(wù)器連接到多層COTS(商品貨架式)小型交換機。BCube是遞歸定義的結(jié)構(gòu)。BCube0只是連接到 n 端口交換機的n個服務(wù)器。一個BCube1由 n 個 BCube0與n個n端口交換機構(gòu)成。以此類推,BCubek(k≥1)由n個BCubek-1和nk個n端口交換機構(gòu)成。BCubek中的每個服務(wù)器都有k + 1個端口,并從0級到k級編號。由此可知,BCubek有N = nk +1個服務(wù)器和k + 1級交換機,每個級別都有 nk個n端口交換機,如圖1所示。

BCube采用BSR路由協(xié)議提供高效的路由策略[11]。BSR可以充分利用BCube的高網(wǎng)絡(luò)容量,并自動均衡通信負載,同時具有良好的容錯性能。BSR將服務(wù)器分為起始服務(wù)器、中繼服務(wù)器和目的服務(wù)器[12]。其通過起始服務(wù)器控制路由路徑,而不需要中繼服務(wù)器的協(xié)調(diào)。中繼服務(wù)器不需要路由,只需要根據(jù)報文頭文件進行轉(zhuǎn)發(fā)。起始服務(wù)器負責選取可達的最優(yōu)路徑,即最小剩余帶寬最大的路徑,若其相同時則選取最短路徑[13]。中繼服務(wù)器向起始服務(wù)器返回錯誤信息,并報告各條路徑的帶寬信息,目的服務(wù)器返回含有路徑中最小帶寬的探測信息,從而一方面避免了全局路由狀態(tài)播報,另一方面使BCube具有動態(tài)均勻負載能力,且路由效率極高[14]。

2 BCube網(wǎng)絡(luò)拓撲仿真過程

NS3不是NS2的擴展,而是一款全新的網(wǎng)絡(luò)模擬軟件[15],是由美國華盛頓大學的Thomas教授及其研究小組開發(fā)的。其廣泛汲取了當前主流仿真器NS2、YANS 和GTNets的特點,目前已經(jīng)發(fā)展到3.29版本。

NS3本質(zhì)上是一款離散事件仿真器,從上到下每個模塊都依賴于其底層模塊[16]。內(nèi)核模塊位于最底層,實現(xiàn)了NS3最核心的功能,如事件調(diào)度器、智能指針、回調(diào)機制等,為不同網(wǎng)絡(luò)類型提供一般性的網(wǎng)絡(luò)仿真服務(wù),其它模塊功能都建立在該底層模塊之上。Network是網(wǎng)絡(luò)數(shù)據(jù)分組模塊,主要定義了數(shù)據(jù)包、Pcap文件操作以及網(wǎng)卡等抽象基類。

2.1 點到點通信模型

NS3的點到點通信模型是一個非常簡單的點到點數(shù)據(jù)鏈路,通過一個PointToPointChannel正好連接兩個PointToPointNetDevice裝置,可以看作是一個全雙工RS-232或RS-422鏈路。PointToPointChannel模擬了點到點通信模型,并能以指定速率進行通信,且提供以下屬性:Delay: NS3::Time用于指定信道的光傳輸延遲速度,而PointToPointNetDevice提供Address/DataRate/TxQueue等屬性。

通過實例化PointToPointHelper對象連接PointToPoint網(wǎng)絡(luò)設(shè)備,并配置信道屬性,構(gòu)建點到點通信網(wǎng)絡(luò)。

2.2 BSR路由協(xié)議實現(xiàn)

NS3中的所有路由協(xié)議都是繼承自Ipv4RoutingProtocol類,其實現(xiàn)了路由協(xié)議最基本的函數(shù)RouteOutput()和RouteInput(),且其中默認了一個基本的靜態(tài)路由。首先通過函數(shù)RouteOutput()將應用層(application)產(chǎn)生的數(shù)據(jù)包進行層層封裝然后發(fā)送,直到到達網(wǎng)卡(device),再通過路由規(guī)則LookupStatic()轉(zhuǎn)發(fā)給其它節(jié)點,到達目的節(jié)點后通過函數(shù)RouteInput()接收數(shù)據(jù)包,并層層剝離數(shù)據(jù)包首部,一直發(fā)送到應用層(application)。本文模擬的BCube網(wǎng)絡(luò)是一種以服務(wù)器為中心的互連結(jié)構(gòu),服務(wù)器兼具路由功能,報文在具有多個網(wǎng)絡(luò)接口的服務(wù)器中轉(zhuǎn)發(fā),交換機僅在第二層執(zhí)行報文轉(zhuǎn)發(fā)功能。其連接方式是在B0, n以外的層次采用普通交換機實現(xiàn)連接。BCube在任一級都具有相同的單元數(shù)n(基數(shù)),因此Bk, n擁有nk+1臺服務(wù)器(B0,n中的服務(wù)器數(shù)為n)[17]。

BCube網(wǎng)絡(luò)采用BSR(BCube Source Routing)路由協(xié)議,其是一種基于函數(shù)計算的路由方法,采用路徑自適應協(xié)議,使用k+1進制的地址組對每個服務(wù)器節(jié)點編號,通過任意兩節(jié)點編號之間的函數(shù)關(guān)系,自動生成路由,而不需要向局域網(wǎng)中廣播報文獲取相鄰路由信息,每個節(jié)點只需存儲目的節(jié)點編號,從而減少了內(nèi)存需求,提高了帶寬利用率[18]。BSR能很好地構(gòu)造網(wǎng)絡(luò)中最長路徑較短的多條不相交路徑,并實現(xiàn)可靠數(shù)據(jù)傳輸[19]。以下將詳述BSR路由協(xié)議在NS3中的實現(xiàn)過程。

為了能在NS3環(huán)境下模擬運行BSR路由協(xié)議,首先生成一個代理類,該類繼承于Ipv4RoutingProtocol類,同時繼承了兩個基本功能函數(shù)RouteOutput()和RouteInput(),用于轉(zhuǎn)發(fā)與接收經(jīng)過該節(jié)點的數(shù)據(jù)包;其次需要實現(xiàn)Bcube的路由轉(zhuǎn)發(fā)規(guī)則,先對每個主機(node)編號,當網(wǎng)絡(luò)中的某個服務(wù)器節(jié)點發(fā)送數(shù)據(jù)時,該節(jié)點便會自動獲取本節(jié)點地址數(shù)組與目的地址數(shù)組,并進行對比計算,記錄數(shù)據(jù)傳輸經(jīng)過的每一個節(jié)點,最終得到整條路由路徑。核心代碼如下:

BCube數(shù)據(jù)中心網(wǎng)絡(luò)的任意兩個服務(wù)器節(jié)點之間存在k+1條路徑,通過for循環(huán)隨機產(chǎn)生不同的array數(shù)組,生成k+1條不相交路徑。本文將源節(jié)點生成的路徑存放在報文頭中,每轉(zhuǎn)發(fā)一次報文,發(fā)送端便從數(shù)據(jù)包的path數(shù)組中向后遍歷一位,作為下一跳節(jié)點,直到遍歷結(jié)束。

3 BCube示例仿真實現(xiàn)

本文將構(gòu)建一個2層4端口的BCube拓撲(見圖2),并進行簡單的性能測試。仿真實驗環(huán)境在虛擬機上構(gòu)建,在VMware上創(chuàng)建一臺Ubuntu虛擬機,并安裝NetAnim可視化軟件與NS3仿真軟件。

搭建BCube數(shù)據(jù)中心網(wǎng)絡(luò)拓撲,在scratch/bcube.cc文件中編輯腳本。首先通過NodeContainer節(jié)點容器類的Create()方法創(chuàng)建24個節(jié)點,其中16個為服務(wù)器,另外8個為交換機。PointToPointHelper類負責連接網(wǎng)絡(luò)設(shè)備以及設(shè)置網(wǎng)絡(luò)信道屬性。通過實例化PointTopointHelper對象設(shè)置信道速率及時延等屬性,并通過InStall()方法安裝到每個節(jié)點。以上便完成了設(shè)備與信道配置,接下來通過InternetStackHelper類為每臺設(shè)備安裝一個網(wǎng)絡(luò)協(xié)議棧,主要是IP層。通過類Ipv4AddressHelper的SetBase()為節(jié)點上的設(shè)備配置IP地址和子網(wǎng)掩碼。至此,一個安裝了協(xié)議棧、配置了IP地址的點到點BCube網(wǎng)絡(luò)便搭建完成。核心代碼如下:

在成功建立拓撲后,可以通過NetAnim模塊顯示該網(wǎng)絡(luò)拓撲的效果。NS3中的NS3::AnimationInterface類負責追蹤節(jié)點間的數(shù)據(jù)分組流軌跡,并生成XML跟蹤文件[20]。在NetAnim中讀取statistics文件夾下生成的XML文件,生成如圖3所示的BCube拓撲,可以動態(tài)顯示數(shù)據(jù)流向以及經(jīng)過的節(jié)點。

創(chuàng)建好的網(wǎng)絡(luò)并不會自己產(chǎn)生流量,需要選擇合適的網(wǎng)絡(luò)應用模型產(chǎn)生數(shù)據(jù)通信。首先選擇一個節(jié)點作為客戶端發(fā)送數(shù)據(jù)(0號節(jié)點),另一個節(jié)點作為服務(wù)器端,負責接收數(shù)據(jù)(8號節(jié)點),客戶端節(jié)點以TCP流量發(fā)送數(shù)據(jù)包給服務(wù)器節(jié)點。本實驗仿真該拓撲網(wǎng)絡(luò)的TCP擁塞窗口機制,通過加入錯誤機制制造數(shù)據(jù)丟失,最終引起擁塞窗口的改變。主要代碼如下:

通過對NS3中Tracing文件的處理可以對整個網(wǎng)絡(luò)進行性能分析,計算出整個網(wǎng)絡(luò)的數(shù)據(jù)傳輸延遲、丟包率和吞吐量,并通過Gnuplot工具生成相應實驗結(jié)果圖,以反映各種網(wǎng)絡(luò)性能參數(shù)隨時間變化的趨勢。

4 實驗結(jié)果及分析

仿真分為3組實驗進行,分別針對端到端時延、網(wǎng)絡(luò)吞吐量和丟包情況,并與RIP協(xié)議及OSPF協(xié)議進行對比。

圖4給出了BSR協(xié)議、RIP協(xié)議和OSPF協(xié)議下網(wǎng)絡(luò)吞吐量隨時間的變化關(guān)系。BCube網(wǎng)絡(luò)吞吐量隨時間變化呈近似線性增長,當數(shù)據(jù)流變大時,網(wǎng)絡(luò)吞吐量的增長率都有所降低,且趨于平穩(wěn)。在相同的網(wǎng)絡(luò)流量下,BSR協(xié)議吞吐量略高于OSPF協(xié)議,也高于RIP協(xié)議。

由仿真結(jié)果可知,BSR協(xié)議不涉及中間路由,避免了鏈路狀態(tài)廣播,其網(wǎng)絡(luò)結(jié)構(gòu)提供了大量并行不相交路徑,且網(wǎng)絡(luò)中更多服務(wù)器的平均長度小于3,可以有效減少路由產(chǎn)生的擁堵,增加網(wǎng)絡(luò)吞吐量,縮短網(wǎng)絡(luò)時延,減少網(wǎng)絡(luò)的丟包情況。

5 結(jié)語

本文通過實例介紹如何使用NS3快速、便捷地創(chuàng)建一個數(shù)據(jù)中心網(wǎng)絡(luò)拓撲,并對其進行簡單的性能測試與調(diào)整,以便其更符合實驗環(huán)境,且更貼近真實網(wǎng)絡(luò)。本文還在NS3中重點實現(xiàn)了適用于BCube架構(gòu)的BSR路由協(xié)議,并與RIP及OSPF路由協(xié)議進行了比較。今后將對NS3模擬軟件的其它模塊進行研究及改進,同時對其它數(shù)據(jù)中心網(wǎng)絡(luò)拓撲下的各類應用性能及可行性進行驗證。

參考文獻:

[1] DIEGO K, FERNANDO M V R, PAULO V,et al. Software-defined networking: a ?comprehensive survey[J]. ?Proceedings ?of the IEEE, 2015, 103(1): 14-76.

[2] GUO C, LU G, LI D, et al. BCube: a high performance,server-centric network architecture for modular data centers[J]. ?ACM SIGCOMM Computer Communication Review, 2009, 39(4): 63-74.

[3] LI Z, YANG Y. RCube: a power efficient and highly available network for data centers[C]. Parallel and Distributed Processing Symposium (IPDPS), 2017 IEEE International. IEEE, 2017: 718-727.

[4] GUO C, WU H, TAN K, et al. DCell: a scalable and fault-tolerant network structure for data centers[C]. ACM SIGCOMM Computer Communication Review. ACM, 2008, 38(4): 75-86.

[5] HAN Z, YU L. A survey of the BCube data center network topology[C]. 2018 IEEE 4th International Conference on Big Data Security on Cloud (BigDataSecurity), 2018: 229-231.

[6] 茹新宇,劉淵. 網(wǎng)絡(luò)仿真器 NS3 的剖析與探究[J]. 計算機技術(shù)與發(fā)展, 2018, 28(3): 72-77.

[7] KASHYAP V K,ASTYA R, NAND P, et al. Comparative study of AODV and DSR routing protocols in wireless sensor network using NS-2 simulator[C]. 2017 International Conference on Computing, Communication and Automation (ICCCA). ?IEEE, 2017: 687-690.

[8] BISWAS S. Simulation model of beacon enabled 802.15. 4 networks with OPNET modeler[C]. 2017 International Electrical Engineering Congress (iEECON). ?IEEE, 2017: 1-4.

[9] COUDRON M, SECCI S. An implementation of multipath TCP in ns3[J]. ?Computer Networks, 2017, 116: 1-11.

[10] PAN T, CHENG B, FAN J, et al. Toward the completely independent spanning trees problem on BCube[C]. 2017 IEEE 9th International Conference on Communication Software and Networks (ICCSN). ?IEEE, 2017: 1103-1106.

[11] ASGHARI V, MOGHADDAM R F, CHERIET M. Performance analysis of modified BCube topologies for virtualized data center networks[J]. ?Computer Communications, 2016, 96: 52-61.

[12] KUMAR A R A, RAO S V, GOSWAMI D. Ns3 simulator for a study of data center networks[C]. 2013 IEEE 12th International Symposium on Parallel and Distributed Computing (ISPDC),2013: 224-231.

[13] SINGH A, ONG J, AGARWAL A, et al. Jupiter rising: a decade of clos topologies and centralized control in google's datacenter network[C]. ACM SIGCOMM Computer Communication Review,ACM, 2015, 45(4): 183-197.

[14] GUO D. Aggregating uncertain incast transfers in BCube-like data centers[J]. ?IEEE Transactions on Parallel and Distributed Systems, 2017, 28(4): 934-946.

[15] ZARRAD A, ALSMADI I. Evaluating network test scenarios for network simulators systems[J]. International Journal of Distributed Sensor Networks, 2017, 13(10): 6-8.

[16] 孫永勝,賀珊珊,王維. 基于 NS-3 的核電 DCS 網(wǎng)絡(luò)仿真框架[J]. ?電子技術(shù)與軟件工程, 2018 (5): 17-18.

[17] LI Z, YANG Y. Permutation generation for routing in BCube connected crossbars[C]. ?2015 IEEE International Conference on Communications. IEEE, 2015.

[18] WANG S, LUO J, LO Y H, et al. Forwarding and optical indices in an all-optical BCube networks[C]. 2018 IEEE 37th International Performance Computing and Communications Conference (IPCCC). ?IEEE, 2018.

[19] KLIAZOVICH D, BOUVRY P, KHAN S U. Simulation and performance analysis of data intensive and workload intensive cloud computing data centers[M]. Optical Interconnects for Future Data Center Networks. Springer, New York, NY, 2013: 47-63.

[20] ALDALBAHI A,RAHAIM M,KHREISHAH A,et al. Extending ns3 to simulate visible light communication at network-level[C]. 2016 23rd International Conference on Telecommunications (ICT), 2016.

(責任編輯:黃 健)

主站蜘蛛池模板: 色成人亚洲| 欧美国产日产一区二区| 欧美午夜网站| 国产精品无码AV中文| 日韩精品高清自在线| 中文字幕66页| 茄子视频毛片免费观看| swag国产精品| 国产不卡一级毛片视频| 国产一二视频| 亚洲日产2021三区在线| 黄色片中文字幕| 国产精品视频第一专区| 美女免费精品高清毛片在线视| 午夜天堂视频| 国产黑丝一区| 亚洲色精品国产一区二区三区| 国产浮力第一页永久地址| 91原创视频在线| 国产精品成人一区二区不卡| 成人在线观看不卡| 久久综合色天堂av| 午夜a视频| 伊人91在线| 国产夜色视频| 亚洲国产精品一区二区高清无码久久| 亚洲精品免费网站| 免费AV在线播放观看18禁强制| 亚洲精品无码AV电影在线播放| 欧美区日韩区| 色亚洲成人| 亚洲综合色婷婷| 亚洲精品无码成人片在线观看| 她的性爱视频| 香港一级毛片免费看| 暴力调教一区二区三区| 国产精品 欧美激情 在线播放| 91精品免费久久久| 日韩欧美91| 五月六月伊人狠狠丁香网| 秋霞国产在线| 伊人久综合| 爆乳熟妇一区二区三区| 中文字幕无码av专区久久| 免费观看欧美性一级| 中文字幕永久视频| 亚洲综合激情另类专区| 亚洲—日韩aV在线| 欧美日韩精品一区二区视频| 一级一毛片a级毛片| Aⅴ无码专区在线观看| 无码专区在线观看| 精品福利一区二区免费视频| 啪啪永久免费av| 免费一级毛片在线播放傲雪网 | 男人天堂亚洲天堂| 91九色国产porny| 黄色网在线| 亚洲va视频| 色网站在线视频| 日本福利视频网站| 黄色一及毛片| 国产特级毛片aaaaaaa高清| 亚洲乱码视频| 精品欧美日韩国产日漫一区不卡| 成人欧美在线观看| 最新加勒比隔壁人妻| 亚洲综合中文字幕国产精品欧美| 午夜免费小视频| 免费在线成人网| 高h视频在线| 亚洲高清免费在线观看| 99国产精品一区二区| 国产网友愉拍精品视频| 在线看国产精品| 超碰精品无码一区二区| 亚洲精品在线影院| 四虎成人免费毛片| 欧美性色综合网| 国产毛片网站| 国产一区亚洲一区| 精品自窥自偷在线看|