鄧 博,毛紅宇,王曉鋒,劉 淵
1(江南大學 物聯(lián)網工程學院,江蘇 無錫 214122) 2(江南計算技術研究所,江蘇 無錫 214083) 3(江南大學 數字媒體學院,江蘇 無錫 214122)
當前網絡仿真與效果評估平臺正成為新型網絡技術驗證與網絡安全技術評估的關鍵基礎設施,而網絡復現(xiàn)技術是整個平臺的基石[1].近年來,圍繞著如何復現(xiàn)大規(guī)模網絡這個問題,關鍵技術主要集中在網絡模擬、網絡仿真,和實物測試床三個方面.網絡模擬技術具有高度的可擴展性,可模擬超大規(guī)模的網絡,美國倫斯勒理工學院曾經就基于并行離散事件模擬技術,模擬了百萬節(jié)點至十億節(jié)點級規(guī)模的網絡[2],但網絡模擬技術依靠相關模型僅僅是模擬系統(tǒng)的一部分功能,難以支撐現(xiàn)實用戶的操作和實際網絡應用的部署,所構建的虛擬網絡在逼真度上具有局限性.相比于網絡模擬,網絡仿真和實物測試床能夠有效滿足網絡實驗和評估中對逼真度的要求,加拿大維多利亞大學的Case Lab曾基于一千個物理服務器仿真了具有一萬臺虛擬機的網絡[3],不過網絡仿真在規(guī)模上仍難以與網絡模擬相比.實物測試床存在成本高、靈活性差等缺點,同樣難以支持大規(guī)模網絡的研究.因此,研究者提出虛實融合的實驗環(huán)境,即在基于網絡模擬或網絡仿真形成的虛擬網絡中接入實物設備,實現(xiàn)網絡模擬、網絡仿真、實物測試床的三層面融合,可同時滿足網絡研究對于規(guī)模性和逼真度的要求.相關研究現(xiàn)狀如下:
文獻[4]綜合分布式網絡模擬技術以及基于虛擬化的網絡仿真技術,實現(xiàn)了模擬、仿真相融合的實驗平臺,重點研究了網絡模擬與網絡仿真的同步問題;文獻[5]重點研究了網絡模擬與仿真的同步技術以及高性能仿真模型,同樣實現(xiàn)了模擬與仿真相結合的實驗平臺;文獻[6]基于CloudNet云平臺構建了輕量級、大規(guī)模的虛擬網絡.上述方法實現(xiàn)了多種網絡復現(xiàn)方法的融合,但并未考慮實物網絡的接入.
文獻[7]運用ARP欺騙、報文捕獲與構造實現(xiàn)了并行模擬器與實物設備互聯(lián)互通;文獻[8]實現(xiàn)了QualNet模擬器與實物互聯(lián)互通的方法,重點關注基于隧道模式與解析模式的虛實報文互通;文獻[9]摒棄了HLA/RTI的同步機制,實現(xiàn)了模擬器與實物網絡交替推進同步的分布式模擬機制;文獻[10]通過虛擬網卡橋接的虛實對接設計完成物理網絡和仿真網絡邊界節(jié)點的連通.OpenStack*OpenStack Community.http://www.openstack.org/, 2011作為當前云計算平臺的代表,可實現(xiàn)虛擬機與實物機的互聯(lián)互通.
文獻[7-10]所述方法以及OpenStack平臺可有效實現(xiàn)虛擬網絡與實物網絡的互聯(lián)互通,但缺乏考慮虛實網絡仿真在可擴展性、靈活性、透明性、隔離性上的需求.所謂可擴展性是指能夠在虛實融合的網絡中接入更多的實物主機從而構建更為復雜的網絡,文獻[7-10]中雖然可以依靠交換機實現(xiàn)實物主機的擴展接入,但在目標網絡中加入多余交換機無疑會造成數據包傳輸不透明,且OpenStack只有一塊網卡負責連接實物設備,限制了虛實網絡的擴展性.所謂靈活性是指可靈活構建復雜虛擬網絡、實物設備可靈活接入任意虛擬網絡以及可對目標虛實網絡間的流量進行靈活控制,文獻[7,8]中接入的實物設備都需要在虛擬網絡中建立模擬節(jié)點與之映射,配置相對復雜,實物設備的接入不夠靈活,文獻[10]需要對虛擬節(jié)點的模擬網卡與宿主機虛擬網卡進行橋接,難以靈活構建復雜的虛擬網絡.所謂透明性是指數據包傳輸路徑中所涉及到的中間節(jié)點都是不可見的,其傳輸過程完全和真實環(huán)境中一樣,文獻[7-9]都需要對虛實報文進行相互轉換或者重構才能保證實物主機和模擬節(jié)點之間的通信,而 OpenStack會改變數據包的源地址或目的地址,它們在透明性上都有一定限制.所謂隔離性是指即使存在多組完全相同的虛實融合的網絡,數據包也能被送往正確的目的主機,多個實驗之間不會相互影響,文獻[7-10]均未考慮實驗的隔離性.
本文針對上述方法存在的不足,提出了一種可擴展、透明、可靈活配置且支持實驗隔離的虛實網絡融合的仿真方法,該仿真方法可以實現(xiàn)多臺實物主機同時接入任意虛擬網絡并同時進行通信,虛實網絡間的通信是透明的并且不會相互影響,可根據實際需要任意更改實物主機所接入的虛擬網絡以及可對虛實網絡間的流量進行靈活控制.
本方法首先搭建虛實互聯(lián)平臺,該平臺以OpenStack云平臺為基礎,擴展后能同時在虛擬網絡中接入多臺實物主機,實現(xiàn)多組虛實融合網絡的通信.
OpenStack虛實互聯(lián)的基本架構主要包括虛擬網絡、虛實互聯(lián)服務器和實物主機,其中虛擬網絡基于OpenStack云平臺構建,虛實互聯(lián)服務器為OpenStack網絡節(jié)點.OpenStack云平臺的基本架構包括一個控制節(jié)點,一個網絡節(jié)點和若干個計算節(jié)點,控制節(jié)點負責系統(tǒng)的管控功能,網絡節(jié)點負責提供諸如DHCP和路由等網絡服務,計算節(jié)點負責為虛擬主機的建立提供資源,其中網絡節(jié)點只有一塊外網網卡,該網卡用來連接實物主機.在本文中,使用Open vSwitch[11](OVS) 作為虛擬交換機,其根據流表規(guī)則來轉發(fā)數據包以及根據vlan tag來隔離流量的特點可以方便實現(xiàn)對數據包傳輸路徑的控制,各節(jié)點之間的通訊方式采用GRE隧道封裝,網絡節(jié)點和控制節(jié)點相互獨立開來.
OpenStack基本架構中只含有一個虛實互聯(lián)服務器、一塊外網網卡的特性大大限制了虛實融合網絡的擴展性.在基本架構的基礎上,可以通過添加虛實互聯(lián)服務器以及添加外網網卡來實現(xiàn)擴展.圖1為擁有兩個虛實互聯(lián)服務器,每個虛實互聯(lián)服務器擁有兩塊外網網卡的環(huán)境拓撲.本來只能直連一臺實物主機,擴展后能夠直連4臺實物主機,加入實物交換機和路由器之后可構成復雜的實物網絡以接入系統(tǒng).
圖1 融合網絡仿真系統(tǒng)的拓撲Fig.1 Topology of the fusional network emulation system
如圖1中的拓撲,虛實互聯(lián)服務器2為擴展新添加的虛實互聯(lián)服務器,但由于OpenStack本身的機制同一時間只允許一臺虛實互聯(lián)服務器提供服務,所以實物機3、實物機4并不能直接與虛擬網絡通信,并且虛實互聯(lián)過程中,數據包在虛實互聯(lián)服務器的router namespace中會進行地址轉換,造成數據包傳輸不透明.為了解決以上兩個問題,需對虛實互聯(lián)服務器中OVS的流表進行配置從而改變數據包的傳輸路徑,另外在虛擬網絡的構建上本文摒棄OpenStack自帶的虛擬路由器,即上文中提到的route namespace,而使用文獻[12]中定義的虛擬路由器.
圖2 各模塊之間的聯(lián)系Fig.2 Relation between modules
虛實互聯(lián)服務器是整個虛實互聯(lián)系統(tǒng)的重要組成部分,其依托于OpenStack網絡節(jié)點,包含數據庫查詢模塊、流表配置模塊、流表匹配模塊和動作執(zhí)行模塊四個模塊,各模塊之間的聯(lián)系如圖2所示,各個模塊的介紹如下:
(a) 數據庫查詢模塊:該模塊負責查詢OpenStack 中的neutron數據庫和OVS中的ovs-db數據庫,首先從neutron數據庫中得到各個虛擬網絡的基本信息,再用這些信息作為關鍵字去ovs-db中查詢得到各個虛擬網絡的vlan tag;
(b) 流表配置模塊:該模塊根據數據庫查詢模塊得到的信息針對每個虛擬網絡自動配置OVS各個網橋中的流表,以實現(xiàn)所有網絡節(jié)點都能轉發(fā)虛實網絡間的數據包以及數據包的透明傳輸;
(c) 流表匹配模塊:該模塊負責將數據包進行解析,并把得到的相關信息依次與各條流表進行匹配;
(d) 動作執(zhí)行模塊:該模塊負責根據流表匹配模塊中所匹配到的流表對數據包執(zhí)行相關操作,常用操作包括轉發(fā)和丟棄.
作為整個系統(tǒng)中最重要的一個部分,流表配置的功能是實現(xiàn)所有網絡節(jié)點都能轉發(fā)虛實網絡間的數據包以及數據包的透明傳輸,主要涉及到數據庫查詢模塊和流表配置模塊,配置過程需要在每個虛實互聯(lián)服務器分別進行.
流表的配置是對應于每一個虛擬網絡的,當用戶添加虛擬網絡時,需要為新添加的虛擬網絡配置流表,其詳細步驟如下:
步驟1.遠程連接控制節(jié)點的neutron數據庫;
步驟2.判斷neutron數據庫中是否有虛實互聯(lián)映射表,該表在本文中被命名為flowInfo,如果有則進入下一步,否則建立該表,并在本網絡節(jié)點OVS中br-ex(br-ex為OVS中的一個網橋,負責內部虛擬網絡與外部實物設備的通信)上添加流表,使所有從虛擬網絡進入的流量能夠被發(fā)送到實物網絡;
步驟3.使用內連接查詢,查詢neutron數據庫的ports表和subnets表,并與flowInfo表中的數據對比,查找flowInfo表里未記錄的網絡的IP地址、id和其對應的DHCP接口的名字,這些網絡即為新添加的尚未處理過的網絡,如果找到,進入下一步;
步驟4.根據上一步得到的接口名字查詢本虛實互聯(lián)服務器的ovs-db,找到該接口,得到其所在網絡的vlan tag;
步驟5.將網絡的id、IP地址和vlan tag以及自定義的節(jié)點名稱存入flowInfo表;
步驟6.根據得到的信息為每個網絡在虛實互聯(lián)服務器的OVS中br-int(br-int為OVS中的一個網橋,待轉發(fā)的數據包都會被送到這里)上建立兩條流表規(guī)則,對應于IP協(xié)議和ARP協(xié)議,這兩條流表規(guī)則的功能是使所有從實物網絡進來的流量都根據數據包的源地址修改數據包的vlan tag.
同樣,用戶刪除虛擬網絡時,需要針對被刪除的虛擬網絡刪除對應的流表規(guī)則和flowInfo表中的相關信息,其詳細步驟如下:
步驟1.在neutron數據庫中,以flowInfo表中網絡的IP地址為關鍵字查找本虛實互聯(lián)服務器中存在而subnets表里不存在的網絡,記錄這些網絡的IP地址,這些網絡即為被刪除的網絡;
步驟2.從flowInfo表中刪除這些網絡所在的行;
步驟3.根據步驟1中得到的IP地址,從本虛實互聯(lián)服務器中刪除對應的流表規(guī)則.
為了操作方便,可將上述添加和刪除的過程組合成為一個流程,設計并編寫代碼實現(xiàn)自動化配置.組合后的流程如圖3所示.
圖3 操作流表的流程圖Fig.3 Process of operating flow rules
如圖1所示拓撲,配置完成后,相當于把虛實互聯(lián)服務器的em2和em3、 em4直接相連,em2連接計算節(jié)點,相當于與虛擬機相連,因此無論是實到虛還是虛到實的數據包都不會經過router namespace,進而也不會進行地址轉換而造成數據包傳輸不透明;同樣的,數據包也不會被攔截,進而實現(xiàn)所有的虛實互聯(lián)服務器都可以轉發(fā)數據包.
流表匹配基于配置好的流表規(guī)則,依次將數據包的基本信息和相關流表條件進行匹配,匹配成功后執(zhí)行該條流表規(guī)則指定的相關操作.OVS支持多級流表,一個典型的匹配過程從table0里優(yōu)先級最大的規(guī)則開始匹配.
虛實互聯(lián)映射表存儲了流表配置所需的基本信息,流表配置模塊通過查詢該表可以獲得近期新添加的和被刪除的網絡,其中存儲的主要信息除了虛擬網絡的id、虛擬網絡的IP地址和虛擬網絡對應的vlan tag之外,還包括該條信息所對應的虛實互聯(lián)服務器的唯一標識.在擴展成多虛實互聯(lián)服務器的情況下,即使是同一個虛擬網絡,在不同的虛實互聯(lián)服務器也會對應于不同的vlan tag,也就是說在虛實互聯(lián)映射表中,同一個虛擬網絡會對應于多行信息,所以需要為不同的虛實互聯(lián)服務器定義唯一的標識,以保證在進行流表配置的時候能夠獲得對應于當前被操作的虛實互聯(lián)服務器的正確的信息.虛實互聯(lián)映射表的結構如表1所示.
表1 虛實互聯(lián)映射表的結構
Table 1 Structure of the mapping table for fusional network
在本文中實現(xiàn)了三個方面的靈活配置,一是可靈活構建虛擬網絡,二是實物機可靈活接入虛擬網絡,三是虛實網絡間的流量可靈活控制.
基于OpenStack云平臺可任意啟動虛擬主機,OVS作為虛擬交換機可使同一虛擬網絡中的虛擬主機進行通信,利用文獻[12]中的虛擬路由器可以連通不同的虛擬網絡,從而靈活構建大規(guī)模、復雜的虛擬網絡.
在前文中通過流表配置實現(xiàn)了虛實互聯(lián)服務器中流量的無縫傳輸.可以把虛實互聯(lián)服務器看作是一臺交換機,有多個虛擬網絡連接到該交換機上,實物機也通過外網網卡連接上去,因此實物機想與任意一個虛擬網絡中的虛擬機互聯(lián),只需把該實物機的IP地址配置成和虛擬機在同一網絡即可,改變實物機的IP地址就可以和不同虛擬網絡中的虛擬機互聯(lián),這便實現(xiàn)了實物機可靈活接入虛擬網絡.如圖4所示,給PC機配置不同的IP地址以接入不同的虛擬網絡.
圖4 靈活配置Fig.4 Flexible configuration
在某些實驗中,實驗人員對虛實網絡間流量的流向有特定要求,本文中的環(huán)境可以實現(xiàn)流量限制以及網絡分流.由于所有虛實網絡間的流量都會經過虛實互聯(lián)服務器,所以同樣利用虛實互聯(lián)服務器上OVS的流表規(guī)則可以實現(xiàn)對流量的靈活控制,例如指定某些網絡的流量只能從某幾塊網卡進出.
在實際運用中,往往會存在多組完全一致的網絡仿真應用,并同時進行仿真測試,即存在多組完全一致的虛實融合網絡共存的情況.這些網絡中作為數據包收發(fā)主機的虛擬機和實物機的IP地址分別相同,在這種情況下,實物機發(fā)出的數據包進入虛實互聯(lián)服務器后不能僅僅根據數據包的源地址和目的地址來修改vlan tag,同樣的,虛擬機發(fā)出的數據包也不能不經判斷直接發(fā)送到實物網絡,否則數據包很有可能被發(fā)送到錯誤的主機.
圖5 實驗隔離Fig.5 Experiment isolation
實物交換機可以使用vlan來隔離網絡,給屬于不同網絡的接口配置上各不相同的vlan id后,即使是各主機都處于地址相同的網絡,只要它們的vlan id不同也不能互相通信.本文參考實物交換機的這種特點,將流表的匹配條件具體到實物機所連接的端口.如果存在多組完全一致的虛實融合的網絡,就根據實物機所連接的端口的編號來更改實物機發(fā)送的數據包的vlan tag,這樣一來,即使是存在多個地址相同的虛擬網絡,一臺實物機也始終只能與一個虛擬網絡進行通信,同樣配置該虛擬網絡的數據包也只能從這個接口發(fā)出,起到了隔離網絡隔離實驗的目的.圖5所示是多實驗場景隔離的流程圖.
運用本文中的方法構建一個可擴展、透明、可靈活配置且支持實驗隔離的虛實互聯(lián)環(huán)境,該環(huán)境中的多臺虛實互聯(lián)服務器管控所有虛實網絡間的流量.如圖6所示,環(huán)境中擁有兩臺虛實互聯(lián)服務器,每臺擁有兩塊外網網卡.創(chuàng)建兩個虛擬網絡,虛擬網絡1的地址為192.168.100.0/24,虛擬網絡2的地址為172.18.146.0/24;創(chuàng)建4臺虛擬機,VM1和VM2接入虛擬網絡1,IP地址分別為192.168.100.3和192.168.100.4,VM3和VM4接入虛擬網絡2,IP地址分別為172.18.146.3和172.18.146.4;4臺實物機通過4塊外網網卡接入,分別配置IP地址,PC1為192.168.100.101,PC2為192.168.100.102,PC 3為172.18.146.101,PC4為172.18.146.102.
圖6 實驗拓撲圖Fig.6 Topology for the experiment
基于3.1中所述的流表配置與匹配方法,面向圖6所示實驗拓撲圖,設計了自動化配置代碼,自動為兩個虛擬網絡配置流表規(guī)則.配置完成后,查看虛實互聯(lián)映射表中的相關信息,其結果如表2所示,接著,在虛實互聯(lián)服務器1上用命令查看相關流表規(guī)則,結果如圖7所示.
表2 flowInfo表中的信息
Table 2 Information of flowInfo table
idipvlantagnoded211528a-6647-4a22-a338-c7598c6325eb192.168.100.0/242Network1e11f4a0d-9d35-44b9-bdcc-98608031468e172.18.146.0/243Network1d211528a-6647-4a22-a338-c7598c6325eb192.168.100.0/248Network2e11f4a0d-9d35-44b9-bdcc-98608031468e172.18.146.0/249Network2
圖7 br-int中的流表規(guī)則Fig.7 Flow rules in br-int
從結果可以看出,因為環(huán)境中有兩臺虛實互聯(lián)服務器,所以在表2中每個虛擬網絡都對應兩行數據,它們的vlan tag不同,node表示該行數據對應的虛實互聯(lián)服務器.
如圖6所示的環(huán)境拓撲,為了驗證通過擴展后實物設備確實可以與同一網絡的虛擬機通信,用同屬一個網絡的實物機和虛擬機互相執(zhí)行ping命令,結果顯示同一網絡的實物機和虛擬機可以通過擴展后的環(huán)境互相通信,表3是PC1和各臺虛擬機互ping的結果.
表3 連通性測試結果
Table 3 Result of the connectivity test
源主機目的主機是否互通PC1VM1是PC1VM2是PC1VM3否PC1VM4否
基于3.1的配置,使得數據包在虛實互聯(lián)服務器中跳過地址轉換的同時能夠保證被發(fā)往目的主機,中間不經過router namespace就不會在數據包的路由路徑上多出一跳.在本測試中選用PC1和VM1作為數據包傳輸的源主機和目的主機,查看數據包的路由路徑,結果如圖8(a)所示路由只有目的主機一跳,證明數據包傳輸的透明性.
圖8 透明性測試Fig.8 Test for transparency
接下來,嘗試加入虛擬路由器,參與測試的實物機和虛擬機不屬于同一個網絡.實物機選用PC1,虛擬機選用VM3,中間經過一個虛擬路由器,拓撲如圖8(b)所示,查看數據包的路由路徑,結果如圖8(c)所示,PC1到VM3之間的路由有兩跳,符合預期,證明透明性.
如圖6所示拓撲,PC1接入虛擬網絡1可以和VM1、VM2互通.為了驗證靈活配置的有效性,基于3.3所述的配置策略,把PC1的IP地址更改為172.18.146.201,更改后PC1應該是接入虛擬網絡2的.使用ping命令測試連通性,結果顯示PC1可以與VM3、VM4互通,證明實物機可靈活接入虛擬網絡.為了進一步驗證實物主機可靈活接入,我們在環(huán)境中又添加了3個獨立的虛擬網絡,在整個環(huán)境擁有5個虛擬網絡的情況下,把實物機分5次接入,每次通過更改實物機的IP地址來把實物機接入不同的虛擬網絡,實驗結果均符合預期,即實物機可以且僅可與處于同一網絡中的虛擬機通信.
此外,在虛實互聯(lián)服務器中配置流表可實現(xiàn)流量限制.使網絡192.168.100.0/24的流量只能通過虛實互聯(lián)服務器1出入,網絡172.18.146.0/24的流量只能通過虛實互聯(lián)服務器2進出,測試各臺主機之間的連通性,結果符合預期,證明虛實網絡的流量可靈活控制.
為了驗證隔離性,在圖6所示拓撲的基礎上,再建立一個地址為192.168.100.0/24的虛擬網絡,并加入一臺地址為192.168.100.3的虛擬機VM5,并將PC3的IP地址更改為192.168.100.101,拓撲如圖9所示.
圖9 隔離性測試的拓撲Fig.9 Topology for isolation test
如圖9所示,環(huán)境中存在兩組完全一致的虛實融合的網絡.在4.1中所配置流表的基礎上,基于3.4的隔離策略,根據兩臺實物機所連接的eth1-1和eth2-1的編號再分別為兩臺實物機定制兩條流表,然后測試其連通性,結果如表4所示.結果顯示PC1只能與虛擬網絡1互通,PC3只能與虛擬網絡3互通,證明隔離性.
表4 隔離性測試結果
Table 4 Result of the isolation test
源主機目的主機是否互通PC1VM1是PC1VM5否PC3VM1否PC3VM5是
實驗中所用的兩個計算節(jié)點的配置分別為4核16G以及8核32G,基于這樣的配置,盡可能地構建最大規(guī)模的虛擬網絡.根據虛擬網絡中所生成的虛擬機的配置不同,所構建的虛擬網絡的規(guī)模也會有所差異,在本實驗中,把虛擬機的配置分為三個等級,分別為小(內存512M,磁盤1G)、中(內存1G,磁盤10G)、大(內存2G,磁盤20G).經過測試,當在環(huán)境中只存在某一種類型的虛擬機時,可以啟動的虛擬機數量為,小型140臺,中型59臺,大型29臺,通過擴展可以啟動更多虛擬機構建大規(guī)模虛擬網絡,而實物主機的擴展接入則可以通過增加虛實互聯(lián)服務器外網網卡或者直接增加虛實互聯(lián)服務器實現(xiàn),即可以通過擴展計算節(jié)點和虛實互聯(lián)服務器實現(xiàn)虛擬網絡和實物設備接入的擴展.基于本實驗中的環(huán)境,我們構建了擁有4個虛擬網絡、3個虛擬路由器以及若干臺虛擬機的復雜虛擬網絡,結合實物主機,針對同一個虛擬網絡、間隔一跳的虛實網絡和間隔四跳的虛實網絡,從吞吐量、延時、丟包率三個方面測試了網絡的性能.
圖10是針對三種類型網絡的吞吐量測試柱狀圖,針對每一種類型網絡,均測試10次然后取平均值.由于虛擬交換機本身支持萬兆網,所以同一個虛擬網絡中,吞吐量可達到7495.17Mb/s,而環(huán)境中的服務器以及實物主機僅支持千兆網,所以在虛實網絡中,吞吐量應接近1000Mb/s,其中間隔一跳的虛實網絡為913.05Mb/s,間隔四跳的虛實網絡為912.92Mb/s,可見虛擬路由器的數量并沒有影響網絡的吞吐量.
圖11是針對三種類型網絡的延時測試柱狀圖,針對每一種類型網絡,同樣均測試10次然后取平均值.從圖中可以看出同一個虛擬網絡中的延遲為72.22μs,而由于虛擬路由器的加入,在虛實網絡中延時有所增大,并且虛擬路由器越多延時越大,一跳和四跳的情況分別為205.78μs和495.32μs,但延時依然保持在極低的水平.
800070006000500040003000200010000Mbs/同一虛擬網絡一跳虛實網絡四跳虛擬網絡749517.91305.91292.同一虛擬網絡一跳虛實網絡四跳虛擬網絡6005004003002001000μs7222.20578.49532.同一虛擬網絡一跳虛實網絡四跳虛擬網絡19.17.15.13.11.09.07.05.03.01.0400500600700800Mbs/%圖10 吞吐量測試結果圖11 延時測試結果圖12 丟包率測試結果Fig.10 ResultsforthroughputtestFig.11 ResultsforlatencytestFig.12 Resultsforlossratiotest
圖12是針對三種類型網絡的丟包率測試,通過在成對的主機之間不斷發(fā)送UDP報文并不斷調整源主機的發(fā)送帶寬來找到網絡的瓶頸,針對每一種發(fā)送帶寬均進行10次測試并取平均值.由于在發(fā)送帶寬很小的情況下測出的丟包率沒有意義,所以本實驗中選取區(qū)間為200Mb/s至800Mb/s的發(fā)送帶寬,以100Mb/s遞增.從圖中可以看出,雖然網絡中存在不確定因素,但同一虛擬網絡中,200Mb/s至700Mb/s區(qū)間中丟包率保持在極低的水平,均未超過0.01%,但當發(fā)送帶寬達到800Mb/s時,丟包率超過了0.1%,這種情況下的丟包率已經處于較高水平.對于一跳虛實網絡和四跳虛實網絡,瓶頸分別為800Mb/s和700Mb/s,雖然虛擬路由器的加入降低了發(fā)送帶寬的瓶頸,但在保持丟包率極低的情況下依然可以達到較高的發(fā)送帶寬.
從針對三種網絡分別進行的三項測試來看,本文提出的云平臺支撐下的虛實網絡融合仿真方法可以構建一個可擴展且性能良好的虛實網絡融合系統(tǒng).
網絡仿真是當前進行網絡研究的主要方法,虛實互聯(lián)的網絡仿真技術更是網絡仿真領域研究的熱點.本文在分析當前網絡仿真技術存在的不足的基礎上,提出了一種透明、可擴展、可靈活配置、可隔離的虛實網絡融合的網絡仿真方法,針對這四個方面進行了虛實網絡融合仿真方法的設計以及實驗驗證.下一步工作將重點研究面向大規(guī)模虛實融合網絡仿真應用的自動化、快速部署策略.
[1] Fang Bin-xing,Jia Yan,Li Ai-ping,et al.Cyber ranges:state-of-the-art and research challenges [J].Journal of Cyber Security,2016,1(3):1-9.
[2] Ning Liu,Christopher Carothers,Jason Cope,et al.Model and simulation of exascale communication networks [J].Journal of Simulation,2012,6(4):227-236.
[3] Stephen W Neville,Kin Fun Li.The rational for developing larger-scale 1000+ machine emulation-based research test beds [C].Proceedings of the 23rd International Conference on Advanced Information Networking and Applications (AINA′09),2009:1092-1099.
[4] Jin D,Zheng Y,Nicol D M.A parallel network simulation and virtual time-based network emulation testbed [J].Journal of Simulation,2014,8(8):206-214.
[5] Miguel A Erazo,Jason Liu.Leveraging symbiotic relationship between simulation and emulation for scalable network experimentation [C].Proceedings of the 1st ACM SIGSIM Conference on Principles of Advanced Discrete Simulation (SIGSIM PADS′13),2013:79-90.
[6] Dutta A,Gnawali O.Large-scale network protocol emulation on commodity cloud[C].Proceedings of IEEE Global Communication Conference (GLOBECOM′14),2014:1114-1119.
[7] Fei Hai-qiang,Hao Zhi-yu,Yun Xiao-chun,et al.System and method for realizing seamless access network simulator of physical device,103078769A[P].2013-05-01.
[8] Li Ping,Gong Peng,Kong Jie-jun,et al.Physical access method for QualNet network HILS,103200190A[P].2013-07-10.
[9] Zhang Jian-jun,Wei Tao,Tian Yong-chun,et al.Distributed hardware-in-loop network simulation system and its hardware-in-loop interface control method,101645813[P].2010-02-10.
[10] Li Guang-rong.Design and implementation of the virtual and reality network system based on NS-3 [D].Harbin:Harbin Institute of Technology,2015.
[11] Pfaff B,Pettit J,Amidon K,et al.Extending networking into the virtualization layer [C].Proceedings of the 8th ACM Workshop on Hot Topics in Networks (HotNets′09),2009.
[12] Huang Min-huan,Zhang Yao-xue,Xu Fei,et al.Design of virtualization platform for router emulation [J].Journal of System Simulation,2014,26(8):1672-1677.
附中文參考文獻:
[1] 方濱興,賈 焰,李愛平,等.網絡空間靶場技術研究[J].信息安全學報,2016,1(3):1-9.
[7] 費海強,郝志宇,云曉春,等.一種實現(xiàn)實物設備無縫接入網絡模擬器的系統(tǒng)及方法:中國,103078769A[P].2013-05-01.
[8] 栗 蘋,龔 鵬,孔杰軍,等.一種面向QualNet網絡半實物仿真的實物接入方法:中國,103200190A[P].2013-07-10.
[9] 張建軍,韋 濤,田永春,等.分布式半實物網絡仿真系統(tǒng)及其半實物接口控制方法:中國,101645813[P].2010-02-10.
[10] 李廣榮.基于NS-3的虛實網絡結合系統(tǒng)的設計與實現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學,2015.
[12] 黃敏桓,張堯學,許 飛,等.基于虛擬化技術的路由仿真實驗平臺設計[J].系統(tǒng)仿真學報,2014,26(8):1672-1677.