收藏 分销(赏)

opnet针对aloha和CSMA的仿真报告.doc

上传人:人****来 文档编号:10780884 上传时间:2025-06-13 格式:DOC 页数:11 大小:534.51KB 下载积分:8 金币
下载 相关 举报
opnet针对aloha和CSMA的仿真报告.doc_第1页
第1页 / 共11页
opnet针对aloha和CSMA的仿真报告.doc_第2页
第2页 / 共11页


点击查看更多>>
资源描述
OPNET仿真报告 一、实验目的 1.掌握OPNET最基础的入门方法 2.验证不同条件下网络的特性 3.利用OPNET提供的网络设备,信道组件等构造期望的网络拓扑结构,最终达到灵活组合运用OPNET的目的。 二、实验步骤 1> 首先,仿真一个星形网络,因为星形网络是最基本的几种网络结构之一,从最基本的入手,由简到难,可以深入了解OPNET。下面介绍一下我仿真星形网络的步骤。 打开OPNET,新建一个工程,给工程和场景分别命名。 设置向导。设置一个office的Network scale, 再选择Technologies,使Sm_Int_Model_List后面的include变为yes。 设置拓扑结构。选择星形网络,确定此拓扑的中心节点,节点数目,位置等参数。 添加服务器。添加完服务器,用传输线连接。 选择要测量的参数。例如星形网络是测整体的延迟。 运行,仿真,查看结果。 再利用同样的方法建立一个15个节点的网络,同样测量延迟和负载情况。 下图为最后得出的仿真图形 比较仿真结果,得出结论。 结论为: 当节点数增加时延迟变大,负载量变小。 2>然后再来仿真一个Aloha 和CSMA模型。 首先,仿真Aloha模型。 创建Aloha发射机进程模型 创建一个通用发射机节点模型 创建一个通用接收机进程模型 创建一个通用接收机节点模型 构建网络模型 下面分别描述各个模型的仿真步骤。 A创建发射机进程模型: 新建process model,在工作区添加三个状态,给每个状态命名,并改变状态。 3个状态之间用传输线连接,从idle到tx_pkt之间的连接可以通过改变condition 来实现,如图所示 打开Header Block输入代码并保存。 打开State Variable Block改变Type,Name和Comments。 双击init上部打开Enter Executives输入代码并保存,同样对tx_pkt操作,只是程序段不同。 定义global attribute。选择Interfaces > Global Attributes,作如下处理 选择Interfaces > Process Interfaces,把begsim intrpt的初值变为enabled,把所有的状态都改为hidden,也可以添加comment。 7.编译这个进程模型,并以initials_aloha_tx这个名称保存。 B. 创建一个通用发射机节点模型: 1.新建节点模型,在工作区创建2个进程模型和1个总线发射机模型,给每个模型重命名,并用传输线连接。 2.确认src stream被设置为src stream [0],dest stream被置为dest stream [0] 3.打开gen,设置相应的参数。 4.新增1个进程模型和节点模型,并用传输线连接,如图: 5.打开statistic wire的对话框,把上升沿河下降沿触发器改为disabled。 6.查看tx_proc的connectivity。 7.选择Interfaces> Node Interfaces,将mobile和satellite的supported值改为no,除了promoted其他的状态都改为hidden,保存此model并命名initials_cct_tx。 C.创建通用接收机节点模型 1.创建节点模型,在工作区添加1个进程模型和1个总线接收模型,重命名,并用传输线连接. 2.选择Interfaces > Node Interfaces,在节点类型中将mobile和satellite的类型改为no,所有状态改为hidden。 3.打开Header Block,输入程序代码,保存。 4.打开状态变量,定义变量 5.打开功能模块,输入程序代码,保存 6.双击init上部,输入程序段,保存 7.选择 Interfaces > Process Interface,将begsim intrpt和endsim intrpt 的初值改为enabled,所有状态改为hidden。 8编译此进程模型,保存为initials_cct_rx。 D.创建通用接收机节点模型 1.新建一个进程模型,在工作区添加两个状态,分别命名,改变状态,并用传输线连接,如图所示 2. .选择Interfaces> Node Interfaces,将mobile和satellite的supported值改为no,所有状态改为hidden,保存为initials_cct_rx。 E.创建一个新的链路模型 1.创建一个新的链路模型,在Supported link types中将ptsimp和ptdup的类型修改为no。如图 2保存为initials_cct_link,并关闭链路模型编辑器。 3.创建网络模型 4新建一个工程,分别用initials_cct_network和aloha为工程和场景命名,然后按下图设置参数 5.弹出对话框,选择,Configure Palette...,然后Clear 按link models添加initials_cct_link;按node models添加initials_cct_rx和initials_cct_tx。 6.按Save As...键保存文件,命名为initials_cct,按ok关闭Configure Palette对话框。 7.选择Topology > Rapid Configuration,选择Bus,并进行配置,如下图所示 8.点击ok,出现network如图所示 9.点击并拖动接收节点initials_cct_rx到工作区左边,点击initials_cct_link,确定使用这个 10.画一个从总线到接收节点的tap,如图 11将此模型保存为initials_cct_network,执行aloha仿真 12.选择Scenarios > Scenario Components > Import...;Simulation Sequence然后选择cct_network-CSMA,并确定,保存此工程。 13.选择DES > Configure/Run Discrete Event Simulation (Advanced)有12个序列如图 14.右击scenario中选择Edit Attributes,扩展Execution tree node,扩展Advanced tree node,选择Application,点击Application节点。 15.确认网络模型被设置为initials_cct_network-aloha.点击Outputs和Statistics Collection,设置Probe file 为NONE,用op_stat_scalar_write()代替probe file,确认Vector file被置为initials_cct_network-aloha. 16.点击Inputs,然后Global Attributes,确认最大包得书目为1000,点击Object Attributes,点ok保存这些变化,关闭Simulation Sequence对话框,选择File > Save. 17.运行,并确认。结果如图 18仿真完成关闭DES Execution Manager对话框。 19.点击View Results,选择DES Parametric Studies,扩展Scalar Statistics,右击Channel Throughput S,选择Set as Y-Series,结果如下: 右击Channel Traffic G,选择Set as X-Series,点击show,如图; F.Adding Deference 1.选择File > Recent Files > Process Model,选择initials_aloha_tx,选择File > Save As...,把进程模型重命名为initials_csma_tx,然后新建一个状态,命名为wt_free,用传输线将各个状态之间连线,并改变condition,如图所示: 2.在HB中添加程序,并保存,编译其,然后关闭进程编辑器。 3.选择File > Recent Files > Node Model>initials_cct_tx,选择File > Save As...,重命名节点模型为initials_cct_csma_tx,右击statistic wire,选择Edit Attributes,将falling edge trigger设置为enabled,点ok。 4.打开tx_proc 进程模型的Attributes,将process model命名为initials_csma_tx,点ok关闭对话框。 5.在工程编辑器中选择Scenarios > Duplicate Scenario...,重命名为CSMA,右击其中一个发射节点选择Select Similar Nodes。右击选中的节点,选择Edit Attributes (Advanced),选择Apply,重命名为initials_cct_csma_tx,点Yes,保存此工程。 6.选择DES > Configure/Run Discrete Event Simulation,将Seed变为11,运行此工程。点击查看结果。在结果浏览器中选择DES Parametric Studies。扩展Scalar Statistics,右击Channel Throughput S,选择Set as Y-Series;选择Channel Traffic G,选择Set as X-Series,点show。 在Results Browser中,选择Current Project,选择aloha场景,右击Series,选择Add Scenario Name as Parameter。点击show。 G.增加拥塞检测和补偿 1.选择File > Open,选择project,在install_dir目录下选择release>models>std> tutorial_req>modeler,打开ethcoax_net,选择File > Save As…,保存为initials_ethcoax_net。选择DES > Run Discrete Event Simulation。 2.在工程编辑器中选择DES > Results > View Results..., 选择Object Statistics > ethcoax_net > bus_0 [0] > utilization,将As Is改为 average,点击show,在Results Browser,选择bit_thruput,点击show,现实活动窗口如图所示: 选择Show Statistic Data,如图所示: 在utilization中选择average,如图所示; 三、结果分析 理论上,ALOHA系统的信道吞吐量S和信道流量G之间的关系是:S = Ge-2G ,当G=1/2是,S大约是0.18。低流量时冲突很少发生,高流量时信道发生拥塞,大量冲突使得数据包丢失难以被成功接收。由仿真图可以看出在G=0.5左右,S=0.18左右,在误差允许的范围内理论结果与实际结果相符合。 由上图红线知道CSMA协议能到达的最大吞吐量大约是S=0.53在G=1左右发生。 四、实验中遇到的问题及解决办法 第一次在编译CSMA的时候通过,但是在run的时候出错,如图所示 查看错误报告,如图: 仔细观察发现Multiple default transitions from state <state>,错误可能是由于进程模型中某状态之间传输线连接错误,认真检查发现 ,从idle到tx_pkt的condition为改变,重新改变为之后,成功仿真。所以,我们在仿真的时候必须严格按照步骤,仔细读懂每一句话,否则,可能一步错,满盘皆输!
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服