opnet Tutorial----M/M/1 Queue
M/M/1 Queue 根据包的泊松到达过程是先入先出队列
处理器以特定的服务速率检索包
本节讨论节点编辑器,并创建一个M/M/1队列
*收集并统计数据
*如何在模拟过程中使用过滤器
*在模拟中对数据进行分析
使用节点和项目编辑器构建一个M/M/1队列,收集关于该模型的统计数据,运行并分析结果。
M/M/1队列的性能取决于:
包到达率
包的大小
服务器(处理器)的能力
***********************************
如果包到达率和包的大小的组合效应超过处理器的服务容量,队列大小将无限增长
本文构建一个M/M/1队列模型,并确保队列到达特定的到达速率、包的大小和服务容量的稳定状态
M/M/1队列模型
在建立任何网络时,应清楚要解决的问题
接下来,将建立
M/M/1队列系统
模拟该系统的节点模块的类型
可用于该模型的分布
M/M/1队列通常由一个泊松过程描述,(无限的缓冲队列),当数据包到达缓冲区的头部时,由服务器处理并发送到目的地
队列模型需要一种生成、排队和服务包的方法,所有这些都可以在节点编辑器中提供的现有节点模块中完成。
创建M/M/1队列,需要在节点编辑器中包含一个队列两个处理器。
源模块生成包并且Sink(接收)模块用于处理源生成的数据包
队列是无限大的缓冲器与服务
源模块(处理器模块表示)生成数据包,并根据包/秒指定生成包的生成速率。
这个速度是由分组指定曲线指数分布(即,在队列之间的数据包到达时间)。
队列模块可以用来表示无限的缓冲区,也可以用来表示服务器。(稍后将讨论使用队列表示服务器的原因。)
虽然它不是前面描述的M/M/1队列系统的一部分,但将在节点模型中使用接收器模块来处理服务包。销毁不再需要的数据包,释放模拟过程中要重用的内存。
数据包流用于连接节点编辑器中的每个模块。
1.创建处理器
2.创建队列
3.创建包流
4.创建统计线
5.创建逻辑发送和接受关联
6.创建点对点接收者
7.创建点对点发送者
8.创建总线型接收者
9.创建总线型发送者
10.外部系统模块
无线接收者,发送者和天线
*********************************************
节点编辑器
用于创建节点模型,由数据流和统计线连接的模块组成。
创建M/M/1队列模型的第一步是定义随机生成数据包的源模块,使用处理器模块 处理
节点编辑器中的模块具有类似于项目编辑器中的网络对象的属性。要指定处理器的生成速率、生成分布、平均分组大小和包大小分布,必须在处理器模块中设置这些属性。
Packet Interarrival Time 属性指明了包到达间隔时间
Packet Size 属性指明包的大小和分布
PDF是指概率密度函数,是随机数的分布,在设定包间隔时间以及包的大小后
到达是从0到infinity的指数概率密度分布
队列模块的进程模型属性设置队列的底层进程模型,该模型定义了队列模块的行为。
控制队列模块行为的底层过程模型acb_fifo模拟M / M / 1队列中的无限缓冲区和服务器。
双击队列模块,可查看进程模型
基础过程模型的名称acb_fifo反映了它的主要特征:“a”表示它是活动的(即它充当自己的服务器),“c”表示它可以将多个传入的数据包流集中到它的单个 内部排队资源,“b”表示服务时间是分组中比特数的函数,“fifo”表示服务排序规则。
关于将过程模型分配给节点模块的另一个注意事项是过程模型的属性出现在模块的属性列表中。 因此,您设置的service_rate属性的值也在基础acb_fifo流程模型中设置。
现在,所有模拟M / M / 1队列的模块都已放置在工作区中并正确配置,它们必须通过数据包连接,以便数据包可以在模块间传输。
****************************************