网络仿真软件OPNET基础介绍
- 格式:doc
- 大小:54.00 KB
- 文档页数:9
网络仿真软件OPNET介绍与实例网络仿真技术是一种通过建立网络设备和网络链路的统计模型, 并模拟网络流量的传输, 从而获取网络设计或优化所需要的网络性能数据的仿真技术。
由于仿真不是基于数学计算, 而是基于统计模型,因此,统计复用的随机性被精确地再现。
strong网络仿真技术具有以下特点:一, 全新的模拟实验机理使其具有在高度复杂的网络环境下得到高可信度结果的特点。
二, 网络仿真的预测功能是其他任何方法都无法比拟的;三,使用范围广, 既可以用于现有网络的优化和扩容,也可以用于新网络的设计,而且特别适用于中大型网络的设计和优化;四,初期应用成本不高, 而且建好的网络模型可以延续使用, 后期投资还会不断下降。
OPNET介绍OPNET产品主要面向专业人士,帮助客户进行网络结构、设备和应用的设计、建设、分析和管理。
OPNET的产品主要针对三类客户,分成四个系列。
三类客户是指:网络服务提供商;网络设备制造商和一般企业。
四个系列产品核心包括:1.ServiceProviderGuru:面向网络服务提供商的智能化网络管理软件。
是OPNET公司的最新产品。
2.OPNET Modeler:为技术人员(工程师)提供一个网络技术和产品开发平台。
可以帮助他们设计和分析网络、网络设备和通信协议。
3.ITGuru:帮助网络专业人士预测和分析网络和网络应用的性能,诊断问题,查找影响系统性能的瓶颈,提出并验证解决方案。
4.WDM Guru,用于波分复用光纤网络的分析、评测。
OPNET Technology公司的仿真软件OPNET具有下面的突出特点,使其能够满足大型复杂网络的仿真需要:1. 提供三层建模机制,最底层为Process模型,以状态机来描述协议;其次为Node模型,由相应的协议模型构成,反映设备特性;最上层为网络模型。
三层模型和实际的网络、设备、协议层次完全对应,全面反映了网络的相关特性;2. 提供了一个比较齐全的的基本模型库,包括:路由器、交换机、服务器、客户机、ATM设备、DSL设备、ISDN设备等等;3. 采用离散事件驱动的模拟机理(discrete event driven),与时间驱动相比,计算效率得到很大提高。
OPNET网络仿真入门实例OPNET简介OPNET最早出自麻省理工学院的两个博士之手,最终得以商业化。
OPNET被广泛应用于精确模拟领域,例如网络设备制造领域的企业商Cisco以及运营商AT&T,都采用OPNET来做各种各样的网络环境模拟和调试。
在OPNET的各类产品中,Modeler几乎包含其他产品的所有功能,针对不同领域,主要的用途如下:(1)对于企业网的模拟,Modeler 调用自带的已经建好的标准模型组建网络,在某些业务应用达不到事先预想结果或服务质量未及规定要求,比如说网上电子交易过程中交易延迟、数据库服务等业务响应时间慢于正常情况时,Modeler捕捉重要的流量进行分析,从业务、网络、服务器三方面来找出瓶颈。
(2)对于比企业网更复杂的运行商(ISP)网络的模拟,Modeler把焦点放在整个业务层、流量的模拟,使得运营商可以有效地查出业务配置中产生的错误,例如网络中的哪些服务器配置不够妥善,让黑客容易攻击,有哪些业务的参数配置不合适等情形。
(3)针对研发的需要,Modeler提供了一个开放的环境,使用户能够建立新的协议和配备,并且能够将细节定义并模拟出来。
为使读者有一个生动、形象、更明确的理解,我们再进行如下说明解释:Modeler 所能应用的各种领域主要包括三个方面即端到端结构、新的协议开发和优化、网络和业务层配合如何达到最好的性能。
举例来说明一下吧,假设我们要将现有的IPv4的网络升级到IPv6的网络,需要确定采用哪种技术方式对转移效果来说比较好,这就属于端到端结构上的应用;新协议的开发,比如说目前流行的3G无线协议的开发,在系统级的仿真中,可以分析一种新的路由或调度算法如果使路由器或交换机达到QoS;在网络和业务之间如何优化方面,可以分析新引进的业务对整个网络的影响、网络对业务的要求,实际应用中网络和业务是对矛盾,通过Modeler模拟来查找网络和业务之间所能达到的最好的指标。
网络仿真软件OPNET1.1 OPNET仿真软件概述OPNET公司是全球领先的决策支持工具提供商,总部在美国华盛顿特区,主要面向网络领域的专业人士,为网络专业人士提供基于软件方面的预测解决方案。
OPNET公司最早是由麻省理工学院(MIT)信息决策实验室受美国军方委托而成立的。
1987年OPNET公司发布了第1个商业化的网络仿真软件,提供了具有重要意义的网络性能优化工具,使得具有预测性的网络性能管理和仿真成为可能。
1987年以来,OPNET迅速而稳步地发展,作为高科技网络规划、仿真及分析工具,OPNET在通信、国防及计算机网络领域已经被广泛认可和采用。
成千上万的组织使用OPNET软件来优化网络性能、最大限度地提高通信网络和应用的可用性。
至今OPNET已经升级到了11.5以上版本。
它的产品线除了Modeler 外,还包括ITGuru、SP Guru、OPNET Development Kit 和WDM Guru等。
OPNET的产品主要针对网络服务提供商、网络设备制造商和一般企业这3类客户。
OPNET目前在全球有超过5000个客户,在全美设立了4个办事处,分别在加州、德州、北卡罗来纳州及马萨诸塞州,另外,OPNET也在全球设立了4个办事处,分别为法国的巴黎、英国的剑桥、澳大利亚的悉尼以及比利时的根特。
新加坡经纬线科技公司是OPNET产品在亚洲地区的总代理。
OPNET的全球部分电信级运营商客户,如AT&T、NTT DoCoMo、France Telecom等,这部分客户相对于中型企业,具有更复杂的网络结构和协议配置,因此管理起来更复杂。
OPNET利用高网络智能来辅助运营商的网管人员管理网络,同时OPNET 具有很好的开放性和互联性,可以和当前很多流行的网络管理和监控软件一起协同工作,如HP公司的OpnetView、Tivoli公司的NetView、Cisco的Netflow以及Angilent公司的NetMetrix等。
1、网络协议的重定向功能主要是评估网络的技术、协议和性能,从这三方面为出发点使用opnet来评估和研究网络。
无线通信技术能量收集技术传感器技术嵌入式操作系统技术低功耗技术多跳自组织网络的路由协议数据融合和数据管理技术信息安全技术仿真软件提供了真实网络和仿真器交互的方法,它通过不同条件下对网络的模拟来分析设计方案的可行性和健壮性。
随着网络规模的逐渐扩大和网络拓扑结构的日益复杂,开发者在规划和设计网络时,单纯依靠经验、试验和理论计算已显得非常困难。
然而如果采用真实的网络环境进行研究和开发,不仅增加了网络设计成本,而且不稳定的网络环境也不利于数据的统计和分析。
网络仿真技术的出现正好满足了人们的这种需求。
它采用网络仿真软件通过模拟真实环境和调整网络参数来给出大量客观、可靠的数据,反映并预测网络的性能。
网络仿真技术能有效提高网络规划和设计的可靠性和准确性,增强决策的科学性,有效地降低了网络投资风险。
相对于传统的网络规划和设计方法,网络仿真技术能够提供客观、可靠的定量依据,缩短网络建设周期,可以有效地降低投资风险,提高网络建设中决策的科学性。
OPNET Modeler:为技术人员提供一个网络技术和产品开发平台。
可以帮助他们设计和分析网络、网络设备和通信协议。
OPNET的特点OPNET作为一种优秀的网络仿真软件,它支持而向对象的建模方式,并提供图形化的编辑界而,以便于用户使用。
在网络规划与设计以及对现有网络的分析方而都有很好的表现,同时也为通信协议和路由算法的研究提供t与真实网络相似的环境。
OPNET具体有以下主要特点: (1)简单清晰的建模方法。
Modeler建模过程分为3个层次:过程层次、节点层次以及网络层次。
在过程层次模拟单个对象的行为,在节点层次中将其互连成设备,在网络层次中将这些设备互连组成网络。
几个不同的网络场景组成“项目”,用以比较不同的设计方案。
这也是Modeler建模的重要机制,这种机制有利于项目的管理和分工。
OPNET基础入门1.从协议间关系看,节点模块建模完全符合OSI 标准,业务层->TCP 层->IP 层->IP 封装层->ARP 层->MAC层->物理层2.从网络物件层次关系看,提供了三层建模机制,最底层为进程模型,以状态机来描述协议;其次为节点模型,由相应的协议模型构成,反映设备特性;最上层为网络模型。
三层模型和实际的协议、设备、网络完全对应,全面反映了网络的相关特性。
3.在进程层次模拟单个对象(模块)的行为,在节点层次中将其(模块)互连成设备(节点),在网络层次中将这些设备互连组成网络。
4.使用Modeler 仿真可以大体分成6 个步骤:配置网络拓扑(Topology->Rapid Configuration)、配置业务、收集统计量(对象统计量和全局统计量)、运行仿真并查看结果(设置repositories属性Edit->Preferences)、调试模块再次仿真、最后发布结果和拓扑报告。
5.在任何打开OPNET 时候,最高层次永远为一个工程,每个场景代表网络模块,一个工程就是一组仿真环境,一个场景就是其中的一个具体网络仿真环境配置方案(如网络拓扑、协议、流量等)。
6.工程编辑器最开始用来新建一个工程,指定工程名字和第一个场景名字后,网络配置小精灵(StartupWizard)就出来了。
可以选择手动建立网络,或者可以从特殊格式文件导入。
之后设定网络的范围,同时也可以指定度量单位,可以是经纬度、米、公里、英尺、英里等。
接着选择常用的模板家族(Model Family),把它们包含(include)进去后,它们作为构建网络的候选组件。
7.可以设置背景的显示分辨率(Resolution:pixels/degree)和背景网格的解析率(Division)。
View->Background->Set Properties8.在背景中,也可以引进OPNET 自带的地图。
opnetopnet是一个款通信方面的仿真软件。
产品结构OPNET软件包主要由三个模块组成:●ItDecisionGuru 适合最终用户,它只有仿真、分析功能。
●Modeler 在ItDecisionGuru基础上增加了建库功能。
●Modeler/radio 在Modeler上又增加了对移动通信和卫星通信的支持。
ITDecisionGuru、Modeler、Modeler/Radio,这三个模块并非相互独立,而是层层嵌套的,采用同一用户界面。
显著特点●网络仿真能够为网络的规划设计提供可靠的定量依据。
网络仿真技术能够迅速地建立起现有网络的模型,并能够方便地修改模型并进行仿真,这使得网络仿真非常适用于预测网络的性能,回答"WHAT…IF…"这样的问题。
例如:"如果网络扩容,骨干中继链路带宽需要扩大多少?" "如果网络上增设新的业务,对网络性能有什么影响?网络上的哪些链路或网络设备需要升级和改造?" "如果网络拟采用新的技术升级,网络的性能会有多大幅度的改善?这种改善与投入相比是否值得?同时新技术的引进是否会带来负面影响?"●网络仿真能够验证实际方案或比较多个不同的设计方案。
在网络规划设计过程中经常出现多个不同的设计方案,它们往往是各有优缺点,很难作出正确的选择,因此如何进行科学的比较和取舍往往是网络设计者们感到头疼的事。
网络仿真能够通过为不同的设计方案建立模型,进行模拟,获取定量的网络性能预测数据,为方案的验证和比较提供可靠的依据。
这里所指的设计方案可以是网络拓扑结构、路由设计、业务配置等等。
涵盖功能●OPNET能够准确的分析复杂网络的性能和行为,在网络模型中的任意位置都可以插入标准的或用户指定的探头,以采集数据和进行统计。
通过探头得到的仿真输出可以以图形化显示、数字方式观察、或者输出到第三方的软件包去。
此外,一系列仿真运行的结果被自动整理到一个单一的OPNET输出文件中,以便于比较分析(比如相对于网络负载的端对端延迟)。
一、实验目的1.学习熟悉使用OPNET仿真软件,实现对网络场景的仿真。
学习并掌握包交换有线网络的基本知识。
2.数据包建模。
学习并掌握数据包建模的基本方法和技能。
3.有线链路建模。
学习并掌握有线链路建模的基本方法和技能。
4.中心交换节点建模学习并掌握中心交换节点建模的基本方法和技能。
包括hub进程建模和包流的连接。
5.周边节点建模学习并掌握周边节点建模的基本方法和技能,包括: src进程建模; sink进程建模; proc进程建模;包流的连接。
6.网络建模。
学习并掌握包交换有线网络建模的基本方法技能。
7.配置参数、运行和调试仿真学习并掌握收集统计量、配置参数、运行和调试仿真的基本方法和技能。
8.仿真结果分析。
学习并掌握仿真结果分析的基本方法和技能。
二、实验过程专题1:实现包交换1、定义包格式(1)从File 菜单列表中选择Packet Format,单击OK 按钮。
这时打开包格式编辑器。
(2)单击Create New Field 工具按钮,然后将光标移到编辑窗口中,单击鼠标左键,接着单击右键。
这时一个新的包域出现在编辑窗口中。
设置包域的属性,定义好的包域名称和大小。
图1.包格式定义(3)从File 菜单中选择Save,命名包格式。
2、定义链路模型(1)从File 菜单列表中选择Link Model,打开链路模型编辑器。
(2)找到链路类型支持属性框,设置支持的包格式,除了ptdup 外的链路类型对应的Supported属性设置为no,表明该链路只支持点对点双工连接。
(3)在packet formats 属性右边对应的Initial Value 栏中单击鼠标左键。
“Supports All Packet Formats”和“Supports Unformatted Packets”复选框取消,同时将新增加包设置为Support。
图2.链路模型定义3、创建中心节点定义节点模型,中心交换节点:四对发信机和收信机(每对收发信机对应一个周边节点),一个中心交换处理进程(按地址转交包)。
OPNET学习入门指南OPNET是一种网络仿真工具,可用于设计、优化和评估各种类型的网络。
它提供了丰富的功能和工具,可以帮助网络工程师和研究人员模拟和分析网络的性能。
本文将为初学者提供OPNET学习的入门指南,帮助他们快速上手和熟悉该工具。
一、OPNET简介OPNET(Optimized Network Engineering Tools)是一种计算机网络仿真工具,它能够模拟、设计和分析各种类型的网络。
OPNET提供了一个直观、可视化的界面,用户可以使用这个界面来建立网络模型、定义网络设备、配置网络参数、运行仿真实验等。
二、OPNET的安装和配置2.配置硬件要求:OPNET对计算机的配置要求较高,建议使用可靠的硬件设备,并配置合适的内存和硬盘空间。
三、OPNET的基本概念1. 仿真场景(Simulation Scenario):仿真场景是一个虚拟的网络环境,包含了所有的网络设备、连接和参数设置。
2. 模型(Model):模型是构建仿真场景的基本单元,OPNET提供了一系列的模型,用户可以选择合适的模型来搭建网络。
3. 连接(Link):连接是网络中两个设备之间的通信链路,可以根据需要设置不同的网络连接类型。
4. 节点(Node):节点是网络中的设备,如路由器、交换机、主机等。
5. 协议(Protocol):协议是网络中设备之间通信的规则,OPNET提供了一系列通用的网络协议。
6. 仿真时间(Simulation Time):仿真时间是仿真实验的持续时间,在OPNET中可以设置仿真时间来模拟长时间运行的网络。
四、使用OPNET搭建网络模型1.打开OPNET软件,创建新的仿真场景。
2.在仿真场景中添加节点、连接和协议。
3.配置节点和连接的参数,如IP地址、带宽、延迟等。
4.设置仿真时间和其它仿真参数。
5.运行仿真实验,并观察仿真结果。
五、OPNET的调试和优化1.仿真结果分析:OPNET提供了各种图表和工具来帮助分析仿真结果,用户可以通过观察仿真结果来评估网络的性能。
OPNET软件介绍OPNET软件(即Optimized Network Engineering Tool)是一款用于网络建模和仿真的首屈一指的工具。
它提供了全面的功能和工具,用于分析、规划和优化网络性能,以及设计和部署网络,以满足不断增长的网络需求。
首先,OPNET具有强大的网络建模和仿真功能。
它可以帮助用户创建各种类型的网络拓扑结构,包括局域网、广域网、无线网络等。
用户可以使用OPNET内部的图形界面来简化和加快网络建模的过程,并且可以使用它来模拟和评估不同的网络设计方案。
此外,OPNET还提供了丰富的网络模型库,包括各种网络设备、协议和应用程序的模型,使用户能够更容易地构建真实世界中的网络模型。
其次,OPNET具有强大的性能分析和优化功能。
它可以提供详细的性能指标和报告,帮助用户了解网络的吞吐量、延迟、丢包率等性能参数。
用户可以使用这些数据来评估网络的效果,并进行必要的优化和调整。
OPNET还提供了一些优化工具,如流量工程、链路调度、拥塞控制等,帮助用户改善网络性能,并通过模拟和分析来验证这些优化策略的有效性。
此外,OPNET还支持多种优化算法,如遗传算法、模拟退火算法等,用于优化网络参数和决策。
此外,OPNET还具有一些其他功能,如网络安全分析、网络管理和监控等。
它可以帮助用户识别和解决网络中的潜在安全风险,并提供相应的安全措施。
OPNET还可以集成到网络管理系统中,提供实时监控和报警功能,帮助用户及时发现和解决网络故障。
最后,OPNET具有友好的用户界面和易于使用的工具。
它提供了一个直观和交互式的图形界面,使用户能够轻松地进行建模和仿真操作,而不需要编写复杂的脚本或代码。
此外,OPNET还提供了详细的用户手册和培训材料,以帮助用户快速上手和掌握工具的各种功能。
总的来说,OPNET是一个功能强大且易于使用的网络建模和仿真工具。
它具有丰富的功能和工具,用于分析、规划和优化网络性能,以及设计和部署网络。
OPNET软件介绍( 版本1.0 )北京华力创通科技股份有限公司2010年12月1OPNET软件介绍1.1概述OPNET产品分为如下几个系列:不同的产品针对不同的市场和客户。
Modeler主要用于研发,面向研发单位,设备制造商,以及一些大学。
ITGuru主要针对大型企业对其内部网络进行管理和分析。
SPGuru和WDMGuru面向运营商。
ODK是一个软件开发工具包,由许多丰富成熟的软件组件库构成。
ODK主要用于开发定制的应用程序,用于网络建模、仿真、分析与优化。
当前,在计算机网络仿真领域方面的经验是十分有限的。
越来越多的商业公司需要这种类型的咨询,但是由于缺乏经验从而导致了需要大量的海外投入,从海外寻求这种类型的咨询,特别是从一些西方国家。
如果这些经验能够从本地获得,则会节约很多资金。
OPNET 是一个被业界广泛承认而用于该领域的网络仿真工具。
今天的网络设计者尽管经验十分欠缺,但必须为他们的环境选择合适的技术。
OPNET 的解决方案使得网络设计者可以:◆解决关键的问题例如找到关键业务的端到端性能◆确定增加新的业务或用户后给网络造成的影响◆基于定量方法,进行精确的规划和升级分析◆在购买设备之前,对各种不同的候选方案进行快速的“如果-怎样”的分析。
◆针对网络设计优化性价比◆针对主要的设备进行基线预算验证OPNET 公司是全球领先的决策支持工具提供商,总部设在美国华盛顿特区,主要为网络专业人士提供基于软件的预测解决方案。
简单说,是一种通信网络仿真工具,包括有线网络和无线网络。
OPNET仿真模型库为客户提供了一系列的仿真模型。
在这些仿真模型的基础上,实现对通信网络的仿真。
包括网络拓扑结构、路由设计、业务配置等等。
OPNET 仿真模型库与其网络仿真引擎是分离的,这种设计方便修改、升级。
同时,客户还可以根据自己的要求定制模型。
针对有线网现有的OSI、TCP/IP等协议簇模型,OPNET拥有完备的网络协议数据库。
OPNET基础入门1.从协议间关系看,节点模块建模完全符合OSI 标准,业务层->TCP 层->IP 层->IP 封装层->ARP 层->MAC层->物理层2.从网络物件层次关系看,提供了三层建模机制,最底层为进程模型,以状态机来描述协议;其次为节点模型,由相应的协议模型构成,反映设备特性;最上层为网络模型。
三层模型和实际的协议、设备、网络完全对应,全面反映了网络的相关特性。
3.在进程层次模拟单个对象(模块)的行为,在节点层次中将其(模块)互连成设备(节点),在网络层次中将这些设备互连组成网络。
4.使用Modeler 仿真可以大体分成6 个步骤:配置网络拓扑(Topology->Rapid Configuration)、配置业务、收集统计量(对象统计量和全局统计量)、运行仿真并查看结果(设置repositories属性Edit->Preferences)、调试模块再次仿真、最后发布结果和拓扑报告。
5.在任何打开OPNET 时候,最高层次永远为一个工程,每个场景代表网络模块,一个工程就是一组仿真环境,一个场景就是其中的一个具体网络仿真环境配置方案(如网络拓扑、协议、流量等)。
6.工程编辑器最开始用来新建一个工程,指定工程名字和第一个场景名字后,网络配置小精灵(StartupWizard)就出来了。
可以选择手动建立网络,或者可以从特殊格式文件导入。
之后设定网络的范围,同时也可以指定度量单位,可以是经纬度、米、公里、英尺、英里等。
接着选择常用的模板家族(Model Family),把它们包含(include)进去后,它们作为构建网络的候选组件。
7.可以设置背景的显示分辨率(Resolution:pixels/degree)和背景网格的解析率(Division)。
View->Background->Set Properties8.在背景中,也可以引进OPNET 自带的地图。
OPNET Modeler仿真平台1 Modeler简介OPNET Modeler 是当前业界领先的网络技术开发环境,可以以无与伦比的灵活性用于设计和研究通信网络、设备、协议和应用。
Modeler 为开发人员提供了建模、仿真以及分析的集成环境,大大减轻了编程以及数据分析的工作量.Modeler被世界各大公司和组织用来加速研发过程。
Modeler的面向对象的建模方法和图形化的编辑器反映了实际网络和网络组件的结构,因此实际的系统可以直观的映射到模型中。
Modeler支持所有网络类型和技术,可以解决复杂的网络通信问题。
使用Modeler,将可以给用户带来如下利益:提升网络研发的成果:Modeler提供的各种专门的编辑器,以及分析工具和一些最新的模型,使得研发人员可以专注于项目中特定部分的开发,而不用浪费精力在一些没有必要的地方。
改善产品质量:Modeler提供测试实际产品的一个虚拟网络环境,可以有效的避免一些设计中的错误.减小从研发到市场的时间:在完成实际产品之前作充分的验证,采用Modeler来向客户以及合作伙伴展示您的解决方案的价值。
自从MIT在1987年发布了第一个商用的网络仿真器以来,OPNET的Modeler 一直在业界保持技术上的领先地位,特性主要表现在以下方面:高可扩展性和高效率的仿真引擎。
快速仿真引擎能对有线和无线模型进行快速运行仿真,比如,以比标准网络速度快得多的速度仿真一个地形环境下的上千个无线节点的动态应用和路由行为。
●层次化的网络模型。
使用无限嵌套的子网来建立复杂的的网络拓扑结构●面向对象的建模方式。
节点和协议以基类和派生类进行建模.●简单明了的建模方法。
Modeler 建模过程分为三个层次,过程(Process)层次,节点(Node)层次,以及网络(Network)层次。
在过程层次模拟单个对象的行为,在节点层次将其互连成设备,在网络层次将这些设备互连组成网络.几个不同的网络场景组成“项目”,以比较不同的设计。
网络仿真软件OPNET1.1 OPNET仿真软件概述OPNET公司是全球领先的决策支持工具提供商,总部在美国华盛顿特区,主要面向网络领域的专业人士,为网络专业人士提供基于软件方面的预测解决方案。
OPNET公司最早是由麻省理工学院(MIT)信息决策实验室受美国军方委托而成立的。
1987年OPNET公司发布了第1个商业化的网络仿真软件,提供了具有重要意义的网络性能优化工具,使得具有预测性的网络性能管理和仿真成为可能。
1987年以来,OPNET迅速而稳步地发展,作为高科技网络规划、仿真及分析工具,OPNET在通信、国防及计算机网络领域已经被广泛认可和采用。
成千上万的组织使用OPNET软件来优化网络性能、最大限度地提高通信网络和应用的可用性。
至今OPNET已经升级到了11.5以上版本。
它的产品线除了Modeler 外,还包括ITGuru、SP Guru、OPNET Development Kit 和WDM Guru等。
OPNET的产品主要针对网络服务提供商、网络设备制造商和一般企业这3类客户。
OPNET目前在全球有超过5000个客户,在全美设立了4个办事处,分别在加州、德州、北卡罗来纳州及马萨诸塞州,另外,OPNET也在全球设立了4个办事处,分别为法国的巴黎、英国的剑桥、澳大利亚的悉尼以及比利时的根特。
新加坡经纬线科技公司是OPNET产品在亚洲地区的总代理。
OPNET的全球部分电信级运营商客户,如AT&T、NTT DoCoMo、France Telecom等,这部分客户相对于中型企业,具有更复杂的网络结构和协议配置,因此管理起来更复杂。
OPNET利用高网络智能来辅助运营商的网管人员管理网络,同时OPNET 具有很好的开放性和互联性,可以和当前很多流行的网络管理和监控软件一起协同工作,如HP公司的OpnetView、Tivoli公司的NetView、Cisco的Netflow以及Angilent公司的NetMetrix等。
目前OPNET的应用在国内还处于起步阶段,因此OPNET具有很大的研究及应用价值。
1.2 OPNET仿真技术1.2.1三层建模机制网络是复杂的系统,OPNETModeler建模采用层次化和模块化的方式,将复杂的体系分解为不同的层次结构,每层完成一定的功能,一层内又由多个模块组成,每个模块完成更小的任务。
网络域、节点域、进程域是构建OPNET Model 模型的三个层次。
节点域建模的方法是基于节点模块,每个节点模块实现节点行为的某一方面,诸如数据生成、数据存储、数据的处理或选路和数据的传输等。
多个节点模块的集合构成功能完整的节点。
模块间用包流线或统计线相连,其中包流线承载了模块间数据包的传输,统计线可实现对模块待定参数变化的监视,通过modules,paeketstreams和statistic wires的联合使用,用户可对节点的行为进行仿真。
节点模块根据功能可以划分为处理器类、数据流线类和收/发机类三种。
处理器类功能的实现是在进程域中通过Pro-C编程完成的。
数据流类和收/发机类是通过管道阶段模型实现的。
是通过管道阶段模型实现的。
作为三层建模机制的最底层,进程模型是实施各种算法的载体,因此是建模仿真过程中最重要的部分,同时也是最难实现的部分。
进程模型主要用来刻画节点模型里的处理机以及队列模型的行为,可以模拟大多数软件或者硬件系统,包括通信协议、算法、排队策略、共享资源、特殊的业务源等。
进程模型主要由状态和转移线构成。
状态就是进程在仿真过程中所处的众多模式之一,状态之间是互斥和互补的,进程在某一时刻只能处在一个状态中,而所有的状态则构成了进程状态空间的全集。
状态分为两类,强迫状态和非强迫状态,强迫状态是不允许停留的状态,当进程进入强迫状态时,仿真核心将强迫进程立刻转移到下一个状态。
而非强迫状态不同,当进程进入非强迫状态后,将停留在此状态,等待事件、其他进程或仿真核心的触发。
在每个进程模型中都至少有一个初始状态,是进程被访问的第一个状态,既可以是强迫状态,也可以是非强迫状态。
每个状态都有相应的动作与其对应,在Pro-C中这些动作被称为执行代码。
状态的执行代码分为两部分,上面部分称为进入代码,是进程进入该状态时执行的动作;下面部分称为离开代码,是进程离开状态时执行的动作。
非强迫状态被认为是系统真正的状态,因为当进程执行完非强迫状态的进入代码后,进程就处于阻塞,等待新的触发,而强迫状态是为了实际编程和状态控制的需要而提出的一种状态,进程不会停留在该状态。
转移则描述了进程模型从一个状态向另一个状态转移的过程和条件,包含4个部分:源状态、目的状态、转移条件和转移执行代码。
其含义为在源状态时,进程只要完成源状态的离开代码,就立即对转移条件进行判断,当转移条件成立,则执行转移代码,之后转移到目的状态。
转移分为条件转移和无条件转移,分别用虚线和实线表示。
Proto-C语言是进程建模中支持各种算法实现的OPNET独有的语言。
他包括三个方面,在限状态机,OPNET核心函数,标准的C和C++。
Modeler采用阶层性的模拟方式,从协议间关系看,节点模块建模完全符合OSI标准,业务层-TCP层-IP层-IP封装层-ARP层-MAC层-物理层;从网络物件层次关系看,提供了三层建模机制,最底层为进程模型,以状态机来描述协议;其次为节点模型,由相应的协议模型构成,反映设备特性;最上层为网络模型。
三层模型和实际的协议、设备、网络完全对应,全面反映了网络的相关特性。
在过程层次模拟单个对象的行为,在节点层次中将其互连成设备,在网络层次中将这些设备互连组成网络。
几个不同的网络场景组成“项目”,用以比较不同的设计方案。
OPNET中的建模工作在3种不同的层中完成,这3种层次也称为3个域。
Modeler采用面向对象模拟方式,每一类节点开始都采用相同的节点模型,再针对不同的对象,设置特定的参数。
基于事件出发的有限状态机建模(Finite State Machine Modeling),避免以时间出发,变成以事件出发的建模。
采用离散事件驱动(Discrete Event Driven)的模拟机理,将基于包的分析方法和基于统计的数学建模方法结合,与时间驱动相比,计算效率得到了很大提高。
例如在仿真路由协议时,如果要了解封包是否到达,不必要每隔很短时间周期性地查看一次,而是收到封包,事件到达才去看。
每一时刻,FSM 将停留在特定状态,之后收到事件,完成事件并跳转状态。
例如路由协议要做的事有获取周边节点地址,建立拓扑信息,之后路由表稳定下来,在收到封包将其转发到下一个节点,这些事件中断将引起相应的状态转移。
采用混合建模机制,把基于包的分析方法和基于统计的数学建模方法结合起来,既可得到非常细节的模拟结果,也大大提高了仿真效率。
1.2.2 离散事件仿真机制OPNET采用基于离散事件驱动的仿真机制。
事件是指网络状态的变化。
当网络状态发生变化时,模拟机进行仿真,状态不发生变化的时间段,不进行仿真,即被跳过,因而仿真时间是离散的。
每个仿真时间点上可以同时出现多个事件,事件的发生可以有疏密的区别。
仿真中的各个模块之间通过事件中断方式传递事件信息。
每当出现一个事件中断时都会触发一个描述网络系统行为或者系统处理的进程模型的运行,通过离散事件驱动的仿真机制实现了在进程级描述通信的并发性和顺序性,再加上事件发生时刻的任意性,决定了可以仿真计算机和通信网络中的任何情况下的网络状态和行为。
1.2.3 仿真调度机制在OPNET中使用基于事件列表的调度机制,合理安排调度事件,以便执行合理的进程来仿真网络系统的行为。
调度的完成通过仿真软件的仿真核和仿真工具模块以及模型模块来实现,事件列表的调度机制具体描述如下:1.每个OPNET仿真都维持一个单独的全局时间表,其中的每个项目和执行都受到全局仿真时钟的控制,仿真中以时间顺序调度事件列表中的事件,需要先执行的事件位于表的头部。
当一个事件执行后将从事件列表中删除该事件。
2.仿真核作为仿真的核心管理机构,采用高效的办法管理维护事件列表,按顺序通过中断将在队列头的事件交给指定模块,同时接收各个模块送来的中断,并把相应事件插入事件列表中间。
仿真控制权伴随中断不断地在仿真核与模块之间转移。
3.当事件同时发生时,仿真核按照下面两种办法来安排事件在事件列表中的位置:(1)按照事件到达仿真核的时间先后顺序,先到达先处理(first come first serve)。
(2)按照事件的重要程度,为事件设置不同的优先权,优先权高的先处理。
1.3 opnet通信机制1.基于包的通信a)包:OPNET 采用基于包的建模机制(Simulation on packet level)来模拟实际物理网络中包的流动,包括在网络设备间的流动和网络设备内部的处理过程;模拟实际网络协议中的组包和拆包的过程,可以生成、编辑任何标准的或自定义的包格式,利用调试功能;还可以在模拟过程中察看任何特定包的包头(Header)和净荷(Payload)等内容。
包是OPNET 为支持基于信息源(Message-oriented)通信而定义的数据结构。
包被看作是对象,可以动态创建、修改、检查、拷贝、发送、接收和销毁。
每个包含有一些存储信息的区域。
包的类型可以是有格式(formatted)或无格式(unformatted)的。
一个有格式包中每个域以名字标识,作为访问(设置或者读取)包域的依据,而无格式包只为每个域指定索引号。
包域可以存储不同类型的信息,如整型和双精度型用来存储数字数据;包结构类型用来封装另一个包;结构体用来内嵌用户自定义的数据结构。
b)包流是支持包在同一节点模型的不同模块间传输包的物理连接,具体来说,它是源模块的输出端口和目的模块输入端口间的物理连接。
包流通常分为源模块的输出流(Output stream)和目的模块的输入流(Input stream)。
虽然连接到模块的包流(输入流和输出流)的个数没有限制,但是OPNET 不允许群收(Fan-in)和群发(Fan-out)模式,具体来说,每个输入流只能是一个包的唯一接收者,相对应地,每个输出流只能是每个包的唯一发送者。
c)OPNET 为目的模块设置了一个包队列,允许包在没有被移除之前在队列中积压。
包队列是隶属于模块,而不隶属于某个包流,因此连接模块的包流可以有多个,而包队列只有一个。
仿真核心不限制该队列的大小。
队列采用先进先出(FIFO)模式管理包,位于队首的包才能被目的模块通过op_pk_get(stream index)获取并移除。
2.中断初始状态有以下四种:初始状态为强制状态,beginsimulationintermpt被启用。
因为是强制状态,仿真开始就进入下一个状态。