网络仿真系统的制作方法

文档序号:7769929阅读:1642来源:国知局
网络仿真系统的制作方法
【专利摘要】本发明公开了一种基于分布式架构的网络仿真系统,包括管理服务器和多个节点服务器,本系统先将交换机及终端等仿真资源分布式解耦到各仿真节点服务器上,然后在用户需要调度使用仿真资源时又将仿真资源进行分布式耦合,使得本网络仿真系统具有相当程度的扩展性和可靠性。
【专利说明】网络仿真系统【技术领域】
[0001]本发明涉及网络【技术领域】,特别是涉及一种网络仿真系统。
【背景技术】
[0002]随着网络技术的发展,研究人员不断开发出新的网络协议、算法和应用,以适应日渐增长的网络通信需求。然而由于网络的不可控、易变和不可预测等特性的存在,给新的网络方案的验证、分析和比较带来了极大的困难。在这种情况下网络模拟仿真技术作为一种新的网络设计和规划技术,为网络研究提供了方便高效的验证和分析工具。
[0003]网络模拟仿真技术是指通过构造可控、可重现网络状态的虚拟网络环境进行网络行为仿真,从而获得网络设计和优化所需要的网络特性参数,并观察特定网络行为的一种技术,同时也是一种降低网络建设、运维及测试风险的可靠技术,其中虚拟网络环境中包括网络设备、链路和协议模型等。
[0004]模拟仿真技术的发展也衍生了众多的模拟仿真工具,这些模拟仿真工具为网络仿真、分析及研究带来了新的血液,但这些模拟仿真工具几乎都局限于单台计算机上,如下列出的主流的单机模拟仿真工具。
[0005]DOPNET
[0006]OPNET是一款优秀的、大型的、商业化的计算机网络仿真和建模工具,它结合了基于包的分析方法和基于统计的数学建模方法,采用层次性的模拟方式,支持面向对象的建模方式,并提供图形化的编辑界面以便用户操作,它强大的功能和全面性几乎可以模拟任何网络设备如支持各种网络技术,它为客户进行网络结构、设备和应用的设计、建设、分析和管理提供全方位的支持。此款工具可运行在Unix、Solaris及Windows等操作系统上。
[0007]2) QualNet
[0008]QualNet是一种应用于无线、有线、混合网络的快速而精确的动态开发、仿真系统。其具备高速并行运算能力,具备良好的可扩展性,并且完全忠实于实际网络的体系结构及协议,为真实网络提供一个较好的评估平台。此款工具可运行在Linux、Windows及Mac等操作系统上。
[0009]3) NS2
[0010]NS2是一个由UC Berkeley开发的用于仿真各种IP网络的、优秀的仿真软件,它是一个可扩展的、易配置的、可编程的离散事件驱动的模拟器,网络模型库包括拓扑模型、流量模拟和协议模型等,为了兼顾效率和运行速度,NS2采用`了 C++和OTcl (Object TCL)两种面向对象的程序语言。NS2定义了相关的模块用于记录模拟的结果,提供Xgraph用以图形化的方式显示模拟结果,Nam (Network Animator)用来动态展示模拟场景的动画效果。此款工具主要运行于Unix、Linux及Windows等操作系统上。
[0011 ] 上述几种模拟仿真工具主要是面向研究人员,很少面向运维人员,因此为了方便研究人员使用,一般都局限于单台计算机上。虽然单机模拟仿真工具提供了丰富的高级语言接口和仿真模型库,使得其具有较好的方便性和灵活性,但依然存在不足之处:[0012]I)规模方面:当前0PNET、QualNet及NS2等模拟仿真工具几乎都运行于单台计算机上,因此仿真性能完全受限于此台计算机,在进行大规模仿真实验的情况下,仿真分析必将大打折扣,同样由于单台计算机的限制,使得当前的仿真系统在扩展性及可靠性方面受到极大的限制;
[0013]2)用户入门方面=OPNET及QualNet都是商业软件,单单产品本身的价格就十分昂贵,此外相关模块还需额外购买,另外这两款产品主要面向专业人士,普通用户入门很难,虽然提供图形用户界面,但终究无法让普通用户快速上手;而吧2虽然是开源免费的工具,但却未为用户提供必要的图形化界面,导致用户需要了解各命令行的含义及使用方法,因此导致用户同样面临较难上手的问题;
[0014]3)与外界网络的通信方面=OPNET及QualNet不能与外界真实网络直接通信,必须通过半实物接口进行仿真数据包与真实数据包的转换,完成虚拟IP和真实IP的映射,而NS2则不能同外部真实网络通信。
[0015]网络仿真任务,例如数据网的仿真任务,在计算量方面的需求越来越大,单台计算机的计算能力已经无法满足仿真要求。

【发明内容】

[0016]基于上述情况,本发明提出了一种网络仿真系统,以适用于普通用户入门、并能搭建大规模网络环境。
[0017]一种网络仿真系统,
[0018]包括管理服务器和多个节点服务器;
[0019]所述管理服务器分别与每个节点服务器相连;
[0020]所述管理服务器,用于根据待仿真网络的拓扑图,调用多个所述节点服务器的资源,创建所述拓扑图中节点的资源模型,利用创建的资源模型搭建待仿真网络。
[0021]本发明的网络仿真系统,基于分布式网络架构,能够充分利用多台计算机资源并具有处理效果好、网络重构能力强、易使用等优点。
【专利附图】

【附图说明】
[0022]图1为本发明网络仿真系统的结构示意图;
[0023]图2为本发明网络仿真系统的架构图;
[0024]图3为数据网仿真系统硬件架构图;
[0025]图4为数据网仿真系统流程示意图;
[0026]图5为数据网仿真系统中管理服务器的资源部署流程示意图;
[0027]图6为在数据网仿真系统上加载仿真实验的流程示意图;
[0028]图7为数据网仿真系统中流量模型的构造流程示意图;
[0029]图8为数据网仿真系统中故障模型的构造流程示意图;
[0030]图9为数据网仿真系统中路由分析流程示意图;
[0031]图10为数据网仿真系统中配置分析流程示意图;
[0032]图11采用本发明网络仿真系统进行故障分析的流程示意图;
[0033]图12采用本发明网络仿真系统进行配置分析的流程示意图;[0034]图13采用本发明网络仿真系统进行路由分析的流程示意图.【具体实施方式】
[0035]本发明的总体目标是以分布式网络架构为核心,设计一个能充分利用网络中现有计算资源并将多台计算机资源耦合起来,架设一套适用于普通用户入门、并能搭建大规模实验环境的分布式网络仿真系统,此外本系统还能为用户提供各种行为分析,帮助用户对现有网络进行升级、改造、测试等。
[0036]本发明的网络仿真系统,如图1所示,包括管理服务器和多个节点服务器。所述管理服务器分别与每个节点服务器相连,用于根据待仿真网络的拓扑图,调用多个所述节点服务器的资源,创建所述拓扑图中节点的资源模型,利用创建的资源模型搭建待仿真网络。
[0037]作为一个优选的实施例,本系统还可以包括第一交换机和第二交换机。所述第一交换机一端连接所述管理服务器,一端分别连接每个所述节点服务器,所述管理服务器通过所述第一交换机访问每个所述节点服务器;所述第二交换机一端连接所述管理服务器,一端连接用户的计算机及管理员的计算机,用户的计算机及管理员的计算机通过所述第二交换机访问所述管理服务器。
[0038]作为一个优选的实施例,所述管理服务器,还用于将仿真结果发送至用户的计算机及管理员的计算机。
[0039]作为一个优选的实施例,所述管理服务器,还用于对所搭建的待仿真网络中的资源模型进行相应配置,根据用户设定的参数,设置所搭建待仿真网络的流量模型和故障模型。
[0040]作为一个优选的实施例,所述管理服务器,还用于对所述流量模型和故障模型进行分析。
[0041]作为一个优选的实施例,所述分析包括路由分析、流量分析、配置合规性分析和故障分析。
[0042]作为一个优选的实施例,所述管理服务器还用于调用自身资源,创建所述拓扑图中节点的模型,利用创建的模型搭建待仿真网络。
[0043]作为一个优选的实施例,所述管理服务器对所述终端进行的配置为FTP、HTTP和POP3协议配置,对所述路由器和交换机进行的配置为BGP、0SPF和NTP协议配置,对所述链路进行的配置为带宽配置。
[0044]作为一个优选的实施例,所述故障模型包括路由故障模型、接口故障模型和整体链路故障模型。
[0045]作为一个优选的实施例,所述管理服务器还用于根据每个所述节点服务器的资源状况,进行资源调用的部署。
[0046]本发明的总体架构可分为分布式硬件资源池、资源管理层、仿真及分析层、仿真功能展现层等,如图2所示。
[0047]其中分布式硬件资源池是整个系统的底层架构,所有的硬件资源通过分布式方式耦合成供用户使用的仿真资源,可提供路由、交换机、终端及链路等仿真资源;资源管理层主要资源信息管理和资源调度管理模块,是对硬件资源池耦合出的路由器、交换机、终端等资源模型的分布式调度、部署和管理;仿真及分析层主要仿真模块和分析模块,仿真模块又包含网络故障仿真、业务流量仿真和网络协议仿真,分析模块又包含网络故障分析、业务流量分析、网络路由分析和配置合规性分析,用户可创建各种行为事件模型,并输入事件驱动,仿真系统能对各种行为事件所带来的影响效果进行统计分析,为用户输出直观的分析报表等;仿真功能展现层包括系统界面和系统管理部分,以图形化的方式向用户展示实验拓扑和仿真行为等。
[0048]分布式硬件资源池和资源调度管理是仿真系统的关键部分,没有底层的资源及良好的资源调度分配就谈不上仿真和分析。例如,利用分布式搭建如图3的数据网仿真系统,系统中的服务器主要分为管理服务器和节点仿真服务器两种角色。其中管理服务器是整个仿真系统的资源调度器和资源耦合器,资源调度器提供和用户的接口,接收并管理用户提交的仿真任务,实现用户资源查询和任务查询信息的反馈;资源耦合器计算用户所需的资源并为用户分配资源;用户在管理服务器上进行GUI拓扑搭建、仿真分析、故障分析、配置检查及流量发生等,用户使用的路由、交换机及终端等仿真资源也是通过管理服务器分布式调度节点仿真服务器上的资源来供用户使用;仿真节点服务器则仅负责为数据网仿真系统提供路由、交换机及终端等仿真资源,因此仿真节点服务器根本不需要部署较多的服务,只需要提供各仿真资源服务即可,并且管理员可仅通过增加仿真节点服务器来扩展整个数据网系统。
[0049]为了实现管理服务器能真实调度分配节点仿真服务器上的仿真资源,必须使用可靠的TCP通信方式,为此管理服务器及每台节点仿真服务器都需要拥有独立的IP地址,管理服务器必须能解析出每台节点仿真服务器,否则无法使用此台服务器的仿真资源,多台节点仿真服务器之间相互独立,如果其中一台节点仿真服务器下线,并不能影响用户对于数据网仿真系统的使用,因此使得本系统具有相当的可靠性。
[0050]由于管理服务器是数据网仿真系统对用户的唯一接口,因此在用户看来,所有的仿真资源都是由管理服务器提供的,并不知道节点仿真服务器的存在,此外系统也为用户隐藏了资源的调度分配,用户根本不需要了解整个系统的实现,仅需专注于自己的仿真实验及实验分析即可,这很大程度了降低了用户的使用门槛,并且不用去了解底层指令的相关含义等。
[0051]最后本系统在用户仿真实验的实现上使用了以工程项目为单位的方式,用户在创建的每个仿真实验都是一个工程项目,工程项目里包含了仿真实验拓扑、实验日志、实验数据、实验结果及节点镜像等信息;系统在仿真分析及故障分析的实现上使用了事件模型的方式,如流量模型及故障模型等。
[0052]系统的整体处理流程如图4所示,其中具体处理步骤如下:
[0053]I)用户登陆数据网仿真系统的管理服务器,并使用系统提供的CTI界面,根据需求情况创建新的工程项目或打开已有工程项目;
[0054]2)用户创建新的工程项目:
[0055]a)为即将创建的资源模型配置合适的镜像,主要包括网络设备镜像及操作系统镜像;
[0056]b)用户仅通过拖放相应的资源模型图标和通过链接相应的接口来创建所需的实验拓扑,拓扑中以路由器、交换机、终端及链路等资源模型组成;
[0057]c)系统在用户创建资源模型前先获取当前网络环境下已有的资源模型数量,在资源模型数量小于等于100时,将在管理服务器及三台仿真节点服务器以1:3:3:3的分配方式实例化资源模型,当资源模型数量大于100时,则将考虑多台物理服务器的CPU、内存、带宽及各自的权重分配,如果其中某台服务器的CPU或内存超过95%,则将其排除在外,否则通过一定的算法自动将此资源模型实例化在适合的物理服务器上,其部署流程如图5所示;
[0058]3)用户打开已有工程项目:
[0059]a)完整导入此前保存的实验拓扑,包括路由器、交换机、终端及链路等资源模型;
[0060]b)用户可根据新的需求添加、删除新的资源模型;
[0061]4)无论是新建工程项目还是打开已有工程项目,在加载实验前用户都需向仿真系统申请资源,系统通过管理服务器中的资源耦合器计算当前系统可用资源,并同用户申请的资源进行匹配,如果可用资源不满足用户申请的资源,则给出相应的提示信息,并阻止用户近一步操作,如果可用资源满足用户申请的资源,则分布式自动调度分配资源并启动实验,其流程如图6所示;
[0062]5)等待实验启动完毕,用户需对已实例化的资源模型进行需求配置:
[0063]a)若用户之前是创建新的工程项目,则根据用户自身需求对路由器和交换机进行BGP、OSPF及NTP等协议的配置,而对于终端则主要进行FTP、HTTP及POP3等协议配置,而对于链路则进行带宽配置等;
[0064]b)若用户是打开已有的工程项目,用户可导入先前已有的配置,然后根据当前需求进行更改;
[0065]6)配置完成后,用户根据需求进行流量模型和故障模型的构造,或者在已有的模型上进行需求修改:
[0066]a)用户根据管理服务器GUI界面上流量模型提供的参数类别进行流量参数的填写,包括源IP、目标IP、发包速率、协议类型等,系统将用户提供的参数传递给后台的Libnet,并等待用户激活,其流量模型构造参见图7 ;
[0067]b)同样用户根据自身需求进行故障模型的构造,系统提供路由故障、接口故障、整体链路故障等模型,其参见图8:
[0068]1.在路由故障模型中,主要包括单台或多台路由器的宕机及随机重启等故障;
[0069]i1.在接口故障模型中,主要包括路由器接口的震荡(周期性的UP和Down),接口的Down等故障;
[0070]ii1.在链路故障中,主要包括链路过载、链路失效等故障;
[0071]7)流量模型及故障模型构造或修改完毕,用户可依照上述步骤继续构造多个流量模型和故障模型,只有用户激活模型后,模型才生效,仿真行为开始后,用户可选择相应的分析模块进行相应的分析,如路由分析、流量分析、配置合规性分析及故障分析:
[0072]a)路由分析主要分析网络中是否存在环路,以及判断时间段前后路由表的变化,系统将自动对用户感兴趣的链路或路由表进行分析,并给出分析结果,参见流程图9 ;
[0073]b)流量分析主要分析网络中可能存在的恶意流量以及未来流量趋势,用户可根据系统中存在的恶意流量来查看系统可能存在的瓶颈;
[0074]c)配置合规性分析主要是对网络设备的配置进行分析以期发现可能的误配置,参见流程图10 ;[0075]d)故障分析主要分析网络中可能存在的脆弱节点以及极易出现故障的仿真实验节点等;
[0076]8)分析结束后,用户可根据获得的分析结果进行实验拓扑、网络协议、流量模型参数及故障模型参数等更改或调整,以期进一步满足用户需求;
[0077]9)若已达到用户目标,用户可选择是否保存项目,保存项目将能很好的将其中的实验拓扑、实验数据和实验结果等都保存下来,以便下次实验用或方便下次对实验结果的再次查看;如果不保存项目,在用户退出实验后,系统将销毁所有数据;
[0078]10)项目保存结束,用户可退出实验,系统回收被用户占用的仿真资源,以供其他实验使用。
[0079]本系统相对目前其他工具的优点和效果如下:
[0080]分布式耦合网络架构:本发明是有别于单机版模拟仿真工具的分布式数据网仿真系统,本发明能提供快速实时的仿真计算以及高可靠的仿真质量,此外利用此架构,使得本发明具有较强的扩展及较好的容错能力,用户可轻松搭建一个庞大的复杂网络。
[0081]用户入门门槛低:本系统面向所有用户,其中包括运维人员、测试人员及研究人员等,用户并不需要了解系统的底层实现细节,亦不需要手动编写拓扑脚本,只需熟悉网络相关知识即可。系统并不存在任何复杂的操作,仅通过简单的图标拖拽及简单的向导形式即可帮助用户快速部署搭建满足需求的实验拓扑及进行相应的实验分析。
[0082]外部通信接口:本系统向用户提供外部通信接口,用户可以通过此接口同外部网络通信,以便将真实网络中的流量导入逻辑网络中。系统提供多种外部通信接口,如桥接真实物理网卡、桥接虚拟网卡及UDP端口方式等。
[0083]多语言支持及扩充能力:本系统使用当下较流行的Python语言编写,利用PyQt编写其界面,能较好的支持C、C++等语言扩展,并且用户还可根据自身需求进行相应的开发,如添加新的模块及功能等以扩充系统。
[0084]下面介绍利用本系统进行仿真分析的几个实施例
[0085]网络故障分析
[0086]对于任何一个企业来说,网络故障的发生都是不可避免的,一次网络故障都可能带来或大或小的影响,如何能有效的评估并了解故障的发生是运维人员关注的问题,如图11所示,通过本系统可方便的定位网络中存在的故障,并对当前的故障进行分级,以便快速知道运维人员快速修复故障最大程度降低企业损失。
[0087]配置合规性检查
[0088]配置合规性检查可有利于在进行网络升级或改造的过程中提前发现错误配置,以便降低对网络的影响。由于企业网络中存在较多的网络设备,而对网络设备配置进行人工检查是一件浩大的工程,如图12所示,利用本系统可将自动化实现配置合规性检查分析。
[0089]路由分析
[0090]如图13所示,路由分析可快速检查网络中可能存在的恶意攻击或者路由环路等。
[0091]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【权利要求】
1.一种网络仿真系统,其特征在于, 包括管理服务器和多个节点服务器; 所述管理服务器分别与每个节点服务器相连; 所述管理服务器,用于根据待仿真网络的拓扑图,调用多个所述节点服务器的资源,创建所述拓扑图中节点的资源模型,利用创建的资源模型搭建待仿真网络。
2.根据权利要求1所述的网络仿真系统,其特征在于, 还包括第一交换机和第二交换机; 所述第一交换机一端连接所述管理服务器,一端分别连接每个所述节点服务器,所述管理服务器通过所述第一交换机访问每个所述节点服务器; 所述第二交换机一端连接所述管理服务器,一端连接用户的计算机及管理员的计算机,用户的计算机及管理员的计算机通过所述第二交换机访问所述管理服务器。
3.根据权利要求2所述的网络仿真系统,其特征在于, 所述管理服务器,还用于将仿真结果发送至用户的计算机及管理员的计算机。
4.根据权利要求1或2或3所述的网络仿真系统,其特征在于, 所述管理服务器,还用于对所搭建的待仿真网络中的资源模型进行相应配置,根据用户设定的参数,设置所搭建待仿真网络的流量模型和故障模型。
5.根据权利要求4所述的网络仿真系统,其特征在于, 所述管理服务器,还用于对所述流量模型和故障模型进行分析。
6.根据权利要求5所述的网络仿真系统,其特征在于, 所述分析包括路由分析、流量分析、配置合规性分析和故障分析。
7.根据权利要求1或2或3所述的网络仿真系统,其特征在于, 所述管理服务器还用于调用自身资源,创建所述拓扑图中节点的模型,利用创建的模型搭建待仿真网络。
8.根据权利要求4所述的网络仿真系统,其特征在于, 所述管理服务器创建的资源模型包括终端、路由器、交换机和链路, 所述管理服务器对所述终端进行的配置为FTP、HTTP和POP3协议配置,对所述路由器和交换机进行的配置为BGP、OSPF和NTP协议配置,对所述链路进行的配置为带宽配置。
9.根据权利要求5所述的网络仿真系统,其特征在于, 所述故障模型包括路由故障模型、接口故障模型和整体链路故障模型。
10.根据权利要求1或2或3所述的网络仿真系统,其特征在于, 所述管理服务器还用于根据每个所述节点服务器的资源状况,进行资源调用的部署。
【文档编号】H04L12/26GK103634290SQ201310410687
【公开日】2014年3月12日 申请日期:2013年9月10日 优先权日:2013年9月10日
【发明者】汪莹, 何杰, 廖子熙, 郭苑灵, 刘友好, 赖群, 张正峰, 刘新展, 蒋康明 申请人:广东电网公司电力调度控制中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1