opnet之simple source进程模型

本文详细介绍了opnet中的simple source模型,该模型用于按照预设参数发送数据包。模型流程包括初始化设置自中断、生成状态下的发包操作等。在INIT状态中,主要进行属性读取、自中断设置和统计量注册。generate状态则负责实际的数据包产生和发送。整个过程涉及状态转移、模块属性、本地统计和中断处理等关键环节。
摘要由CSDN通过智能技术生成

用自己的话解释一遍

总结了一下simple source模型。
功能:根据我们设置的属性值发包。
简化的叙述一下流程:

  • 在init状态的入口处设置了一个自中断,出口处获取中断码
  • 准备转移到generate状态,执行转移函数,发包
  • 执行generate入口代码,产生了一个自中断,出口处获取中断码
  • 转移到自身,执行转移函数,发包
  • 下一个循环

1.状态转移图

2.Module Attribute

3.Local Statistics

4.SV

5.TV

/* Variables used in the "init" state.      */
char        interarrival_str [128];
char        size_str [128];
Prg_List*   pk_format_names_lptr;
char*       found_format_str;
Boolean     format_found;
int         i;

/* Variables used in state transitions.     */
int         intrpt_code;

6.HB

/* Include files.                   */
#include    <oms_dist_support.h> //该进程模型使用了外部的头文件,用以产生概率分布

/* Special attribute values.        */
#define     SSC_INFINITE_TIME       -1.0 //定义无穷大时间为-1。很奇怪的定义。

/* Interrupt code values.           */
#define     SSC_START               0 //自定义的中断码,开始为0
#define     SSC_GENERATE            1 //自定义的中断码,发包为1
#define     SSC_STOP                2 //自定义的中断码,停止为2

/* Node configuration constants.    */
#define     SSC_STRM_TO_LOW         0 //发包的流索引,只有一个流索引,默认为0

/* Macro definitions for state transitions. */
#define     START       (intrpt_code == SSC_START) //中断码为SSC_START时,满足转移条件
#define     DISABLED    (intrpt_code == SSC_STOP)  //中断码为SSC_STOP时,满足转移条件
#define     STOP        (intrpt_code == SSC_STOP)    //中断码为SSC_STOP时,满足转移条件
#define PACKET_GENERATE (intrpt_code == SSC_GENERATE)//中断码为SSC_GENERATE时,满足转移条件

/* Function prototypes.             */
static void         ss_packet_generate (void); //FB中的包也需要在这里声明一下?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值