[王鴻 李凌 何捷]
網(wǎng)絡虛擬化是指把邏輯網(wǎng)絡從底層的物理網(wǎng)絡中分離開來或在一個物理網(wǎng)絡上模擬出多個邏輯網(wǎng)絡,同時對每個邏輯網(wǎng)絡進行獨立的部署及管理。網(wǎng)絡虛擬化及相關技術的發(fā)展使得網(wǎng)絡更加多元化,被認為是解決現(xiàn)有網(wǎng)絡體系僵化的最好方案。
EVE-NG 作為一款基于網(wǎng)絡虛擬化的網(wǎng)絡模擬器(前身為意大利人開發(fā)的 Unified Networking Lab,簡稱 UNL),自2017 年1 月正式誕生之日起,就引起了業(yè)內(nèi)的廣泛關注。它具有高可擴展性、功能強大、操作界面簡單易用、版本更新便捷、支持WEB 界面管理、支持定制個性化鏡像、適用人群更為廣泛、開源等諸多特點,不僅可以模擬國內(nèi)外眾多廠商的網(wǎng)絡設備,而且還可以模擬各類操作系統(tǒng)。例如:網(wǎng)絡工程師可用其模擬思科、華為、H3C、F5、Hillstone 等廠商設備;系統(tǒng)工程師可用其模擬CentOS、Debian、Ubuntu、Windows7、Windows10、WindowsServer、MacOS 等主流操作系統(tǒng);存儲工程師可用其模擬Open-E 等一些主流存儲操作系統(tǒng)。EVE-NG 的應用范圍廣泛,是由于其融入了Dynamips、IOL、QEMU 等經(jīng)典網(wǎng)絡模擬器,同時,若有支持虛擬化的鏡像文件,也支持制作鏡像并導入來進行生產(chǎn)模擬。
現(xiàn)有網(wǎng)絡技術發(fā)展已經(jīng)進入到了NFV 規(guī)模應用的階段,例如5G 核心網(wǎng),云服務等,都是使用虛擬化部署的方式提供服務。NFV 也是構建于計算虛擬化基礎之上,因此EVE-NG 能夠比較完整的模擬VNF,從而進行現(xiàn)真實境模擬實驗的操作。
為了說明EVE-NG 的實現(xiàn)原理,本文主要從EVE-NG的拓撲存儲結構以及虛擬節(jié)點與本機之間的網(wǎng)絡連接邏輯關系兩方面進行描述。
Cisco IOU 是思科測試IOS 時使用的模擬器,基于Ubuntu Linux 系統(tǒng),操作相對不方便,為了簡化操作,后有開發(fā)者將IOU 從Linux 系統(tǒng)中提取了出來,并開發(fā)出了Web-IOU。
Web-IOU 是輕量級的IOU 模擬器,部署使用簡單,但同時功能也相對簡單,用于思科數(shù)通設備的網(wǎng)絡拓撲模擬,同時支持在web 端上傳cisco 的官方鏡像。
Web-IOU 作為EVE-NG 的前代產(chǎn)品,在功能上與EVE-NG 相似,都可以通過虛擬化鏡像來進行網(wǎng)絡功能的模擬實驗操作。為了更好說明EVE-NG 的特性,按照如下3 點將它與Web-IOU 進行對比。
(1)在操作方式上
EVE-NG 支持在web 頁面直接進行網(wǎng)絡的編排操作,能夠進行節(jié)點的增刪改等操作,能夠調(diào)整節(jié)點的連接關系,從而動態(tài)調(diào)整拓撲結構;而作為早期網(wǎng)絡模擬器,Web-IOU 只能夠在創(chuàng)建實驗的netmap 中,使用特定語法描述節(jié)點之間接口的關聯(lián)關系,節(jié)點也是在創(chuàng)建實驗的界面中聲明,拓撲界面不能進行關系的重連、節(jié)點修改等操作。相比而言,EVE-NG 更符合圖形用戶界面的操作,符合使用邏輯。
(2)在網(wǎng)絡模擬項目的存儲結構上
Web-IOU 的LAB 信息是通過數(shù)據(jù)庫存儲,通過數(shù)據(jù)表的關系將數(shù)據(jù)進行關聯(lián);而EVE-NG 后臺使用xml 格式文件描述項目。與數(shù)據(jù)庫相比,單個xml 文件更能直觀清晰的展示lab 信息。
①EVE-NG 的存儲方式
EVE-NG 的lab 文件的后綴為UNL 格式,文件內(nèi)的格式與xml 相同。在界面上的圖形化操作數(shù)據(jù)都是以xml 形式表示,因此直接導入編輯好的xml 文件也可以在界面上查看到需要的拓撲結構信息。其中包含的層級結構關系如下。
根據(jù)此結構可以看出,文件主要描述了結點的基本信息,如鏡像位置和接口名稱等信息,以及結點之間的網(wǎng)絡關系,如不同結點之間的連接的線段信息。此兩者構成了基本拓撲結構,而objects 里則是結點的初始配置信息以及與實際不構成拓撲的描述信息等。
②Web-IOU 的存儲方式
其中,Web-IOU 的數(shù)據(jù)表主要包:Bins 存儲鏡像信息;Configs 存儲的各個節(jié)點的初始配置信息;Devices 存儲各個幾點的屬性信息;Folder 存儲已經(jīng)創(chuàng)建的文件夾路徑信息;Images 存儲的圖片信息;Labs 存儲項目整體說明;Rel_img_lab 存儲圖片和lab 的關聯(lián)信息。各個數(shù)據(jù)表之間的關聯(lián)關系,如圖1 所示。
圖1 Web-IOU 數(shù)據(jù)表關系結構
(3)在功能性上
Web-IOU 僅支持思科自身的IOS 設備,包含的設備種類相對較少。而EVE-NG 集成了IOU 和Dynamips,在Web-IOU 的基礎上擴展了許多其它廠家的官方鏡像,同時還加入了qemu,可以通過制作qcow2 鏡像文件,手動導入到qemu 路徑下即可創(chuàng)建相應的虛擬節(jié)點供web 端使用,應用范圍更加廣泛。
EVE-NG 主體架構是在UNetLab 基礎上搭建的,主要的變化是其依賴中增添了PHP、Apache、Guacamole、MySQL、SQLite3 和 Open vSwitch 等技術,主要是在 Web 頁面服務和數(shù)據(jù)庫方面的改進,以及自動化方面技術的增添。同時為增強系統(tǒng)底層的性能,使用 KVM(kernelbasedvirtual machine)進行硬件加速,使用 UKSM 進行內(nèi)存優(yōu)化。在拓撲界面上運行某個節(jié)點,即在后臺使用kvm運行其虛擬服務程序。
EVE-NG 有OVA 和ISO 兩種文件格式,通過vmware導入ova 的方式,將eve 安裝稱虛擬機,意味著每個網(wǎng)絡節(jié)點都進行了vmware 和EVE-NG 的KVM 進行了兩層虛擬化嵌套,而嵌套虛擬化會導致部署的結點性能有所下降。因此若對性能要求較高同時擁有單獨的物理設備,可以選擇用ISO 的方式裸機安裝EVE-NG,減少一層虛擬化操作。
以vmware 方式為例,如圖2 所示,在主機上創(chuàng)建了vmware 的虛擬網(wǎng)卡,EVE-NG 內(nèi)部虛擬網(wǎng)卡與vmware 的虛擬網(wǎng)卡相連,EVE-NG 的管理地址需配置成與vmware 網(wǎng)卡網(wǎng)相同網(wǎng)段,此時,主機、vmware 的虛擬網(wǎng)卡和EVE-NG 的管理接口均處在同一個網(wǎng)段。本機即可直接登錄EVE-NG 的web 界面,進行網(wǎng)絡設備的拓撲操作等。
圖2 vmware 部署EVE-NG 示意圖
在EVE-NG 的配置界面中,可以添加虛擬網(wǎng)橋Cloud,在系統(tǒng)層面對應了EVE-NG 的pnet 接口,具體網(wǎng)橋與接口的對應關系如表1 所示。EVE-NG 的管理網(wǎng)卡為其第一塊網(wǎng)卡eth0,該塊網(wǎng)卡被橋接到EVE-NG 虛擬網(wǎng)橋Cloud0 所對應的pnet0 網(wǎng)卡。因此,如果在拓撲界面將虛擬設備與Cloud0 網(wǎng)橋相連,也即連接到對應編號的pnet0網(wǎng)卡,pnet0 就可以把設備發(fā)送出去的數(shù)據(jù)幀從對應的物理網(wǎng)卡eth0 轉(zhuǎn)發(fā)出去,從而實現(xiàn)了虛機設備接入到了這個物理網(wǎng)卡所在的物理網(wǎng)絡中。將虛擬設備的ip 配置成eth0 相同的網(wǎng)地址段,便可以可實現(xiàn)本機直接對模擬設備的直接管理,如華為防火墻可直接使用其接口ip 訪問到其GUI。
表1 EVECloud 橋接表
如圖3 所示,將華為USG 防火墻的G/0/0/0 管理接口與Cloud0 網(wǎng)橋相連接,將VPC 的eth0 接口也與網(wǎng)橋相連。將USG 的G/0/0/0 接口配置成與網(wǎng)絡節(jié)點相同網(wǎng)段的地址(配置指令如圖4 所示);VPC 使用“IP DHCP”自動分配網(wǎng)絡地址。在后臺使用”brctl show”,可以查看到pnet0 作為網(wǎng)橋?qū)th0 與G0/0/0 進行了橋接,如圖5 所示。配置完成后,USG 的G0/0/0 接口、VPC 的eth0 接口均與EVE-NG 的管理網(wǎng)卡eth0 處于同一網(wǎng)段,因此可實現(xiàn)PC主機對USG 防火墻的直接管理,同時在VPC 上也可以實現(xiàn)對USG 的訪問。
圖3 EVE-NG 配置防火墻訪問示意
圖4 防火墻管理端口配置信息
圖5 虛擬結點通過橋接方式連接
在5G 核心網(wǎng)場景下,如圖6 所示,可以將核心網(wǎng)網(wǎng)元鏡像導入到EVE-NG 來進行數(shù)據(jù)配置,起到對現(xiàn)網(wǎng)環(huán)境的模擬的效果。在此模擬環(huán)境上進行數(shù)據(jù)配置并進行模擬信令發(fā)送操作,可以驗證配置指令的準確性,減少現(xiàn)網(wǎng)數(shù)據(jù)配置異常的可能。
圖6 使用EVE-NG 對5G 核心網(wǎng)進行模擬
EVE-NG 作為一款具有代表性的開源虛擬網(wǎng)絡仿真軟件,基于QEMU/KVM 和Linux 橋接,使其既可模擬操作系統(tǒng)又可模擬眾多廠商網(wǎng)絡設備。未來的各種技術發(fā)展,不論是虛擬化技術,虛擬機的通信技術,還是Linux 的優(yōu)化技術等,都可以在EVE-NG 中得到應用。
在5G 的背景下,網(wǎng)絡虛擬化軟件也可以運用于核心網(wǎng)方面,將核心網(wǎng)設備的虛擬化鏡像進行部署連接,將虛擬設備的配置保持與現(xiàn)網(wǎng)環(huán)境一致,即可起到現(xiàn)網(wǎng)環(huán)境模擬和配置預測等功能。隨著后續(xù)物聯(lián)網(wǎng)等技術的發(fā)展,也可將個性化的物聯(lián)網(wǎng)設備接入到虛擬網(wǎng)絡中進行現(xiàn)網(wǎng)模擬等操作,虛擬網(wǎng)絡仿真具有很好的發(fā)展前景。