Omnet++排队模型仿真实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一Omnet++排队模型仿真实验
一.实验目的
1.熟悉omnet++软件使用。
2.对排队模型进行更形象的分析与学习。
二.实验工具
Omnet++软件
三.实验步骤
1.用omnet++软件将排队模型以模块形式构建出来。
2.对网络环境进行设置,内部到达时间设置为0,即所有到达的job立即添
加到排队网络中。设置不同队列的服务时间(成1、2、3的指数分布),以及排队模型模拟运行时间。
3.运行仿真程序并记录结果。
4.对实验结果进行分析总结。
四.实验结果及分析
1.排队模型搭建如下图所示:
此部分在source页面下也可以用代码进行构造,编写代码如下:
package demo;
import org.omnetpp.queueing.Queue;
import org.omnetpp.queueing.Source;
network Demo
{
@display("bgb=517,314");
submodules:
source: Source {
@display("p=140,146");
}
queue1: Queue {
@display("p=297,146");
}
queue2: Queue {
@display("p=404,78");
}
queue3: Queue {
@display("p=404,214");
}
connections:
source.out --> queue1.in++;
queue1.out --> queue2.in++;
queue3.out --> queue1.in++;
queue2.out --> queue3.in++;
}
2.进行设置内部到达时间及初始job数:
设置完成后规定不同队列的服务时间(按指数分布),以及模拟运行时间
切换到代码显示配置信息如下:
[General]
network = demo.Demo
cmdenv-status-frequency = 500s
sim-time-limit = 20000s
**.source.numJobs = ${jobs=30,60}
**.source.interArrivalTime = 0
**.serviceTime = exponential(${serviceMean=1..3 step 1}s) 3.运行详细情况如下图所示:
4.新建立.anf文件,对结果进行分析。
我们只选择run ID 为3 的仿真看下结果,选择队列长度选项筛选出如下三个结果:
绘制出图像:
更改横纵坐标,绘制出点图如下:
平滑后如下图:
打开一个.elog 文件,来看下序列图sequence chart。
在General-0.elog 文件中我们可以看到最初的60 个信息被推入一个队列中。如下图所示: