网络性能仿真软件综述

2021-04-22 07:42郭宇莹徐展琦李允博
无线电通信技术 2021年2期
关键词:该软件软件性能

郭宇莹,徐展琦,李允博,杜 爽

(1.西安电子科技大学 综合业务网理论及关键技术国家重点实验室,陕西 西安 710071;2.中国移动通信研究院,北京 100053)

0 引言

随着网络技术的高速发展,网络规模日益增大,网络业务逐渐多元化,不断提出新型网络架构、协议及算法,并得到应用。专业人员需要灵活地规划或优化网络,从而实现降低资本支出与运营成本、提高网络服务质量、减小资源消耗等目标。

传统网络性能仿真主要采用经验分析、数学计算及实验设计等方法。经验分析方法需要专业人员全面细致地掌控全网状况;数学计算方法以一定的假设和限制条件为基础,将研究对象抽象为数学模型,以此来分析网络性能;实验设计方法通过软硬件结合来搭建测试平台,配置实验环境,再研究网络协议评估网络性能。然而,由于网络的异构性、网络数据传输过程的复杂性和网络业务属性的多变性,采用经验分析和数学计算方法来设计和规划网络已变得十分困难,使用实验设计方法搭建测试平台所需要的成本也日益昂贵。同时,传统网络性能仿真方法难以确保所获取仿真结果的准确性,也很难客观地衡量诸如可靠性、有效性以及用户服务质量等网络性能。为弥补上述方法的缺陷,网络性能仿真软件应运而生。

网络性能仿真软件通过搭建网络模型,模拟网络资源分配、业务处理与传输及交换等过程,使专业人员根据仿真结果来验证算法性能,或以较低的成本获取网络性能的影响因素和可优化参数,从而最大程度地提高网络设计、运营与优化的效能,实现风险最小化、收益最大化及资源利用合理化等目标[1-2]。

目前,国内外已经研究并开发出多种网络性能仿真软件。按照适用范围可以将它们分为两类:一类是通用型网络性能仿真软件,可支持多种网络场景的仿真需求,主流软件有NS2[3]、NS3[4]、OMNeT++[5]、OPNET[6]及QualNet[7-9]等;另一类是侧重于某个特定研究方向的专用型网络性能仿真软件,如主要应用于光网络场景的VPItransportMaker[10]、Net2Plan[11-12]、ElasticO++[13]及SimEON[14]等。这些网络性能仿真软件可极大地方便网络研究,得到广泛应用。

本文首先简述主流通用型和光网络专用型网络性能仿真软件的基本功能、主要特点和适用范围,然后根据总结的网络性能仿真软件性能评价指标对其进行多属性对比分析,最后提出网络性能仿真软件的未来发展设想。

1 通用型网络性能仿真软件

通用型网络性能仿真软件适用于大多数网络场景,兼具稳定性、集成性和高效性等特点,主要介绍其中主流的NS2、NS3、OMNeT++、OPNET和QualNeT。

1.1 NS2

NS2 (Network Simulator-Version 2)[3]是UC Berkeley大学开发的离散事件网络性能仿真软件,在学术界应用广泛,适用于有线网络、无线网络、局域网以及卫星网络等多种网络场景。

NS2主要运行于UNIX/LINUX操作系统,采用Otcl和C++两种开发语言,分别用于网络环境的配置和仿真程序的编写,方便用户修改环境参数、高效执行仿真程序。

NS2封装的功能模块数目多且易于扩展,但模块间互操作性与耦合性较差,版本更新时容易产生模块不兼容等问题。此外,NS2不支持图形用户界面(Graphical User Interface,GUI),仿真操作不直观,用户只能借助XGraph和NAM(Network AniMator)等数据分析工具来观察仿真结果。由于NS2不支持分布式仿真,仿真速度比其他通用型仿真软件慢。

1.2 NS3

NS3 (Network Simulator-Version 3)[4]是将NS2简化后,结合其他仿真器的优势与应用经验所开发出的开源跨平台离散事件网络模拟器,主要用于课堂教学和学术研究。

NS3的各功能模块均通过编写C++代码实现,用户可根据自身需求选用C++或Python语言编写脚本来配置仿真环境,通过调用各个模块来实现不同的网络功能,但NS3内置模块数量有限,需要对其进行扩展,才能满足用户对更多网络功能的需求。

此外,NS3提供数据跟踪功能,用户可以采用可视化界面工具Pyviz和统计作图工具gnuplot等数据分析工具来处理数据并分析结果。该软件还支持分布式仿真和并行仿真,运行速度较快。

1.3 OMNeT++

OMNeT++(Objective Modular Network Testbed in C++)[5]是由布达佩斯大学通信工程系的研究团队开发的离散事件仿真工具,具备开源和跨平台等特性,可用于硬件体系结构的验证和复杂软件系统性能的评估。

它采用混合式建模方法,即采用网络描述语言配置网络性能仿真模型,C++语言编写普通模块的功能,从而将网络的数据模型和控制操作分离,结合两种语言在各自领域运行速度的优势,可有效提高代码的执行效率。

OMNeT++兼容Eclipse的集成开发环境(Integrated Development Environment,IDE),用户可以利用Eclipse的插件将该软件与第三方软件联合使用。该软件模块化的设计方式使得各个模块的功能调试和扩展互不干扰,具有较高的灵活性和可扩展性。

OMNeT++提供全面的用户手册和丰富的说明文档,并拥有简单易用的GUI及高效的调试工具,使用户学习和使用的难度较低。另外,该软件还拥有并行仿真机制,仿真速度快。

1.4 OPNET

OPNET (Optimized Network Engineering Tool)[6]是1986年由麻省理工学院的研究团队开发、基于离散事件驱动的网络性能仿真软件,是目前世界上最先进的同类软件之一,广泛用于学术研究和产业商用。

它有OPNET Modeler、IT Guru、Service Provider Guru和WDM Guru四个系列产品。OPNET Modeler用于协议模型设计和网络性能分析;IT Guru实现大中型企业网络的状态预测和性能评估;Service Provider Guru是面向网络运营商的智能网络管理软件;WDM Guru是针对使用波分复用(Wavelength Division Multiplexing,WDM)网络的运营商和设备制造商研发的性能评估软件。

其中,OPNET Modeler应用最为广泛,其模型精度高,且内部采用三层建模机制,符合开放系统互连(Open System Interconnection,OSI)分层模型的设计规范,使该软件可高度模拟实际网络的数据传输过程。该软件还借助映射概念将实际网络中的物理设备抽象到软件中,从而有效提高网络模型的真实度。由于软件所提供的模型库内容陈旧,且模块多已固化,功能扩展的难度较大,导致用户难以得到最恰当的网络设备仿真参数。

作为一款商用软件,OPNET功能较为齐全,其拥有全面的用户手册、丰富的学习资料和简单易用的GUI,方便用户构建网络模型、修改网络拓扑参数、自定义仿真过程及分析仿真结果等。软件还支持并行仿真,运行速度较快。

1.5 QualNet

离散事件驱动的QualNet[7-8]是由Scalable Networks Technologies公司开发的跨平台商业网络性能仿真软件,主要用于有线网络、无线网络和混合动态网络的性能分析,也可用于新型协议模型的设计和大规模网络的构建等。

QualNet遵循OSI分层模型的设计规范,可高度模拟实际网络的数据传输过程。此外,软件包含移动模型和地理模型等预设模型,可较为真实地模拟预定义节点的实际移动轨迹,还可利用平面地图还原仿真场景的地理信息。

QualNet可配置包含上万个网络节点的网络模型[7],运行在多核和多处理器系统上,支持并行仿真与分布式仿真。因此与其他仿真软件相比,其仿真速度在小规模网络中可提高几倍,而在大规模网络中可提高十几倍到近千倍[9]。

此外,QualNet界面友好,使用方便,可用内置数据分析工具处理仿真结果,并通过外接第三方软件扩展软件功能。

1.6 通用型网络性能仿真软件在光网络的应用

NS2、NS3、OMNeT++和OPNET同样适用于光网络场景,例如段靖远等扩展NS2的功能,使其支持IEEE-1394b光网络的模型优化与性能评估,从而获取该网络的带宽利用率等性能参数[15];Arokkiam等在NS3基础上扩展XG-PON (10G-capable Passive Optical Network)模块,用于研究XG-PON技术的部署策略[16];梁兵采用OMNeT++搭建网络环境,可仿真多层多域光网络中的路由和保护算法[17];郭珊宜采用OPNET搭建时分波分复用无源光网络(Time and Wavelength Division Multiplexed Passive Optical Network,TWDM-PON)场景,仿真验证所提出的基于长短期记忆网络(Long Short-Term Memory,LSTM)的提前休眠唤醒节能算法的性能[18]。

2 光网络专用型网络性能仿真软件

光纤具有传输带宽大、信息保密性强及价格低廉等优点,已经成为接入网、城域网和核心网的最重要传输介质,因此有关光网络规划与优化的研究也日益成为人们的关注重点。光网络专用型网络性能仿真软件可用于研究多层多域光网络中的联合规划以及各类算法在其他复杂网络环境下的性能,主要介绍其中常见的4种仿真软件VPItransportMaker、Net2Plan、ElasticO++和SimEON。

2.1 VPItransportMaker

VPItransportMaker[10]是由VPIsystemsTM公司开发的网络设计和优化工具,用于准同步数字序列 (Plesiochronous Digital Hierarchy,PDH)、同步数字序列 (Synchronous Digital Hierarchy,SDH)、波分复用(Wavelength Division Multiplexing,WDM)以及光传送网 (Optical Transport Network,OTN)等光网络的设计与优化。

VPItransportMaker主要特点有:

① 可以通过GUI对网络进行多形态设计,包括链状、环形及网状等网络构型,也可借助网络构型设计引擎以更改网络布局。

② 提供多层网络建模功能,覆盖客户层、网络层、拓扑约束层和多样性约束层,支持光层、SDH/SONET、PDH及以太网等多种业务类型。

③ 拥有Plug-In伸缩扩展结构和Scripting脚本引擎功能,便于用户进行有关故障模拟和业务恢复的网络可靠性分析。

④ 拥有专用的路由和波长分配设计引擎,方便用户进行路由和波长分配问题的研究。

⑤ 提供算法接口,使用户可以继承该接口以添加自定义算法。

⑥ 支持丰富的数据报表和图形报表,可以将结果以XML、TXT及XLSX等格式进行存储。

2.2 Net2Plan

Net2Plan[11]是由西班牙卡塔赫纳理工大学的研究人员于2011年开发的开源网络性能仿真软件,主要用于WDM网络、IP路由网络、软件定义网络(Software Defined Networking,SDN)以及网络功能虚拟化(Network Functions Virtualization,NFV)网络等的性能分析、评估和优化。

其主要特点有:

① 提供用户交互界面(Graphical User Interface,GUI)和命令行界面(Command Line Interface,CLI)。其中,GUI较为直观,CLI支持多批次实验,可节约计算机资源。

② 将节点、链路及路由等组件抽象化,便于网络拓扑的构建和网络参数的修改。

③ 采用综合容量模型(Integrated Capacity Model,ICM)[12]开发多层网络规划与设计工具,可进行多层网络拓扑的构建;

④ 可通过GUI自定义网络拓扑或业务请求,能够验证离线网络和在线网络算法的性能;通过GUI添加专用的.n2p文件实现新增网络拓扑或业务请求的功能。

⑤ 自动生成软件内置的或用户自定义的仿真报告,提供丰富的API接口以集成自定义算法,支持代码复用,可按需功能扩展。

⑥ 拥有大量视频教程和学习资料。

2.3 ElasticO++

ElasticO++[13]是基于OMNeT++的弹性光网络(Elastic Optical Network,EON)仿真工具,是第一个用于研究动态EON场景下频谱碎片问题的软件。

ElasticO++完全兼容OMNet++的GUI,能够可视化地查看网络模型、修改网络参数、观察仿真过程、输出仿真结果。仿真时可以配置诸如转发器、可重构光分插复用器(Reconfigurable Optical Add-Drop Multiplexer,ROADM)及光纤等光网络设备以提高网络模型的精度。该软件还支持批量仿真,仿真结束后可分别采用Excel和Origin软件统计并分析仿真结果中的阻塞率、碎片数目及运行时间等参数。

ElasticO++注重算法重用,可借助C++的模板和继承概念将软件内置的十个算法重新组合,用于求解EON场景下的路由与频谱分配问题,具有较好的灵活性。同时,该软件可以使用多线程和并行运算等技术以加快仿真速度。

2.4 SimEON

SimEON (Simulator for Elastic Optical Networks)[14]是基于C++语言开发的开源网络性能仿真软件,主要用于在EON场景下设计再生器的放置算法和路由算法,也可用于评估网络参数对网络性能的影响。

SimEON的开发遵循软件工程基本原理,因此软件质量较高,可支持并行仿真以加快仿真速度。此外,其采用模块化的设计思想,使各功能模块层次分明,用户可以继承接口修改完善现有功能或添加新功能。同时,该软件还可以与其他网络性能仿真软件结合使用以进行功能扩展。

2.5 其他软件

随着网络的发展,国内也涌现了一批针对于光网络场景的网络性能仿真软件。烽火通信研发出面向于智能波分网络设计与优化的网络规划系统OTN Planner,它支持同步数字体系(Synchronous Digital Hierarchy,SDH)、多业务传送平台(Multi-Service Transport Platform,MSTP)、自动交换光网络(Automatically Switched Optical Network,ASON)及光传送网OTN等光网络技术的仿真。中兴公司推出ZXTOP系列软件,可提供网络设计、设备配置、性能评估、网络优化及故障模拟等功能。

此外,北京邮电大学黄善国等采用Java语言开发“network spider传送网络优化规划系统软件”[19-20],使该软件具备网络拓扑管理、业务预测及网络评估等基本功能;该团队还在OPNET的基础上开发ASON网络性能仿真软件,目前该软件已具备ASON的大部分网络功能[21]。西安电子科技大学徐展琦等开发“基于PCE的多层多域光网络资源优化性能仿真软件”[22],可解决业务联合疏导与选路问题。电子科技大学李兴民和欧雪刚等开发“NetNumen-TOP”光网络规划与优化软件等系统[23-24],主要用于研究WDM网络场景下的路由与波长分配问题。华盛顿州立大学BOWen等开发基于NS的WDM光网络性能仿真软件OWns。浙江工业大学余建军等人开发基于OWns的WDM光网络性能仿真软件RwaOWns,使其支持多种路由与波长分配算法性能的研究[25]。

3 网络性能仿真软件性能比较

为了选择合适的网络性能仿真软件,目前已有许多研究人员对各网络性能仿真软件进行对比[26-30],主要评价指标有:

① 仿真速度:仿真相同网络场景或相同规模网络的模型时,所需仿真时间的长短。

② 计算资源:仿真相同场景或相同规模的网络模型时,所需计算资源的多少。

③ 易用性:软件操作难易程度,具体包括软件的易安装性、用户界面的易用性、对第三方软件(如数据分析工具等)的可支持性、用户文档的完备性、仿真模型设计和修改的复杂性,仿真数据收集和分析的直观性等。

④ 可扩展性:仿真软件功能是否可以扩展以及功能扩展的复杂程度。

根据上述评价指标,表1给出了本文所述各种网络性能仿真软件的主要性能指标对比结果(*越多表明该指标在所对应的属性上表现越好,+越多表示计算资源消耗越多,-表示目前难以确定)。由表格可知,通用型网络性能仿真软件中,NS2与OMNeT++采用双语言架构,便于用户修改网络参数;NS3、OMNeT++与QualNet支持并行仿真和分布式仿真,仿真速度较快;NS3在同类软件中计算资源消耗较少;商用软件OPNET与QualNet功能较强,易用性较好;开源软件NS2、NS3与OMNeT++的可扩展性好,用户可修改或添加功能模块以实现不同的网络功能;NS2、NS3、OMNeT++和OPNET均支持光网络性能仿真。在光网络专用型网络性能仿真软件中,商用软件VPItransportMaker易用性较强,但可扩展性较差;开源软件Net2Plan比ElasticO++和SimEON的易用性好,且三者都具有较优的可扩展性。

表1 网络性能仿真软件的主要属性比较

4 结束语

网络性能仿真软件可以帮助研究人员以较低成本综合评估网络,有效提高网络设计与优化的可信度与时效性。本文调研主流通用型与光网络专用型网络性能仿真软件,阐述各软件的基本功能、主要特点、应用场景和适用范围,并根据多种评价指标进行评估。在实际工作中,研发人员应综合考虑软件需求、应用场景、时间成本和资源消耗等多种因素来选择合适的软件开发平台,完成网络性能仿真或相关软件的再开发。

通过对比分析各网络性能仿真软件的主要特点及性能,结合新技术发展对网络性能仿真软件的迫切需求,在此提出关于网络性能仿真软件的未来发展设想:

① 开发软件应当摒弃专用编程语言,采用C++、Java与Python等通用编程语言,增加易用性;

② 借助并行计算和分布式计算等高效能计算技术,充分考虑算力增强设备的适用性,提高网络性能仿真软件执行速度与效能;采用模块化的设计思想,提高软件的可扩展性和模块的复用性,可实现与OPNET和Matlab等现有主流网络仿真软件的接口;

③ 遵循OSI和TCP/IP的分层设计思想,模拟真实网络场景的协议处理与数据传输过程,具备半实物仿真能力,提高仿真结果的可信度;

④ 加强软件与物理设备的交互,确保所获取数据的实时性和准确性;加强用户支持,提供良好的GUI及全面的用户使用文档;

⑤ 确保仿真软件适合更复杂的场景,涵盖用户驻地网、接入网和核心网,包括诸如软件定义网络SDN、网络虚拟化NV、网络切片NS以及5G/6G移动网络等新型网络体制与架构;

⑥ 结合机器学习和大数据等前沿技术,深度分析网络数据,并提取该数据的特征,进而对网络模型进行优化分析,提高软件内网络模型的真实度。

网络技术的不断演进,推动着网络性能仿真方法的发展,衍生出数量庞大的网络性能仿真软件,对专业人员进行网络研究提供巨大的帮助。如何开发一款仿真速度快、计算资源消耗少、易用性与通用性强、可扩展性和保真度好的网络性能仿真软件,仍然值得深入研究。

猜你喜欢
该软件软件性能
禅宗软件
简单灵活 控制Windows 10更新更方便
提供将近80 Gbps的带宽性能 DisplayPort 2.0正式发布
软件对对碰
IP管家(IP Manager)
Flashfxp Password Decryptor
Al-Se双元置换的基于LGPS的thio-LISICON的制备与性能表征
即时通讯软件WhatsApp
强韧化PBT/PC共混物的制备与性能
RDX/POLY(BAMO-AMMO)基发射药的热分解与燃烧性能