77范文网 - 专业文章范例文档资料分享平台

OPNET基础入门

来源:网络收集 时间:2020-05-13 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

OPNET基础入门

1. 从协议间关系看,节点模块建模完全符合 OSI 标准,业务层->TCP 层->IP 层->IP 封装层->ARP 层->MAC

层->物理层

2. 从网络物件层次关系看,提供了三层建模机制,最底层为进程模型,以状态机来描述协议;其次为节

点模型,由相应的协议模型构成,反映设备特性;最上层为网络模型。三层模型和实际的协议、设备、网络完全对应,全面反映了网络的相关特性。

3. 在进程层次模拟单个对象(模块)的行为,在节点层次中将其(模块)互连成设备(节点),在网络层次

中将这些设备互连组成网络。

4. 使用 Modeler 仿真可以大体分成 6 个步骤:配置网络拓扑(Topology->Rapid Configuration)、配置业务、

收集统计量(对象统计量和全局统计量)、运行仿真并查看结果(设置repositories属性Edit->Preferences)、调试模块再次仿真、最后发布结果和拓扑报告。

5. 在任何打开 OPNET 时候,最高层次永远为一个工程,每个场景代表网络模块,一个工程就是一组仿

真环境,一个场景就是其中的一个具体网络仿真环境配置方案(如网络拓扑、协议、流量等)。 6. 工程编辑器最开始用来新建一个工程,指定工程名字和第一个场景名字后,网络配置小精灵(Startup

Wizard)就出来了。可以选择手动建立网络,或者可以从特殊格式文件导入。之后设定网络的范围,同时也可以指定度量单位,可以是经纬度、米、公里、英尺、英里等。接着选择常用的模板家族(Model Family) ,把它们包含(include)进去后,它们作为构建网络的候选组件。

7. 可以设置背景的显示分辨率(Resolution:pixels/degree)和背景网格的解析率(Division) 。

View->Background->Set Properties

8. 在背景中,也可以引进 OPNET 自带的地图。例如View ->Background->Add Image Map可以导入一些带

有经纬度信息的卫星地图。也可以选择 View -> Background->Add MIF Map 导入海岸线或高速公路信息。 9. 重要概念:

opnet子网:opnet的子网是将网络中的一些元素抽象到一个对象中去。 节点:被看作设备或者资源。包括固定节点、移动节点、卫星节点。

链路:点对点的链路在固定节点间传输(ppp Link)、总线链路通过共享介质在多个节点间传输数据(Bus Link)、无线链路(Wireless Link)。

仿真随机种子(seed): seed 是产生随机数的种子值,反映随机数的状态。目的是测试仿真系统的稳健性,

具体来说,针对不同的 seed 值进行一系列仿真,每次不同 seed 值对应的仿真结果相近,则表明建立的模型有较高的稳健性 (scalability) 。

模型和模板:模型通常是指进程模型、节点模型、网络模型

模块通常是指具有实在的物理含义,例如进程模块就是节点模型里的小方块。 对象:第 一种是抽象对象, 如复合属性。

第二种是具体对象: 例如节点、模块 (module) 、状态机。

10. 链路模型10BaseT:它是Ethernet的另一种型态,它允许工作站利用双绞线连接。 11. 中心节点模型 3C_SSII_1100_3300_4s_ae52_e48_ge3:这是 3Com 公司的交换机。 12. Object Statistics:单个对象统计量

Global Statistics:全局统计量 13. Cisco 2514:Cisco(思科) 路由器 14. Server Load:服务器负载统计量

Delay(SEC):全局时延统计量

15. OPNET 采用离散事件驱动的模拟机理(Discrete event driven)(其中“事件”是指网络状

态的变化)也就是说,只有网络状态发生变化时,模拟机才工作,否则被跳过。

16. OPNET 推进是仿真时间,和逝去时间(Elapsed time)有着本质的区别。逝去时间是仿真程

序运行的时间,是真实的时间,反映了仿真程序执行的速度,由机器的硬件速度决定。仿真时间是系统仿真的时间进度,反映当前仿真执行的进度。 17.

包发送:(1)调用 op_pk_send(),当包沿着源模块输出流到达目的模块输入流时立即向目的模块触

发流中断,整个过程时延由包流的“delay”属性指定。包到达的时刻为传输时延加“delay”的值。

(2)如果要模拟包在包流传输过程的额外延时,以此来仿真模块有限的处理速度,这时可

以调用 op_pk_send_delayed()函数,包将滞后指定的时间达到目的模块。

(3)op_pk_send_forced()产生的事件不需要在仿真核心的事件列表中排队,而是插队到事

件列表的队首立刻执行, 并且包不需要经历传输延时,直接到达目的模块。

(4)用 op_pk_send_quiet()函数,采取一种静默的方式发送包,目的模块隔一定的时间间

隔主动地去从队列中取出一个包。

中断模式:为了支持以上各种包传输模式, 还必须设置相应的包流“中断模式” (intrpt method)

属性,它有三种可选值,分别是 scheduled、forced 和 quiet。选择 scheduled 对应采用 op_pk_send()和 op_pk_send_delayed()传输包,这时可以设置包流的“delay”属性;选择forced对应采用op_pk_send_forced()传输包;选择quiet对应采用op_pk_send_quiet()传输包。

包传递:包 传 递 也 有 四 种 方 式 ,分 别 是 op_pk_deliver() 、op_pk_deliver_delayed()、 op_pk_deliver_forced()和 op_pk_deliver_quiet();与包发送不同的是包传递需要指定目的模 块的 Objid。

18. 什么是ICI:用户自定义的与事件关联的数据列表。将ICI绑定在将来某个事件中,当将来发生时取出ICI

信息。

19. ICI包含数据的属性域:属性名、类型、默认值。其中属性名是读取ICI数据的依据。

20. 强制状态和非强制状态:强制状态(绿色)程序不终止,非强制状态(红色)程序中止等待下一个事

件激活。

21. 每个状态具有两个执行模块,入口模块在转入状态后被执行,出口模块在转出状态前被执行。

22.中断:中断时处于事件表表头的事件,当中断被递交到对应的模块,控制权由仿真核心转移到对应的模

块。如果模块是处理器或队列,中断被递交到对应模块中的进程。 B E G S I M 中断在仿真时间0 . 0 触发,先于其他所有中断类型。

23. 强制状态和非强制状态:强制状态执行入口代码,然后直接执行出口代码

非强制状态执行入口代码,然后预约自中断,设置中断点,然后阻塞释放

控制权。

24. 属性提升允许用户在更高的模型层次设置属性的值。 25 .创建进程建模过程:

(1)、设计进程模块:右击转移线,Edit Attributes->condition

(2)、定义转移条件、变量、申明统计量:点击HB定义宏来代替复杂的转移条件 点击SV定义状态变量

申明本地统计量Interfaces->Local Statistics, (3)、创建状态执行代码

(4)、编辑进程接口:编辑进程接口界面来设置进程属性的值:Interfaces->Process Interfaces 26.什么叫句柄?

句柄是一个标识符,是拿来标识对象或者项目的,它就像人的名字一样。 27.常用的核心函数:

(1)事件类的核心函数:在仿真过程中,事件类核心函数为进程模型提供有关事件的信息。 op_ev_current()返回当前事件的句柄

op_ev_next()在事件列表中获得该事件的下一个事件

op_ev_seek_time()可以获得与输入的仿真时间最接近的那个事件的句柄 op_ev_next_local()返回下一个本地事件 op_ev_count()得到事件的个数

op_ev_count_local()得到本地事件的个数 op_ev_cancel()将无效的将来事件删除

op_ev_pending()判断一个事件是否还在事件列表中等待调度 op_ev_type()可返回一个事件的类型

事件的两个常用属性分别是事件类型和调度时间。

op_ev_code()可以得到这些事件的事件号(opnet为每个事件分配一个事件号) op_ev_strm()决定包到达的流索引号

op_ev_stat()决定事件作用的状态线索引号,注意它只返回输入状态线索引号,而得不到状 态线触发条件等信息

op_ev_time()可以返回事件调用的仿真时间 op_ev_src_id()获取产生这些事件的源模块 ID 号 op_ev_dst_id()获取事件的目的模块 ID 号

有三种事件是没有源模块的,因为它们是仿真核心自动生成的,它们是:仿真开始事件 bigsim,仿 真结束事件endsim 和 regular 事件。 op_ev_valid()来判断事件是否有效

(2)中断类核心函数:

op_intrpt_self()自中断 op_intrpt_strm()流中断 op_intrpt_stat()状态中断 op_intrpt_begsim()仿真开始中断

op_intrpt_endsim()仿真结束中断

(3)包类核心函数:包是 OPNET 中主要的数据模型,基于包的通信是 OPNET 仿真的主要通信机制 包的操作有三类:创建和销毁包;设置和得到包中的内容;析取包的相关信息和属性。 op_pk_create()创建一个无格式的包,括号中的参数指示包的大小 op_pk_create_fmt()创建一个有格式的包

op_pk_destroy()来销毁包 op_pk_type()来判断包的类型

op_pk_copy()函数可以复制一个包头、内容和原始包一摸一样新包

仿真核心按照递增的顺序“0、1、2?.”为包分配惟一的 ID 号,因此可以达到区分的目的 op_pk_id()获取包的ID号

(4)进程类核心函数:进程类核心函数为进程或者队列模块(本书中进程模块与队列模块统称为进程模块,

不加以区分)提供创建和管理多个进程的支持。

op_pro_create()创建子进程 op_pro_self()得到自己的进程句柄 op_pro_parent()可以得到父进程的句柄 op_pro_root()得到根进程的句柄

OPNET 为每个进程分配了惟一的识别号,称为 process id,可以调用 op_pro_id()得到它 op_pk_get()得到包流上的包

op_stat_local_read()读出状态线上的参数

op_pro_mod_objid()获得其隶属的进程模块的 Objid

op_pro_destroy()将它销毁,这将释放存储进程状态变量的内存空间

(5)拓扑类核心函数:核心函数决定网络和节点的拓扑结构 op_topo_parent()返 回 父 对 象 的 Objid op_topo_child_count()返回指定类型子对象的个数 op_topo_child()返 回 子对 象 的 Objid

子对象 (Child) 是包含在父对象 (Parent)中更底层的对象。例如,模块是节点的子对象,而节

点又是子网(Subnet)的 子对象;子队列和信道为复合属性的子对象,而复合属性又是队列、发信机和发信机的子对象。

28.在Edit Attributes中将属性提升,则在Interfaces中可以看到该属性。在Interfaces将属性hidden,则在

上一层模型的Edit Attributes看不到该属性。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库OPNET基础入门在线全文阅读。

OPNET基础入门.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1052475.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: