OPNET入门

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

OPNET仿真设计技术研究生技能训练计划毛玉明2010年9月2IntroductionOpnet仿真开发OPNET仿真设备组件构建仿真网络环境定义统计数据运行仿真仿真结果分析3实现仿真任务常规网络仿真使用OPNET提供的网络设备、信道组件图形编辑,构建期望的网络拓扑结构定义需收集的统计数据运行仿真,结果分析自定义网络仿真(自定义设备、协议、功能等)设计自己的网络设备设计设备协议栈:自定义协议模块+系统提供协议模块自定义协议模块:设计协议的状态机协议状态机:设计状态转移关系和处理函数用常规网络仿真,并加入自行设计的网络设备如果掌握了自定义网络设备的设计,就掌握了灵活运用OPNET的主动权!Introduction4自定义设备的设计Processmodelrip_udp_v3设备模型Network(ConsistsofDevice)Node(ConsistsofProcess)Process(ConsistsofStateMachine)StateProcessing(ConsistsofProto-C)设计设备的协议栈,其中某个(某些)协议进程是自行设计的设计协议的状态转移模型设计状态处理函数Introduction5掌握OPNET的使用技巧任务驱动式的学习和掌握OPNET1、掌握OPNET使用的最基础的入门方法2、从最简单的场景入手,为自己定义一个仿真任务3、设计中学习,有针对性的需要什么就学习什么4、步步为营,循序渐进5、勤查阅OPNET的帮助6、对不清楚的问题,连猜带蒙其关键字(帮助文档)Introduction重要提示:等学习完OPNET的所有(部分)后,才开始动手做开始就面对完整的仿真方案,因为可能遇见的未知因素太多6OPNET仿真设计任务驱动ALOHA系统仿真场景:无线信道上N个站点的简单网络N个发送站点、一个接收站点(便于仿真统计)站点:自定义ALOHA设备链路层实现的功能有数据报文,就直接发送到无线信道上从无线信道上收到报文,统计后销毁仿真内容运行仿真k次,每次变化报文发送总量G:归一化值=发送总量/信道容量0.1,0.2,0.3…,0.91.0,1.5,2.0,2.5,3.0,3.5,4.0每次仿真,得到统计量为接收报文总量S:归一化值=接收总量/信道总量结果期望与已知的ALOHA的G-S曲线吻合TxTxTxTxTxRx0.50.18GSIntroduction7ALOHA设计任务安装Opnet14.5安装VisualStudio(若未安装)安装主系统安装仿真模块安装帮助文件安装License连接Opnet与VisualStudio设计节点及协议栈节点设计节点图标节点属性设置协议栈设计协议栈结构设计指派Process的协议状态机协议属性设置设计协议状态机设计状态转移图定义转移事件定义处理函数设计函数功能设计状态机软件状态内嵌入口函数、出口函数状态转移函数仿真场景设计及仿真运行设计网络拓扑结构设置仿真运行参数仿真运行仿真结果分析仿真数据曲线图曲线图分析Introduction8安装VisualStudio6.0/2005/2008安装Opnet主系统安装Opnet模块库安装Opnet帮助文件系统安装OpnetLicense配置Opnet与VS连接LAB1:安装Opnet14.59安装VisualStudio2003/2005/2008若已安装,跳过此步骤自行解决安装问题安装Opnet(需在断网情况下安装)Opnet主系统modeler_100A_PL1_win32.exeOpnet模块库models_145A_PL1_27Feb08_win.exeOpnetLisenceOPNET.Modeler.11.5.License.MakerFFS.exe安装OPNET10配置OpnetOpnet与VisualStudio的连接若安装的是VisualStudio2003不需要配置,直接可用若安装的是2005或2008,需重新编译op_runsim_dev编译op_runsim_dev参照说明OPNET\14.5.A\sys\etc\readme.c++(编译说明文本)OPNET:opnet安装路径编译方法启动VisualStudio进入VisualStudio的命令提示dos界面工具CommandPrompt将readme文件中的两个LINK命令在dos下运行即可…CommandPrompt…安装OPNET11配置Opnet设置运行环境控制面板性能与维护系统高级中设置环境变量需设置的环境变量PATH=…;%path%INCLUDE=…;%include%LIB=…;%lib%LIBPATH=…;%libpath%…的内容开启dos窗口:“运行cmd”开启VisualStudio“commandprompt”dos窗口分别两个窗口中键入“PATH”两个窗口不同的部分即是…的内容INLCUDE、LIB、LIBPATH环境变量处理类似安装OPNET12LAB1小结安装VisualStudio和Opnet后连接—使Opnet能用VS编译Opnet的代码能用VS调试Opnet代码编译op_runsim_dev使Opnet的运行软件与安装的VS系统匹配设置环境变量为Opnet提供VS文件的路径安装OPNET13设计节点及协议栈节点设计节点图标节点属性设置协议栈设计协议栈结构设计指派Process的协议状态机协议属性设置LAB2:设计节点及协议栈14ALOHA节点协议栈设计ALOHA节点的最简协议栈物理层:OPNET的无线收、发模块链路层:OPNET的Process模块AMac需要定义该模块的状态机上层OPNET的报文发生器模块(Gen)OPNET的报文销毁模块(Sink)说明Gen按设定参数产生报文,递交到AMac上AMac将报文送到WTx模块,在那儿送上无线信道接收情况类似AMac功能似乎除了上下传递报文,没干什么事了验证AlohaG-S性能曲线,证明仿真方法的正确性为Slot-Aloha设计奠定基础节点设计WTxGenSinkAMacWRx15节点协议栈编辑Opnet的节点编辑器Filenew—NodeModel图形编辑协议栈结构Process、ConnectionProcess属性定义Name:定义名称ProcessModel:配置协议上层:simplesource和sink系统提供的报文发生器和销毁器AMac:协议在后面自行设计完成自主设计后,菜单上才会出现节点设计编辑协议栈定义属性ProcessConnectionOpnet提供非常多的协议模型16Process接口定义概念:Opnet采用索引号标识报文的流向,供FSM使用输入索引:0,1,2,…输出索引:0,1,2,…用连接线的Attribute定义索引号索引号的作用状态机的输入输出编程操作packet=op_pk_get(in_index);op_pk_send(out_index,packet);编程的宏定义#defineSTRM_WTX1#defineSTRM_WRX1#defineSTRM_GEN2#defineSTRM_SINK2发送Packet=op_pk_get(STRM_GEN);op_pk_send(STRM_WTX,Packet);接收Packet=op_pk_get(STRM_WRX);op_pk_send(STRM_SINK,Packet);节点设计①②①②建议:同一个方向上的输入输出用相同的索引号#defineSTRM_WCHN1#defineSTRM_UPPR217无线收发信机参数设置重点关注参数DataRate(1024bps)—信道容量BandWidth(10kHz)MinFrequency(30MHz)Power(100W)建议修改后的参数DataRate=1000000bps(1Mbps)若报文长度取1000bits,则信道报文容量=1000报文/秒BandWidth=10000kHz(10MHz)带宽保守点,取信道速率的2~10倍MinFrequency=2400MHz(2.4GHz)2.4G上视距传播几百米Power取1W足够注意:接收模块要和发送模块的参数要设置成一致才能接收节点设计18节点(设备)接口设置InterfaceNodeInterfaceNodeType:选择设备图标有三种类型,任选一种即可Attributes设置除了altitude(高度)外,其它先不管(改成Hidden)节点高度需要大于0,否则无线发送不出去节点设计报文发生器参数设置Process(Gen)Attributes分组到达间隔设置为Promotetohigherlevel提供给多次运行仿真时设定不同值(G值)分组长度注意对信道报文容量的影响开始时间:开始产生报文的时间(默认10秒)19节点设计小结根据节点功能需求,设计节点的协议栈简单的图形编辑操作即可为每个Process配置协议构成需要的协议栈结构Opnet提供了丰富的协议模块配置自定义协议,需完成协议状态机和编程后进行设置Process的接口索引为Process的状态机提供事件接口出/入接口索引号分别定义建议:同一个方向的出入口索引用相同的索引号信道机参数配置注意信道的bit容量和报文容量注意其它参数与信道容量要相匹配报文发生器配置报文速率、报文产生概率分布(注意与信道容量的匹配关系)注意产生报文的开始时间节点配置配置一个图标即可(除非有必要,可配置多个)节点属性配置,通常不需要,Hiden=隐藏不可见设备名称节点的文件名即成为该节点设备的名称节点设计20LAB3:设计协议状态机设计协议状态机设计状态转移图定义转移事件定义处理函数设计函数功能21设计协议状态转移图AMac的ALOHA协议功能描述不管信道情况,想发就发收得到就收AMac协议状态转移图设计状态:描述协议过程中的不同工作阶段AMac只需一个阶段(一个状态)即能实现要求的功能其中Init状态是Opent要求的初始状态定义转移事件定义了两个转移事件产生了报文(PKT_ARVL)收到了报文(PKT_RCVD)定义处理函数PKT_ARVL事件,用pkt_send()函数处理PKT_RCVD事件,用pkt_recv()函数处理状态机设计IdlePKT_ARVL/pkt_send()PKT_RCVD/pkt_recv()事件/处理Init22状态机仿真属性设置设置状态机的开始仿真事件InterfaceProcessInterface:Attributesbegsimintrpt:Enable;允许仿真开始事件,(初始化)其它属性不用考虑,统一设置为Hidden目的:让仿真开始事件触发状态机的初始化操作否则,第一个事件被当做仿真开始事件处理endsim不用Enable,状态机没有设置该事件的转移操作状态机设计23状态机的说明初始化状态机完成初始化后,转移到Init状态协议动作描述当gen产生了报文(PKT_ARVL事件)调用pkt_send()函数处理当WRx收到报文(PKT_RCVD事件)调用pkt_recv()函数处理设计函数功能pkt_send():从Gen取得报文,送给WTx发送,更新发送统计pkt_recv():从WRx取得报文,送给销毁器,更新接收统计IdleInitPKT_RCVD/pkt_recv()PKT_ARVL/pkt_send()状态机设计24状态机与处理函数的关系不同的状态机设计,事件定义、处理函数功能也将随之改变对比AMac两种等效的状态机模型状态机设计IdleInitPKT_RCVD/pkt_recv()PKT_ARVL/pkt_send()IdleInitPKT_EVNT/pkt_proc()模型1模型2提示:1、状态机模型有多种形状的设计,需有针对性的设计处理函数2、模型1图形复杂些,但更清楚的描述出每种事件的处理动作、处理函数单纯3、模型

1 / 58
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功