计算机科学第41巷:第U期VoL41 2014斗6n Computer Science June 2014 基于虚拟机和资映射的网络仿真系统如l行兵晤晓霞陆新嚣〈河南师范大学计算机与信息工程学院新乡453007)偏要协议外估是周修协议设传开发的重要环节,直丛影响到协议设传开发的效牟和质量.周修模拟、实际测试和周修仿真是3种主要的协议伴估途径周格在是拟在真实性上存在明显不足实际测试不具有可重复性和可控制性间修仿真最有两者的优点又可遍开兵不足为协议伴估提供低成本、可控制、可重复、高真实庭的测试乎台.分析了周修模拟、实际测试和周修仿真对协议伴估的影响归纳了周修仿真的分决重4良种参批控制的周修仿真系统设仆思怨进行了分析最后对同修仿真的发展趋势进行了展望.关键词周修仿真协议伴估设仆思怨移动自组织网修中回法分类号TP391. 9 交融标识码A Netwo叫毛EmullllÎollS)门stcmß内S创1011Virtulll M捕chincsllIul Re喝。urce!\’lHpping L1U Xing-bing MU X恼。....xjaDUAN Xin-tao 制legeof ~"()tnpute< "nd infO<lILa,ion engi nec,;ng ,Hen"n NonnHI U nive<s町,Xi ,;",,) Ahslracl Performance e\’aluation is an important stage during the de"e[opment of network proto∞s. Algorithms and Proto∞s are usually tested in exp臼imentalnetwork or simulation en,’ironments. Simu[atωn le\’cl of abstraction may be 100 high to capture \ow-le,’eJ effect句Experimentalnetworks are neither∞ntrollable nor repeatab[e, Emulatωn pro,’ides a third point for prω~1 ,四川ngand ,,"aluation川崎expectedto be a Iow-αst .rontrollab[e and rep凶tab[etesting plat›form with high degree of this make a sun’ey on network emulatωn their con›cepts .daSl:!ification. focus on d四ignmethodo\ogy of the Virtual Machin四andthe Resource Mapping emulatωn system the de\’cloping trends and m剑nchallenges are a\so summarized K,y 剿'阿拉Network 优01e\’aluation. Design methodo\ogy. MANET 所列1号l言3种网蜡协议评估方式比较'曼l协议评估是网络协议设计的震要军事节协议评估的有效冒冒Simulation Emulati"由,w, 性便利性直维影响协议设计开发的质量和放率,.,典型的a祖耳堤上a柑耳堤上真宴耳堤上远目 .. 远行曲代码远行..租序真要程序协议评估途径包括穰拟(Simulation)、仿真(Emulatio川和实~展位'于'呼 际测试(RealWorld Experiment. RWE)U1 .网络蟹似可用于陋'剧性'于'呼 创建虚拟的实验蝠'通过各种在奏型和伪代码的执行产尘数精确性锺'呼'于胃再生是是否据避而搞这协议的运行情况网络银拟具有良好的扩展性 真实性高菌'毫是可控制的、可再生的并且在网络开发旱栩就可以使用1但是是否.时否是是可E辑性开串串翩开在阜用开在幢幢翩镇拟环埠往往囱子抽象层次过商而缺乏真实性此外网络穰巳CMU-OOR咽"咽。pNet.拟环扫庭中运行的代码不能直撞在真实网络中运行往往需要事例G'曲tooimNEMAN MIT R帕"'.'配额编写RWE是指构建-定规镇的测试网络在真实的本文主要对网络协议评估手段世行了比较介绍7网络网络上运行真实的协议代码从而分桥协议的佳能.RWE 仿真系统的费别划分分析7墨子多擞控制的网络仿真系统具有较好的真实性但真扩展性艘程'些实曾控制比较困设计思想'段后归纳了网络仿真的发展趋势难实验场'也很难完全震复并且RWE仅能在研究开发的 较隐时刚进行.网络仿真系统是网络镇拟与RWE的折衷2 类别.';)1分兼有两者的特征[']Ê可以在虚拟的网络上运行真实的协议或应用代码直接分桥协议的特性具有较好的可控制性可网络仿真系统可以钱用层次特征分布特征设计目标'重复性和扩展性真实性也比较商.三者的组歇比较如表1目标网络够不同标准进行分类本立爱国"科学自然蓦盒<U!20(606)资助.刘行兵0973-)男情士副缴费硕士盒导师主歪研究方向为无缘网络网络安全§案件工程g穆幌霞0980-)女情士盒讲师主要研究方向为密码学与健息安全g隙'而if0972-)男愧士缴费硕士盒'师主要研究方向为图像分析. ~ 1 R
按照层次特征分类网络仿真有水平仿真和委亘仿II之'度提流施加各种影响从而形成用户所鹅辜的网络蝠'坚囱于分水平仿真锚的是徽仿真实体位于协议梭的某个特定层虚拟设备带来的负钱比虚拟饥要低很多系统的可扩展性得次上而且这种特定层次的仿II往往通过集中控制来实现以提高基于虚拟设备的仿真系统尚处于起步阶段奠中霎直仿真指仿真的软件运行于组连续的协议层次上典型MANET仿真系统NEMAN['】就是个典型的代寝.的是MAC层E层也有可能包含更高的层次委直仿真往h叫N叫W 舍 ,→飞一,十←二,, 、往通过分布的方式来实邵阳仿真软件分布在多个物理节点,,、,-, 、户、+‘,, 二就虚拟节点之上例如MVLE,NEMAN都可以仿真网络的Vir1uol Vi"wl MAC犀利网络层M 叫飨照分布特征分类网络仿真系统分为尊饥仿真系统和T<JpOIogy M’’’’gcr 分布式仿真系统单机仿真系统通常是在同台物翅机器上回1葛子a很佩的仿冀东峰运行多个虚拟凯捕或多个虚拟设备再通过中央控制曾建形成仿II网络1分布式仿真系统往往拥有多个物理节点彼仿真UML是User-l叫Qde-Linux的编写它在用户空间运行实体分布于不同的物理饥翻之上Linux肉核形成-个良好的虚拟机如果在同-台凯踏上飨用设计目标分类网络仿真系统分为子网仿真和环撞运行i>个UML的实例再通过中央控制镇块控制其互联关仿真前者的目标在于使得仿真系统能够与外部真实的网络系便可仿真指定类型的网络.然而UML的缺点在于囱于戴德流进行交互后者的目标在于使得现实世界的协议程席它采用的是三层Jt叠结构"证实肉核、用户态i差程、用户态内可以直维在仿巢网络上运行前者的使用方式是在真实的戴核)因此运行效率受到严Jt影响在UML上夜序的运行速黯流中插入仿真系统节点从而形成虚拟的网络环但在后者的度比正常情况下平均慢20%左右因此所能仿冀的带宽(戴使用方式则是亘缩在仿真系统上运行待测试的协议"程席据传输速率)受到严重限制.按照仿真的目标网络分类可大虱划分为有线网络仿真MVLE是-个MANET仿真系统它是对葛子UML的元钱网络仿巢和销合仿真尊饥网络仿真系统的改选其篡本恩怨是在一个高效的徽表2绘出常用网络仿漠系统的具体分类.内核(FiasoMicrokernel['J)上运行i>个ULinu:l旧的案例然后遥远网络仿真器(NetworkEmulalOr)来徨制不同ULinux'曼2网络仿真系统份提系统实例之间的通倍从而产生所稽的网络拓扑ULinux 有勇育事支军覆羽W絮絮贺京军DummYNe..MobiEmu. NSE,NIST N~~ 是Linux内核版本的修改,吉把版本内核的硬件操'次~.霉鑫'Bcd川阳川 作委托给微内核而ULinux则宪金运行子用户态.在该方DummJNet. N回N町N"a院凯式下ULinux的无线网卡驱动位蚕源绘微内核来实现则仿"布~惊~山NEMAN份布S在叫凹,叫真系统只稽粟'段写驱动程阵以支椅多个L4Linux实例的并发芋商百XDummyNe<. N.,刷刷也计目标运行即可.与基于UML的仿真系统徊比囱于戴少了软件环境仿真叫旧层叠的层次该方式的晌应时间和系统负钱都大大事在小有哥葡萄百】配DummyNe,.N囚TN" 目标.富'无篇"绩仿真酬 NEMAN是个荔于虚拟设备的MANET仿流系统JA每台仿真NSE. N., 图2所示的体系统构中可以看出NEMAN囱3大部分组成:用户界面拓扑管理栅和虚拟设备上的进程其中用户界面、.3 世计思想供用户设定网络拓扑结构t拓扑管理揭负责根据用户的输入网络仿巢系统的发展经历了大约10竿的历程.从璧初定栩栩应的拓扑:而用户进程则是待测试的协议或应用的WAN仿真系统DummyNet到量近的MANET仿真系统APLMobiNet和NEMAN网络仿冀系统在不断发展和进山lr.."bod 化从其发展历程可看出设计思想的传来和延续各种设计4 思想的发属并不平衡相当多的工作集申子磊于秽'撞控制的TlO\vl唱y方式§墨子虚拟饥/虚拟设备的方法也受到7徊当程度的重manager 银其他设计方式要么仍处于起步阶段要么囱子成本较高而来得到充分发黑〈不过仍然可以为网络仿真系统的设计徨P吁叩恼供些借鉴l.下面貌基于虚拟凯和资酒映射的网络仿真系统的设计思想进行归纳总结回2NEMAN体系结构3. 1 ~鉴于虚拟机/虚拟设备篡于虚拟凯的仿真系翁的3基本恩怨是在同-台饥榻上NEMAN的核心是TAP设备和拓扑管理帽TAP设备运行多个虚拟饥再迢迢个叫归失控制梅快控制不同虚拟机是Linux肉核中提供的虚拟设备每个TAP设备代亵快网之间的互联关系从而形成囱虚拟机组成的虚拟网络奠篡卡.通过TAP设备仿真的层次可以深入到彻理层和MAC本体系统钩'目因1所示.典型的代寝有UML[.j和MV层拓扑管理据是个中央控制进程吉会擒获到每个即LEPU葛子虚拟设备的仿流系统剧组虚拟设备及其上的一将传送的MAC帧然后根据当前拓扑结构决定谅'真的去向组进程作为-个虚拟节点同-台机器上的多个虚拟节点组(有可能彼转发给多个节点-个节点也有可能被丢弃).系成-个周都网络再通过拓扑管理德统定制各种拓扑结构对统中存在-个翻立的TAP设备【图2中的TQ凹)可以与其·又19
对网络的仿真与现实系统更加後近这点从1L\于毒'撞撞制他所有节点退过监控逼迫(MonitoringChannel)遗行双向通的网络仿真系统的发展过程可以清跚地看出惜这是NEMAN的重要特征之.有了监撞节点方面可用于监徨网络特征另方面可以实现流量注入(2)被仿真的网络遗精从有钱网络向元钱网络特划是囱于采用虚拟设备代替虚拟饥仿荔系统的可扩展性得MANET的方向转移(3)仿It系统所关注的层次逐渐从网络层向MAC层甚到很大提高-ZS子UML的系统台饥榻上量多能仿真!Il+至物理层转移追求更低层次的真实性是网络仿真系统的发台虚拟机器组成的网络而NEMAN则可以在台警通机锦晨方向上仿真!Il百个节点组成的网络(4)仿真系统从单纯的~!Il控制向参撞撞评估的方向发展.NEMAN在网络层实现了。LSR(OptimizedLink State 旱翻的仿真系统主要的目标在于徨制各种网络特征~I撞形Routing)踏囱协议创以支持高层应用(比如中闷件开发儿成虚拟的网络然而却很少有戴据支持和系统分析来证明不NEMAN的缺陷在于它仅仅实现了网络层仿真的真实性对同实验之间的可重复性和实验的真实性.囱于MANET环于下面各层NEMAN仅考虑到了连雄性(Connecti vit y )而撞下许多国策是难以完全控制的因此仿真系统必须提供试没有考虑到MAC层可能存在的冲突和隐黯节点够问植因验'段'巨性评估的途径此其真实性方面存在明显不足结束语网络仿真系统是糊不同于模拟和实际测试 ~鉴于资源峨射的精型的协议评笛途径吉为协议评估提供7种低成本该集网络仿真系统的篡本恩怨是提供系统级别的服务,可肆"可踵l!商真实度的测试平台本文对网络仿真的1L\根据用户的需求从系统资"中滥取比较符合条件的节点组本报念类别划分1L\子虚拟机和资源峻射的网络仿真设计思成仿奠网络仿It系统所键供的仅仅是种资嚣映射的皿想i草行7总结并归纳了网络仿真系统的发展趋势囱子网务即把用户设定的逻..拓扑映射为仿真拓扑该仿真拓扑基 络仿真平台的设计思想不同得在多种网锚仿真平台将在后本可满足用户指定的各种性质.典型的代寝是NetBecJ11<>-"1 越文献中对其遗行分析NetBed主要是-个网络仿真系统但同时支持模拟和RWE.从图3所示的体系结构中可以看出Netbed包括4种参考宜献类型的资理局越网络资漂分布式资"仿真资源和慢拟资[, ] 佛..保-计'事机仿真~统述评[J】计算机仿真(4),潭.周域网资源囱大量PC组成它们之{司通过高端的变但良’-5 机(团中的ProgrammablePatchpaneD组成金联通的网络并[2] 刘军每自组但网路仿真平台的设计与实现CJ]计,事饥科学通过虚拟周咸网(VLAN)的方法构造侄慧的网络拓扑E分布(1),24剖三走资漂是分布于世界各地的节点它们被用于对广域网进行[3J S;.aj A :or R. Simulation T.∞15 Sur-›仿真:仿真资源是通过NSEW:在a拟周蜡网之闹插入D"~vey[J]. lnten. ." ωnal of Adva阳也JR,悦川û>叫节点来实现和提供的1德拟资2事可通过NS镶拟翻来 nd CommuniCatκ>n E"ginetting. 20 12. 1 (4 ) ,201-2 \0 实现用户通过NS场贵文件E蓝图形化输入来定制实验场[ .]伽悦r材。.,民n01 the Linux l..e<ttel[C]//5th Annual Linux Showc.提&.琶 ifomia. 200 1 费系统则根据用户的要求逃行帽应的资源分配用户看到[5] Ertgel M. Smith M. Hane阳nnS. et al. Witele~~ Ad-Hoc Net 的是逻锦节点官有可能被映射为蟹似的节点仿真的节点甚、飞~.kEmulati.。υ"lngM略.卡B陆sedVittWlI Lirtux Sys 至真实的节点.Netbed还提供了诸如抢占、调度'!'系妓级服tem~[C]//Eu<<ßim'04. 2∞4 务并为用户提供了良好的实验控制撞口[6] Putat M .Plagemanrt T. NEMAN, A Emulator 10’ Mo›bile Ad-Hoc .[R]. Technical 符 M山巾" 7368-214卡".0吧panm阳tof ln岛=.,口U归川"即"J 0喻。灿灿阳Ma<c斗,z∞5,155-161 C副rolS叫ROUlcr[7] Hohmuth M. The F刷ωKemel,R问"'陀阳阳'"o.,佣[R]比TU D..esde归TechnicalRep盼nTUDFI98-12. 1998 ec [8] Hªnig H. Hoh’nuth M. Wolter J. T晶阳"<1川ux[C]//Procee›阶。ψ...mnublcI’.letpan<j" ding叫由5thAUSH"I"川Confe..enceOn Parallel and Real›Time Systems. Adelaide. 1附回3Netbed体票结构[9] α仙senT. J acquet 1’. Opti阳军创LinkState Rout-ing 囱于NelBed提供了系统级的资洒管理凰务从而可以有<OLSR>[S]. RFC 3626. OctOber 2003 怨地利用资源此外N"坠d可以在同-个物理节点上运行[10] Whi’e 11. Lepreau J .Stolle. aL An Integrated Experimental 多个FreeBSDJ剑\{n】虚拟节点(每个物理节点可运行多达20Environrnent for 邸.trihutω5,阳 N制响rk5[C]//OS个JDl’,255-270 a i\)而每个虚拟节点在-定情况下都可以作为黯立的节[11] Ricci R. Alfred C, Lep..eau 1. A 501明.for the Net、NQrkTestbed 点来使用从而使得磁测试的网络规候不再曼限于物理网络Mappirtg 榈[1].ACM Computer Commurticat阳.Review 的规懊(2川叫4 在展趋势[12] White 11. LepteauJ. Guruptasad S. Lowerin自thebarner to wire-1",,. and mobile experimentation[ C] // I'r况。fHOtNe",-L Oct 纵观网络仿真系统简短的发展历程可以看出其发犀趋2002 势包括以下4个方面:[13] Kamp I’-H. R N M. J.;ils,C;.,firting thE恻民pot~rtttoot (1)网络仿真所关淫的回来涩洒地加从而使得仿冀系统[C]//PtOι2nd Intl. S代NEConfetertce. May 2000 ,究o