opnet
文章平均质量分 53
柳木枝
这个作者很懒,什么都没留下…
展开
-
opnet之Aloha
创建Aloha模型的五个步骤:创建发送进程aloha_tx 创建发送节点创建接收进程cct_rx 创建接收节点创建Aloha网络发送进程aloha_tx:HB:/* Global Variable *///subm_pkts是在cct_rx进程中声明的。为了在aloha_tx进程使用这个变量,需要在aloha_tx的HB中用extern声明extern int subm_pkts;原创 2016-12-10 23:19:46 · 2460 阅读 · 3 评论 -
opnet之进程接口
综述 lmz: 一个仿真有输入量也有输出量。 输入量就是仿真属性。 输出量就是统计量。这两个至关重要的量都是在进程模型中定义的。进程接口里面比较重要的设置分为两类:属性统计量属性和统计量都分为全局和局部。 接口本质上是默认的属性。 lmz: 属性的全局是什么意思? 将属性设为局部,任何一个进程也是可以读取这个值。 为了简便?属性 属性常见的原创 2016-12-18 16:32:32 · 1038 阅读 · 0 评论 -
opnet之packet/link/transceiver
packet包格式属性:域名域类型域的大小创建时设置为unsetlink链路属性:单双工链路速率支持的包格式传输模型传播模型错误模型纠错模型外部的声明文件收/发机属性:收发速率支持的包格式 lmz: 链路和收/发机的速率以及支持的包格式是一样的。原创 2016-12-18 18:25:57 · 661 阅读 · 0 评论 -
opnet之包流与链路配合
之前对于包交换网络一直有一个疑问,节点的放置顺序对仿真有影响。包流hub处理机有四对收发机。收发机的放置顺序对包流的索引号有影响。 最好的结果是: 0号输出索引与0号发射机相连 1号输出索引与1号发射机相连 2号输出索引与2号发射机相连 3号输出索引与3号发射机相连 链路hub节点有四条链路。自然有一个疑问: 当用链路链接外围节点与交换节点时,外围节点的收发机原创 2016-12-18 18:54:42 · 1316 阅读 · 0 评论 -
opnet 14.5 资源链接以及安装教程
opnet14.5资源链接以及安装教程安装opnet不难,关键在于没有一份好的教程。1.安装vs2010 安装后注册环境变量编辑Path:C:\Program Files\Microsoft Visual Studio 10.0\VC\bin;C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE;C:\Program Files\M原创 2016-12-03 14:09:31 · 7143 阅读 · 3 评论 -
slot
slot原创 2016-12-24 22:11:32 · 370 阅读 · 1 评论 -
opnet之processor与queue
lmz: 每一个对象都有自己的内存区域。 表面的图形背后都是内存的复制、粘贴以及删除。与其说是processor与queue的区别,还不如说是packet stream与subqueue的区别。processor/stream包流表面上看一根线,本质是一块内存区域。包进入包流,自动的在包流中排队。当用get函数获得一个包的时候,包便从包流的内存区域进入processor的内存区域原创 2016-12-18 21:04:58 · 827 阅读 · 0 评论 -
opnet学习之方法论
opnet 14.5 资源链接以及安装教程以下是我觉得比较好的opnet学习方法。最全的资料就是自带的官方文档 官方文档中比较重要的版块: /Tutorials/Modeler Only Tutorials /Programmers Reference/Discrete Event Simulation/Essential Kernel Procedures /Pro原创 2016-12-08 14:47:36 · 2037 阅读 · 1 评论 -
opnet之自行设计csma
自己设计的: 作者设计的:状态机HB#define IN_STRM 0#define OUT_STRM 0#define CH_BUSY_STAT 0#define STRM_INTRPT (op_intrpt_type() == OPC_INTRPT_STRM)#define STAT_INTRPT (op_intrpt_type() == OPC_INTRPT_STA原创 2016-12-16 17:12:27 · 1545 阅读 · 0 评论 -
opnet之文件
网络模型可执行的所需最少的文件:原创 2017-01-05 10:27:24 · 517 阅读 · 0 评论 -
opnet之queue之自行设计acb_fifo
进程模型SVint server_busy;double service_rate;Objid own_id;TVPacket* pkptr;OpT_Packet_Size pk_len;double pk_svc_time;HB#define QUEUE_EMPTY (op_q_empty ())#define SVC_COMPLETION原创 2016-12-18 15:45:28 · 1033 阅读 · 0 评论 -
Statistic Wire详解
lmz: 从接受机可以引出数据线,这个数据线可以引出哪些数据呢?bus receiver.bit error rate This statistic represents the bit error rate among the bits of the packet which is completing arrival at the receiver channel. This原创 2016-12-29 12:05:48 · 555 阅读 · 0 评论 -
属性和统计量
lmz: 属性是仿真的输入量 统计量是仿真的输出量属性属性本质上属于进程的变量。 变量一般写在SV、TV中。但是这样写的缺点在于不方便修改,每次修改都得深入进程模型。 属性的值一般都在init状态下通过核心函数读取,然后作为进程的变量使用。 这样我们就可以在仿真时不用深入底层就可以改变其值(属性提升)。属性中分:模型属性:只属于这个进程模型可以读取全局属性:所有的进程模型都可原创 2016-12-29 12:22:54 · 569 阅读 · 0 评论 -
仿真序列
一个仿真序列可能包含多个仿真子集set 每个子集又包含多个仿真仿真子集分为两种:蓝一横杆图标:一个仿真蓝二横杆图标:多个仿真原创 2016-12-29 12:56:16 · 1099 阅读 · 0 评论 -
opnet之self-m/m/1
关键词: 包流就是没有经过管道阶段处理的链路而已。 接口值是默认的属性。 统计量是属性值的函数。 包从src中发送出来src只负责生产包然后将其发送,即队列空间就是1。包在包流上传输不需要时间,传播也不需要时间。包在链路上传输需要时间,传播需要时间。包的时间的处理对于opnet来说就是link的管道阶段,本质是包的函数。包从src出来后,如果src后面是包流,原创 2016-12-18 02:15:09 · 599 阅读 · 0 评论 -
opnet之变量的作用范围
TV:局部变量,作用范围只局限在当前状态,一旦跳转到其他状态,其值不保存。注意同函数中的局部变量区分:函数中的局部变量其值不保存,变量也不保存。SV:全局变量,作用范围在整个进程中,状态跳转不改变其值。 HB:超全局变量,所有节点的所有进程都可见。原创 2016-12-18 02:50:44 · 1422 阅读 · 2 评论 -
opnet之自行设计csma/ca/tx
状态转移图HB#define SRC_STRM 0#define ACK_STRM 1#define OUT_STRM 0#define CH_BUSY_STAT 0#define ROB_INIT 0#define DATA_INIT 1#define TIMEOUT_INIT 2#define FREE (op_stat_local_read (CH_BUSY_STAT) == 0.原创 2016-12-23 01:28:06 · 1045 阅读 · 0 评论 -
opnet之自行设计csma/ca/rx
状态转移图HB#define DATA_STRM 0#define OUT_STRM 0#define ACK_INIT 0#define INTRPT_DATA ((op_intrpt_type() == OPC_INTRPT_STRM) && (op_intrpt_strm() == DATA_STRM))#define INTRPT_ACK ((op_intrpt_type() ==原创 2016-12-23 17:08:25 · 1577 阅读 · 0 评论 -
opnet之queue之acb_fifo
acb_fifo, emulates both the infinite buffer and the server in the M/M/1 queue. The name of the underlying process model, acb_fifo, reflects its major characteristics: “a” indicates that it is active原创 2016-12-18 15:40:20 · 1098 阅读 · 0 评论 -
opnet之作者设计csma
作者设计的: 自己设计的:状态机HB/* Input stream from ideal generator module */#define IN_STRM 0/* Output stream to bus transmitter module */#define OUT_STRM 0/* Conditional macros */#define PKT_ARVL (op_i原创 2016-12-17 13:56:47 · 790 阅读 · 0 评论 -
opnet之自行设计csma/ca
自行设计的csma/cainit初始化:初始化TV读入仿真属性和对象属性到SVSRC_RXif(pcs_state == 0)&&(busy == 0) { next_event_data = op_intrpt_schedule_self(op_sim_time()+difs,ROB_INIT); busy == 1; //这个busy应该只属于这个节点所有 rob=-1 }//这原创 2016-12-16 13:37:40 · 1473 阅读 · 0 评论 -
opnet之变量类型
Objid(对象id)和int(用户id)对象id的变量类型是Objid 用户id的变量类型是intObjid是系统分配的对象识别号,全局唯一,整数。 user id是节点模型(对象的一种)的一个属性,由用户设置,不唯一。对象分为两种:抽象对象:复合属性具体对象:模块、收信机、发信机、节点、子网lmz: 尽管对象id是一个整数,但是又不仅仅是一个整数。 可以想象,opnet内部肯原创 2016-12-14 18:45:27 · 2053 阅读 · 0 评论 -
opnet14.5学习总结一
学完包交换一节的总结。1.Packet Format 每一个包域都有一个name,可以想象核心函数中肯定存在相关的包核心函数来进行包域的相关操作,比如为包域设置某一个值,或者得到包域的值等。这个name值可以默认也可以自定义,有时不能默认。2.Link Model 链路支持的包格式链路的管道模型:ecc model 、error model 、propdel model 、txdel mo原创 2016-12-07 02:41:09 · 5096 阅读 · 0 评论 -
opnet之aloha进阶csma
胡思乱想接收机与发射机发射机发射机的输入端是包流,包的到达是随机的。包一旦到达,发射机就将包发送到信道上去。这说明发射机在实时的监控输入的包流,包流的有无对应状态0和1。上升沿的时候,计包从无到有,发射机接收这个上升沿,然后将包发送到链路上去。接收机接收机的输入端是是链路,接收机实时的接收链路中的信息,即包的有无。这种状态信息对应的就是状态的0和1。一旦状态由0变1,表示链路上有包到达,然后接收机接原创 2016-12-13 16:57:58 · 1886 阅读 · 2 评论 -
opnet知识总结
这篇文章将提供了很多opnet的要点,miss掉的部分可以补一下原文链接已不可查。OPNET结构 (OPNET Architecture)(注:此部分可参考OPNET Documentation: Main Menu->Modeling Concepts->Modeling Overview->OPNET Architecture)OPNET为通信网络和分布式系统的性能评估提供了一个全面的开发环转载 2016-12-07 16:15:16 · 3691 阅读 · 0 评论 -
opnet14.5学习总结二
学完M/M/1模型的一点总结。1.module和model process models组成了一个module modules组成了一个node modelThe Node Editor is used to build node models, which consist of modules connected by packet streams and statistic wires.2.原创 2016-12-07 16:27:59 · 1306 阅读 · 0 评论 -
opnet14.5学习总结三
计包模型的总结。1.那些地方可以写c代码 The three primary places to use Proto-C are as follows: • Enter Executive—code that is executed when the module moves into a state • Exit Executive—code that is executed原创 2016-12-07 17:32:47 · 887 阅读 · 0 评论 -
opnet之右键属性
模块和节点上都可以鼠标右键查看属性。 模块上的鼠标右键查看的属性来源于进程层两个方面: 1.Interface->Model Attribute ——>这些值的来源都是自定义Interface->local/global statistics(可做统计量也可以做输入量)或者另写 2.Interface->Process Interface——>没什么价值节点上的鼠标右键查看的属性来源于模块层的原创 2016-12-08 13:17:29 · 540 阅读 · 1 评论 -
opnet之sink进程模型
总结了一下sink模型。1.状态转移图2.声明了五个局部统计量3.声明了五个全局统计量4.SVStathandle bits_rcvd_stathandleStathandle bitssec_rcvd_stathandleStathandle pkts_rcvd_stathandleStathandle pktssec_rcvd_stathandleStathandle ete_原创 2016-12-08 16:09:36 · 1602 阅读 · 0 评论 -
opnet之simple source进程模型
用自己的话解释一遍总结了一下simple source模型。 功能:根据我们设置的属性值发包。1.状态转移图 2.Module Attribute3.Local Statistics4.SV5.TV/* Variables used in the "init" state. */char interarrival_str [128];char size_原创 2016-12-08 22:04:40 · 1698 阅读 · 1 评论 -
opnet之事件列表
常问why仿真核心维持了一个事件列表,这个事件列表是动态收缩的。我们写processor或者queue进程的时候,经常都得设置接口属性begsim intrpt enabled。开始中断会在时刻0.0发生。因为很多进程都会设置开始中断,所以多个开始中断会同时发生。在同一个时刻有多个事件在事件列表的时候,仿真核心有两种处理方式: 自然顺序。尽管事件事件是在一个时刻,但是在事件列表中的排列还是有原创 2016-12-09 13:27:43 · 725 阅读 · 0 评论 -
CSMA/CA之INIT入口
这里比较奇怪的一个地方在于init竟然是非强制状态。 仿真开始的时候,仿真核心维持的事件列表中维持着10个begsim_intrpt(因为有10个节点),且发生时间都为0时刻。 begsim_intrpt被触发,进程从初始的状态的入口开始执行。如何确定这10个相同时刻的事件的执行顺序?尽管发生在同一时刻,但是其在事件列表中仍然是有顺序的。仿真核心按照其在事件列表的顺序一个一个执行。事件执行的原创 2016-12-15 03:57:50 · 586 阅读 · 0 评论 -
CSMA/CA之状态转移图
tags:opnet原创 2016-12-15 04:01:25 · 1242 阅读 · 0 评论 -
opnet之核心函数一
除了知道它说了什么,还要知道它没说的。分布类核心函数op_dist_load (dist_name, dist_arg0, dist_arg1) / Distribution* op_dist_outcome (dist_ptr) / double lmz:我们要产生一个随机分布函数的一个值,需要的参数无非就是分布名,参数。那么有一个问题,为什么要分成两个函数?我们可以设计一个函数,参数和第一原创 2016-12-10 02:43:45 · 1464 阅读 · 0 评论 -
opnet之核心函数二
op_topo_object_count (objmtype)/*Determine the number of mobile nodes*/numnodes = op_topo_object_count(OPC_OBJTYPE_NDMOB);可以获得指定对象类型对象的个数。 比如可以获得移动节点的个数。 配合op_topo_object (objmtype, index)可以为同一种类型的对原创 2016-12-14 18:49:40 · 2179 阅读 · 0 评论 -
802.11协议帧间间隔-SIFS,DIFS,PIFS,EIFS
SIFSShort Interframe Space(SIFS):在802.11系列无线局域网中SIFS是固定值,SIFS是最小的帧间间隔,因此采用SIFS的节点具有访问无线链路的最高优先级。它等于节点从发送状态切换到接收状态并能正确解码所需要的时间,或者从接收状态转为发送状态所需要的时间,在SIFS过期后可能发送的数据包包括ACK、CTS帧,不同标准中规定的SIFS值不同。StandardSI转载 2016-12-14 09:56:24 · 6429 阅读 · 0 评论 -
CSMA/CD vs CSMA/CA
CSMA/CD信道空闲,立即发送数据因为发送的时候可以检测到是否冲突,一旦检测到冲突立即停止多个站点随机选择一个时间再次发送,采用二进制指数回避算法 延迟的slot数为N = 0 ~ (2^k - 1),k有范围 k=1,N = 0~1 k=2,N = 0~3 k=3,N = 0~7 、、、 这样可以最大程度的避免冲突CSMA/CA信道空闲,维持一段时间等原创 2016-12-13 22:24:36 · 1896 阅读 · 0 评论 -
opnet课题
csma:tx_proc: bbb_csma_txrx_proc: bbb_csma_rxcsma_2nodetx_proc: bbbccc_csma_txrx_proc: bbbccc_csma_rx原创 2017-01-18 16:17:50 · 531 阅读 · 0 评论