黃俊 陳曦 吳濤
摘? 要:網(wǎng)絡(luò)模擬仿真類軟件是計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)、協(xié)議、算法研究和教學(xué)的關(guān)鍵支撐,研發(fā)此類軟件對于網(wǎng)絡(luò)強(qiáng)國戰(zhàn)略具有重要意義。目前市面上此類軟件存在保真度較低、部署不便等問題,需要一款高保真、易編程的網(wǎng)絡(luò)模擬仿真軟件。針對上述問題,在SDN理念及框架下,采用Docker等輕量級技術(shù),搭建容器化網(wǎng)絡(luò)仿真平臺,一體化提供虛擬網(wǎng)絡(luò)的拓?fù)洳渴?、流量注入等功能,用于觀察、驗(yàn)證、分析、優(yōu)化網(wǎng)絡(luò),能夠廣泛支持計(jì)算機(jī)網(wǎng)絡(luò)的研究與教學(xué)。
關(guān)鍵詞:網(wǎng)絡(luò)仿真;Docker;高保真;計(jì)算機(jī)網(wǎng)絡(luò)
中圖分類號:TP311.5? 文獻(xiàn)標(biāo)識碼:A? 文章編號:2096-4706(2023)04-0001-06
Design and Implementation of Network Simulation Platform Based on Docker
HUANG Jun1, CHEN Xi1,2, WU Tao3
(1.School of Computer Science and Engineering, Southwest Minzu University, Chengdu? 610041, China;
2.School of Information and Communication Engineering, University of Electronic Science and Technology of China, Chengdu? 611731, China;
3.School of Computer Science, Chengdu University of Information Technology, Chengdu? 610225, China)
Abstract: The software of network simulation is the key support of computer network system architecture, protocol, algorithm research and teaching. The development of such software is of great significance for network power strategy. At present, there are many problems in such software on the market, such as low fidelity and inconvenient deployment. A high fidelity and easy programming network simulation software is urgently needed. To solve these problems, under the SDN concept and framework, this paper adopts Docker and other lightweight technologies, builds a containerized network simulation platform. It provides the topology deployment, traffic injection and other functions of the virtual network for observation, verification, analysis, and optimization of the network to widely support the research and teaching of computer network.
Keywords: network simulation; Docker; high fidelity; computer network
0? 引? 言
當(dāng)今世界互聯(lián)網(wǎng)正處于飛速發(fā)展階段,大數(shù)據(jù)、云計(jì)算和人工智能等IT領(lǐng)域相繼興起,這些行業(yè)的正常運(yùn)作必須基于網(wǎng)絡(luò)基礎(chǔ)設(shè)施和網(wǎng)絡(luò)技術(shù),網(wǎng)絡(luò)模擬仿真[1]就成了計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)、協(xié)議、算法研究的關(guān)鍵支撐。網(wǎng)絡(luò)模擬仿真可以根據(jù)用戶的需求自主設(shè)計(jì)和部署網(wǎng)絡(luò)模型[2],在消耗相對較少的費(fèi)用成本和時(shí)間成本的情況下,了解網(wǎng)絡(luò)在不同條件下的各種特性[3],同時(shí)獲取網(wǎng)絡(luò)研究的海量高效的數(shù)據(jù),提供了一個(gè)便捷、高效的觀察、驗(yàn)證、分析、優(yōu)化網(wǎng)絡(luò)的手段,在現(xiàn)代互聯(lián)網(wǎng)的設(shè)計(jì)和研究中的作用正變得越來越大。
然而現(xiàn)有網(wǎng)絡(luò)仿真和模擬軟件還存在著多方面的問題[4],主要集中在協(xié)議配置驗(yàn)證困難、用戶流量注入困難、海量資源供應(yīng)困難等[5],若能在網(wǎng)絡(luò)協(xié)議、算法的設(shè)計(jì)和驗(yàn)證中,充分融合網(wǎng)絡(luò)仿真的易編程性和網(wǎng)絡(luò)模擬的高保真特性,這對于快速、便捷、準(zhǔn)確、真實(shí)地實(shí)施網(wǎng)絡(luò)驗(yàn)證,具有重要價(jià)值。針對上述問題,本文提出基于Docker[6]的網(wǎng)絡(luò)仿真平臺,采用Docker、Open vSwitch[7]等輕量級虛擬化技術(shù),配合SDN控制器和Docker容器集群框架,利用PyQt5[8]開發(fā)前端操作界面,提供虛擬網(wǎng)絡(luò)拓?fù)涞脑O(shè)計(jì)部署、海量用戶流量的靈活注入等關(guān)鍵功能,支撐網(wǎng)絡(luò)仿真、網(wǎng)絡(luò)協(xié)議驗(yàn)證,助力網(wǎng)絡(luò)研發(fā)。
1? 相關(guān)技術(shù)
1.1? Docker
Docker是一種開源容器引擎,其部署于宿主機(jī)中具有更高的啟動效率和更少的性能開銷。本平臺以Docker容器為核心構(gòu)建虛擬網(wǎng)絡(luò)中的各虛擬節(jié)點(diǎn),配合虛擬鏈路技術(shù)形成虛擬網(wǎng)絡(luò)在物理宿主機(jī)上進(jìn)行仿真。同時(shí)Docker具有完整的網(wǎng)絡(luò)協(xié)議棧,結(jié)合Quagga創(chuàng)建支持多種路由協(xié)議的路由器,能夠更加真實(shí)準(zhǔn)確地再現(xiàn)網(wǎng)絡(luò),極大提高網(wǎng)絡(luò)的保真度,方便對網(wǎng)絡(luò)協(xié)議的監(jiān)控和研究。
1.2? PyQt5
PyQt5是一個(gè)跨平臺的Python開發(fā)庫,包含一組Python模塊,主要用于開發(fā)圖形用戶界面。本平臺主要使用PyQt5中的QtCore、QtWidgets、QtGui模塊開發(fā)前端界面,利用其信號槽特性與界面中的各功能按鈕綁定,完成與平臺后端各函數(shù)的交互,以實(shí)現(xiàn)平臺各項(xiàng)功能。
1.3? OpenvSwitch
OpenvSwitch簡稱OVS,是一種開源的、支持多種協(xié)議的虛擬交換機(jī),其作為虛擬端口靈活性更高,與傳統(tǒng)交換機(jī)相比具有良好的編程可擴(kuò)展性,同時(shí)也具備網(wǎng)絡(luò)隔離和數(shù)據(jù)轉(zhuǎn)發(fā)功能,本平臺使用OVS技術(shù)并結(jié)合虛擬路由器實(shí)現(xiàn)不同局域網(wǎng)絡(luò)中主機(jī)的數(shù)據(jù)轉(zhuǎn)發(fā)。
1.4? veth-pair
veth-pair是Linux系統(tǒng)底下一種成對出現(xiàn)的虛擬網(wǎng)絡(luò)設(shè)備,用于連接兩個(gè)虛擬網(wǎng)絡(luò)設(shè)備,本文平臺中的網(wǎng)元與網(wǎng)元之間即通過veth-pair技術(shù)連接,其一端與網(wǎng)絡(luò)協(xié)議棧連接,一端在網(wǎng)元之間彼此相連,以實(shí)現(xiàn)虛擬網(wǎng)絡(luò)中的節(jié)點(diǎn)連通。
2? 平臺設(shè)計(jì)
2.1? 框架設(shè)計(jì)
本文利用輕量級虛擬化技術(shù),實(shí)現(xiàn)網(wǎng)絡(luò)設(shè)備控制平面和數(shù)據(jù)平面的模擬,結(jié)合網(wǎng)絡(luò)模擬的高保真性和網(wǎng)絡(luò)仿真的易編程性,充分融合發(fā)揮兩者技術(shù)優(yōu)勢,提出高保真、一體化的網(wǎng)絡(luò)仿真平臺,能夠?qū)W(wǎng)絡(luò)協(xié)議進(jìn)行監(jiān)控,對網(wǎng)絡(luò)流量進(jìn)行統(tǒng)計(jì),對網(wǎng)絡(luò)配置進(jìn)行驗(yàn)證,從而達(dá)到觀察、分析、優(yōu)化網(wǎng)絡(luò)的目的。
結(jié)合以上對平臺的描述,本平臺架構(gòu)如圖1所示,根據(jù)前后端到計(jì)算機(jī)底層劃分為4個(gè)層次,依次為用戶界面層、網(wǎng)絡(luò)實(shí)驗(yàn)層、虛擬網(wǎng)絡(luò)層、基礎(chǔ)設(shè)施層。下面對各層次進(jìn)行詳細(xì)介紹。
2.1.1? 用戶界面層
本平臺利用PyQt5提供用戶界面,呈現(xiàn)實(shí)驗(yàn)列表、實(shí)驗(yàn)手冊、拓?fù)浣Y(jié)構(gòu)板塊,利用X Server圖形接口服務(wù)器提供進(jìn)入節(jié)點(diǎn)內(nèi)部的圖形化UI,如Wireshark、packETH、Firefox等,Terminal終端提供進(jìn)入節(jié)點(diǎn)內(nèi)部的命令行UI。
2.1.2? 網(wǎng)絡(luò)實(shí)驗(yàn)層
呈現(xiàn)平臺包含的實(shí)驗(yàn),分為SDN實(shí)驗(yàn)、TCP/IP實(shí)驗(yàn)、路由與交換實(shí)驗(yàn)、網(wǎng)絡(luò)安全實(shí)驗(yàn)等。
2.1.3? 虛擬網(wǎng)絡(luò)層
OVS虛擬交換機(jī)能夠連接網(wǎng)絡(luò)設(shè)備(如虛擬路由器、防火墻等)和終端設(shè)備(如虛擬計(jì)算機(jī)、服務(wù)器等),使網(wǎng)絡(luò)可編程擴(kuò)展,Docker容器可通過veth-pair與OVS交換機(jī)直連,實(shí)現(xiàn)容器間的通信。
2.1.4? 基礎(chǔ)設(shè)施層
平臺所用到的Docker鏡像存儲在本地鏡像倉庫里,包括主機(jī)、路由器、服務(wù)器等鏡像,所有鏡像均可使用提供的Dockerfile通過Docker build命令構(gòu)建。本平臺部署在Linux系統(tǒng)上,在Python環(huán)境下運(yùn)行。
2.2? 功能設(shè)計(jì)
2.2.1? 前后端設(shè)計(jì)
本平臺采用前后端分離的方式開發(fā),前端呈現(xiàn)用戶操作界面,提供一鍵式部署拓?fù)浣Y(jié)構(gòu)、節(jié)點(diǎn)呈現(xiàn)、操控節(jié)點(diǎn)等功能,構(gòu)成交互式網(wǎng)絡(luò)模擬環(huán)境,同時(shí)界面提供顯示拓?fù)浣Y(jié)構(gòu)的窗口,用于反應(yīng)網(wǎng)絡(luò)中各節(jié)點(diǎn)間連接情況,界面呈現(xiàn)虛擬網(wǎng)絡(luò)中各節(jié)點(diǎn)操作臺供用戶調(diào)用節(jié)點(diǎn)功能。后端則為前端提供實(shí)現(xiàn)各功能實(shí)現(xiàn)、接口設(shè)計(jì)等,具體實(shí)現(xiàn)見3.1節(jié)前后端實(shí)現(xiàn)。
2.2.2? 拓?fù)洳渴?/p>
后端部署拓?fù)湓O(shè)計(jì)階段生成的shell文件,利用Docker、OVS等輕量級虛擬化技術(shù),實(shí)現(xiàn)低開銷的網(wǎng)絡(luò)設(shè)備、拓?fù)浣Y(jié)構(gòu)模擬,生成虛擬網(wǎng)絡(luò)并部署在底層宿主機(jī)(物理機(jī)、虛擬機(jī)均可)之上,各節(jié)點(diǎn)配置虛擬網(wǎng)絡(luò)設(shè)備接口,實(shí)現(xiàn)節(jié)點(diǎn)之間的相互通信,具體實(shí)現(xiàn)見3.2節(jié)部署功能實(shí)現(xiàn)。
2.2.3? 流量注入
一方面,Docker提供各主流編程語言的API支持(Python、Java、Go等),用于與容器交互,無須人工操作容器,同時(shí)利用Docker API可以方便地啟停容器、調(diào)用容器內(nèi)部功能,直接運(yùn)行邏輯腳本即實(shí)現(xiàn)用戶流量的靈活注入。另一方面,用戶可通過進(jìn)入容器內(nèi)部的方式,執(zhí)行輸入命令或調(diào)用packETH、瀏覽器等圖形化應(yīng)用的形式向網(wǎng)絡(luò)注入流量。與傳統(tǒng)網(wǎng)絡(luò)仿真工具通過編程對協(xié)議行為、時(shí)序、語義進(jìn)行模仿不同,本平臺搭建的整個(gè)虛擬網(wǎng)絡(luò)運(yùn)行的是真實(shí)的協(xié)議。本節(jié)具體實(shí)現(xiàn)見3.3節(jié)流量注入功能實(shí)現(xiàn)。
2.2.4? 網(wǎng)絡(luò)監(jiān)控
采用非侵入式設(shè)計(jì)對部署的整個(gè)虛擬網(wǎng)絡(luò)進(jìn)行監(jiān)控,監(jiān)控模塊和實(shí)驗(yàn)部署模塊互不影響,實(shí)現(xiàn)高內(nèi)聚低耦合,同時(shí)對Wireshark、Pyshark等抓包工具進(jìn)行封裝,利用X Server技術(shù)和Docker自帶命令行工具實(shí)現(xiàn)容器級別的實(shí)時(shí)監(jiān)控,對節(jié)點(diǎn)中抓取的流量進(jìn)行預(yù)處理并用Python作圖工具matplotlib作圖,用戶在需要的時(shí)候平臺可準(zhǔn)確直觀地呈現(xiàn)網(wǎng)絡(luò)中的流量,具體實(shí)現(xiàn)見3.4節(jié)網(wǎng)絡(luò)監(jiān)控功能實(shí)現(xiàn)。
3? 平臺實(shí)現(xiàn)與應(yīng)用
本節(jié)首先對2.2節(jié)各功能實(shí)現(xiàn)作具體闡述,之后展示本文設(shè)計(jì)并實(shí)現(xiàn)的網(wǎng)絡(luò)仿真平臺并作詳細(xì)介紹,最后補(bǔ)充說明本平臺投入實(shí)際應(yīng)用的情況。
3.1? 前后端實(shí)現(xiàn)
針對2.2節(jié)的第一部分前后端設(shè)計(jì),平臺前端利用PyQt5展示圖形化用戶界面,為用戶提供操作接口,主要利用QTreeWidget呈現(xiàn)實(shí)驗(yàn)列表,QLabel空間呈現(xiàn)實(shí)驗(yàn)手冊與拓?fù)浣Y(jié)構(gòu)圖,部署與銷毀操作按鈕根據(jù)信號槽連接對應(yīng)腳本命令,平臺下方采用生成子界面的方式將節(jié)點(diǎn)分類展示(如主機(jī)、路由器等),每個(gè)節(jié)點(diǎn)的功能按鈕均添加對應(yīng)功能的信號槽,此部分核心代碼如下:
self.tree = QTreeWidget(self)
self.tree.setColumnCount(1)
self.tree.setHeaderLabels([‘實(shí)驗(yàn)列表])
htm_name = setting[experiment_name][‘exp_doc]
png_name = setting[experiment_name][‘exp_topo]
self.button_run = QPushButton(self)
self.button_run.clicked.connect(self.run_topo)
self.button_del = QPushButton(self)
self.button_del.clicked.connect(self.del_topo)
后端主要采用Python開發(fā),包含前端各功能按鈕信號槽對應(yīng)的功能函數(shù),如部署與銷毀拓?fù)涞?,后端提供平臺所運(yùn)行的實(shí)驗(yàn)?zāi)_本與所需命令工具。
3.2? 部署功能實(shí)現(xiàn)
針對2.2節(jié)的第二部分部署功能,平臺利用Docker+OVS+
veth-pair技術(shù)將拓?fù)浣Y(jié)構(gòu)的部署邏輯封裝成shell腳本,用戶點(diǎn)擊前端實(shí)驗(yàn)列表中的實(shí)驗(yàn),后端生成點(diǎn)擊事件并發(fā)送到封裝好的Python函數(shù),傳入?yún)?shù)并根據(jù)實(shí)驗(yàn)描述json文件將相應(yīng)的實(shí)驗(yàn)手冊、拓?fù)浣Y(jié)構(gòu)圖傳入前端控件,相應(yīng)實(shí)驗(yàn)?zāi)_本被選中以等待部署。點(diǎn)擊“部署拓?fù)洹保蠖伺袛嗍欠裼姓谶\(yùn)行的Docker容器,如果有則提示“銷毀拓?fù)洹?,銷毀后再次點(diǎn)擊部署,被選中的實(shí)驗(yàn)?zāi)_本參數(shù)傳入已封裝的執(zhí)行shell命令的Python函數(shù),部署拓?fù)涫紫葓?zhí)行拓?fù)涔ぞ遳tils內(nèi)的x.sh打開圖形接口服務(wù)器,之后運(yùn)行clean.sh做必要的清理工作,停止并銷毀正在運(yùn)行的Docker容器、交換機(jī)等,再執(zhí)行topos模塊的相關(guān)實(shí)驗(yàn)?zāi)_本部署實(shí)驗(yàn)拓?fù)浣Y(jié)構(gòu),以上描述表示一個(gè)“部署拓?fù)洹笔录瓿伞?/p>
shell腳本將部署拓?fù)浣Y(jié)構(gòu)的所有命令都組合起來,只需執(zhí)行單獨(dú)的shell腳本就能自動化部署整個(gè)實(shí)驗(yàn)拓?fù)?,提高處理文本文件的速度也避免配置出錯,首先通過docker run命令運(yùn)行所需容器并給容器配置參數(shù),如--net參數(shù)設(shè)置容器的網(wǎng)絡(luò)模式,--privileged=true使容器內(nèi)部擁有root權(quán)限等,ovs-vsctl命令添加和連接OVS交換機(jī),ovs-docker將容器和交換機(jī)相連并配置容器的IP地址和子網(wǎng)掩碼。shell腳本核心命令如下,其中cs-net-host為本平臺自主構(gòu)建的主機(jī)鏡像:
docker run -itd --name host1 --hostname h1 --net=none --rm --privileged=true -e DISPLAY=$DISPLAY cs-net-host
docker run -itd --name host2 --hostname h2 --net=none --rm --privileged=true -e DISPLAY=$DISPLAY cs-net-host
ovs-vsctl add-br s1
ovs-docker add-port s1 eth0 host1 –ipaddress=192.168.0.1/24
ovs-docker add-port s1 eth0 host2 –ipaddress=192.168.0.2/24
3.3? 流量注入功能實(shí)現(xiàn)
針對2.2.3節(jié)的流量注入,一方面可利用Terminal終端輸入相關(guān)命令,向網(wǎng)絡(luò)中注入流量,如圖2所示,另一方面可采用圖形化應(yīng)用的方式,利用X server機(jī)制,調(diào)用容器內(nèi)部的各種流量注入程序,如packETH、瀏覽器等,如圖3所示,為主機(jī)利用packETH向網(wǎng)絡(luò)中發(fā)送流量。
3.4? 網(wǎng)絡(luò)監(jiān)控功能實(shí)現(xiàn)
針對2.2節(jié)的第四部分網(wǎng)絡(luò)監(jiān)控,本平臺可以對實(shí)驗(yàn)網(wǎng)絡(luò)中的各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的關(guān)鍵指標(biāo)進(jìn)行全程實(shí)時(shí)監(jiān)控,監(jiān)控分為主動測量和被動監(jiān)控。
3.4.1? 主動測量
如圖4所示,點(diǎn)擊“節(jié)點(diǎn)監(jiān)控”按鈕后,根據(jù)箭頭流程操作并輸入配置信息,平臺后端通過下發(fā)流量的方式主動測量當(dāng)前節(jié)點(diǎn)帶寬、時(shí)延與丟包率,得到圖右下角結(jié)果,圖中TX與RX分別為上行速率與下行速率。
3.4.2? 被動監(jiān)控
被動監(jiān)控在部署拓?fù)浜蟊汩_始監(jiān)控,用于測量CPU和內(nèi)存利用率、每秒收發(fā)數(shù)據(jù)包的大小等,各組數(shù)據(jù)經(jīng)后端處理后使用作圖工具將結(jié)果以數(shù)據(jù)大屏的形式展示于前端界面,如圖5所示,為平臺對網(wǎng)絡(luò)的被動監(jiān)控效果。
3.5? 基于Docker的網(wǎng)絡(luò)模擬仿真平臺實(shí)現(xiàn)
本平臺實(shí)現(xiàn)如圖6所示,前端總共分為菜單欄、實(shí)驗(yàn)?zāi)夸?、?shí)驗(yàn)手冊、拓?fù)浣Y(jié)構(gòu)、節(jié)點(diǎn)操作五大板塊。
3.5.1? 菜單欄
用戶選中實(shí)驗(yàn),只需點(diǎn)擊部署拓?fù)?,平臺后端通過運(yùn)行shell腳本將部署實(shí)驗(yàn)環(huán)境的操作進(jìn)行批處理,用戶也可自行設(shè)計(jì)拓?fù)浣Y(jié)構(gòu)供平臺運(yùn)行,實(shí)驗(yàn)結(jié)束后,點(diǎn)擊銷毀拓?fù)浼纯蓪⒑笈_部署的虛擬網(wǎng)絡(luò)拓?fù)淙夸N毀。
3.5.2? 實(shí)驗(yàn)列表
此部分是對平臺所有實(shí)驗(yàn)進(jìn)行合理的分類歸納并呈現(xiàn)。
3.5.3? 實(shí)驗(yàn)手冊
此部分是對整個(gè)實(shí)驗(yàn)的理論支持,其中包含實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)原理、實(shí)驗(yàn)步驟等。實(shí)驗(yàn)原理為用戶提供了詳細(xì)的理論講解,實(shí)驗(yàn)步驟由淺入深,用戶根據(jù)實(shí)驗(yàn)步驟進(jìn)行操作,觀察實(shí)驗(yàn)結(jié)果,切實(shí)體驗(yàn)整個(gè)實(shí)驗(yàn)過程。
3.5.4? 拓?fù)浣Y(jié)構(gòu)
拓?fù)鋱D采用統(tǒng)一清晰的繪圖格式。向用戶展示相應(yīng)實(shí)驗(yàn)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)以及相關(guān)網(wǎng)絡(luò)設(shè)備的信息,用戶只需將設(shè)備與說明文檔進(jìn)行一一對應(yīng),即可快速有效地完成操作步驟。
3.5.5? 節(jié)點(diǎn)操作
此部分包含拓?fù)浣Y(jié)構(gòu)圖內(nèi)所有節(jié)點(diǎn)設(shè)備及其內(nèi)部功能的調(diào)用,用戶根據(jù)實(shí)驗(yàn)只需單擊按鍵就能完成進(jìn)入設(shè)備內(nèi)部、調(diào)用圖形化發(fā)包、抓包工具、啟動節(jié)點(diǎn)內(nèi)部瀏覽器、監(jiān)控容器時(shí)延與丟包率、帶寬、吞吐率等操作。
3.6? 平臺實(shí)際應(yīng)用
本文所開發(fā)的網(wǎng)絡(luò)仿真平臺,已在西南民族大學(xué)計(jì)算機(jī)網(wǎng)絡(luò)類相關(guān)課程中進(jìn)行試點(diǎn)應(yīng)用,如圖7所示。目前平臺提供了4種拓?fù)浣Y(jié)構(gòu)模板(樹形、FatTree等)、4種路由協(xié)議(OSPF、RIP等)、5種服務(wù)器(Web、FTP等)、5種端系統(tǒng)(Ubuntu、CentOS等)、3種中間件(nginx、防火墻等)、5種網(wǎng)絡(luò)應(yīng)用(iperf等),通過拓?fù)浣Y(jié)構(gòu)設(shè)計(jì)功能自主設(shè)計(jì)大規(guī)模虛擬網(wǎng)絡(luò),支撐較大規(guī)模的網(wǎng)絡(luò)仿真,用于教學(xué)、科研等工作,取得了良好的效果。
4? 結(jié)? 論
本文針對目前已有網(wǎng)絡(luò)仿真軟件存在的問題,基于Docker等技術(shù)全虛擬化地打造出一個(gè)網(wǎng)絡(luò)仿真平臺,平臺在保證虛擬網(wǎng)絡(luò)高保真特性的前提下,為用戶提供拓?fù)洳渴?、流量注入、網(wǎng)絡(luò)監(jiān)控等功能,有效支撐計(jì)算機(jī)網(wǎng)絡(luò)的研究與教學(xué)。后續(xù)工作將結(jié)合虛擬網(wǎng)絡(luò)映射算法開發(fā)Web版網(wǎng)絡(luò)仿真平臺,用戶通過在線的方式將虛擬網(wǎng)絡(luò)部署在服務(wù)器上。
參考文獻(xiàn):
[1] 鄧偉健,陳曦.基于時(shí)變資源的容器化虛擬網(wǎng)絡(luò)映射算法 [J].計(jì)算機(jī)應(yīng)用,2022,42(2):550-556.
[2] 郭文普,陳天豪,楊百龍.基于eNSP的中小型企業(yè)組網(wǎng)實(shí)驗(yàn)設(shè)計(jì) [J].實(shí)驗(yàn)室研究與探索,2022,41(2):125-129+296.
[3] 馬樂,黃冬梅,王樹鑫,等.網(wǎng)絡(luò)性能仿真軟件綜述 [J].軟件,2022,43(3):34-36.
[4] 任曉鵬,李偉華.基于Packet Tracer構(gòu)建虛擬網(wǎng)絡(luò)實(shí)訓(xùn)平臺 [J].中國職業(yè)技術(shù)教育,2006(27):44+46.
[5] 馬樂,黃冬梅,王樹鑫,等.網(wǎng)絡(luò)性能仿真軟件綜述 [J].軟件,2022,43(3):34-36.
[6] VALANTASIS A,MAKRIS N,ZARAFETAS C,et al. Experimental Evaluation of Orchestration Software for Virtual Network Functions [C]//2021 IEEE Wireless Communications and Networking Conference(WCNC).Nanjing:IEEE,2021:1-6.
[7] YANG Z,YEUNG K L. SDN Candidate Selection in Hybrid IP/SDN Networks for Single Link Failure Protection [J].IEEE/ACM Transactions on Networking,2020,28(1):312-321.
[8] 高德偉,施鑫,王正,等.基于PyQt5平臺的木材在線品質(zhì)監(jiān)測及評等系統(tǒng) [J].林業(yè)機(jī)械與木工設(shè)備,2022,50(7):62-66.
作者簡介:黃?。?998—),男,漢族,四川自貢人,碩士研究生在讀,研究方向:網(wǎng)絡(luò)虛擬化、軟件定義網(wǎng)絡(luò);通訊作者:陳曦(1985—),男,漢族,重慶永川人,副教授,博士,研究方向:軟件定義網(wǎng)絡(luò)、網(wǎng)絡(luò)虛擬化、無線網(wǎng)路、異構(gòu)網(wǎng)絡(luò)融合等;吳濤(1984—),女,漢族,山東曲阜人,副教授,博士,研究方向:無線網(wǎng)絡(luò)、機(jī)器學(xué)習(xí)等。
收稿日期:2022-10-08
基金項(xiàng)目:國家重點(diǎn)研發(fā)計(jì)劃課題(2019YFB1802805);中國博士后科學(xué)基金(2018M643448);四川省重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(2022YFG0208,2022YFG0161);中央高校基本科研業(yè)務(wù)費(fèi)專項(xiàng)資金(2021NYYXS53)