在omnet++上仿真无线传感网络1

在omnet++上进行网络仿真通常会选择一个比较合适的仿真框架来协助。在omnet++这个仿真平台上,有很多著名的仿真框架。这些仿真框架能够快速的使我们建立起自己的仿真模型,验证自己的协议。这些框架有:

INET Framework (Internet and LAN protocols)INETMANET (mobile and ad-hoc networks)Oversim (peer-to-peer networks)Veins - Vehicles in Network SimulationMiXiM (detailed wireless simulations)Castalia (wireless sensor and body area networks)等等。

其中mixim比较适合无线传感网络的仿真。下面是mixim的官方介绍:

mixim是基于omnet++的仿真框架,它为移动或静态无线网络(无线传感网,体域网,ad-hoc网,车载网络等)的仿真而开发的。它提供了详细的无线电波传播的模型,鲍威干扰估计,无线电收发器功耗和无线MAC协议(例如无线个域网)。

mixim的安装可以参照我的文章mixim的安装。安装完成后,在omnet++IDE中的project explorer中可以发现mixim工程,下图画横线处。



在这个mixim工程中,我们可以在IDE中浏览所有mixim框架的源代码和相关文档。我们要实现自己的算法和协议的时候怎么使用mixim框架呢?

当然要新建一个工程,然后引用mixim工程就可以了在我们自己的工程中使用mixim框架了。



在新建工程名字上右键选择属性,打开工程属性对话框,project reference-》mixim选中。



好了,准备工作已经完成了。剩下的就是构建自己的网络(编写ned文件)和算法协议(编写相应简单模块的c++代码)。

我将在下一节构建一个无线传感器网络,介绍相应ned文件的编写。


  • 4
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
目 录 第一章 无线传感网络概述 6 概述 6 1.1 NS-2 6 1.2 OPNET 6 1.3 SensorSim 7 1.4 EmStar 7 1.5 GloMoSim 7 1.6 TOSSIM 7 1.7 PowerTOSSIM 8 第二章 OMNET++简介 9 概述 9 2.1 OMNeT++框架 9 2.1.1 OMNeT++组成 9 2.1.2 OMNeT++结构 10 2.2 OMNeT++的安装 11 2.3 OMNeT++语法 12 2.3.1 NED语言 12 2.3.1.1 NED总概述 12 2.3.1.2 Ned描述的组件 13 2.3.1.3函数 15 2.3.2 简单模块 17 2.3.2.1 OMNET++中离散事件 17 2.3.2.2 包传输模型 17 2.3.2.3定义简单模块 18 2.3.2.4 简单模块中的主要成员函数 20 2.3.3 消息 21 2.3.3.1 cMessage类 21 2.3.3.2 消息定义 21 2.3.3.3 消息的收发 22 2.3.4 模块参数、门及连接的访问 23 2.3.4.1消息参数的访问 23 2.3.4.2门和连接的访问 24 2.3.4.3门的传输状态 26 2.3.3.4连接的状态 26 2.4 仿真过程 27 2.5 配置文件omnetpp.ini 28 2.6 结果分析工具 29 2.6.1 矢量描绘工具Plove 29 2.6.2 标量工具Scalar 29 27、结束语 30 第三章 物理层仿真(信道) 32 3.1 UWB的基础知识 32 3.1.1 UWB信号的应用背景 32 3.1.2 UWB信号的定义 32 3.1.3 UWB的脉冲生成方式(高斯脉冲,非高斯脉冲) 34 3.1.4 UWB的调制方式 34 3.1.5 用功率控制多址接入方法来进行链路的建立控制 36 3.2 用OMNeT++对UWB进行仿真 37 3.2.1 算法仿真的概述 37 3.2.2 算法的具体流程 39 3.2.3 算法的主要代码 41 3.2.4 仿真结果分析 58 3.2.5 应用前景 58 参考文献 59 第四章 MAC层仿真 60 概述 60 4.1 无线传感网络MAC层特性及分类 60 4.1.1 无线信道特性 60 4.1.2 MAC 设计特性分析 61 4.1.3 无线传感网络典型MAC协议的分类 61 4.2 基于随机竞争的MAC协议 62 4.2.1 S-MAC协议[12] 62 4.2.2 T-MAC协议 64 4.2.3 AC-MAC协议 65 4.3 基于时分复用的MAC协议 65 4.3.1 D-MAC协议 65 4.3.2 TRAMA协议 66 4.3.3 AI-LMAC协议 66 4.4 其他类型的MAC协议 67 4.4.1 SMACS/EAR协议 67 4.4.2 基于CDMA技术的MAC协议 67 4.4.3 DCC-MAC 68 4.5 基于OMNeT++的MAC层协议仿真 69 4.5.1 S-MAC协议的仿真 69 4.5.2 S-MAC协议流程图 70 4.5.3 S-MAC协议的分析 71 4.6 小结 86 参考文献 86 第五章 网络仿真 88 概述 88 5.1 无线传感网络路由协议研究 88 5.1.1 无线传感网络协议分类 88 5.1.2无线传感网络中平面路由 90 5.1.3无线传感网络中层次化路由 91 5.1.4 经典算法的OMNET仿真 93 5.2 无线传感网络路由协议研究的发展趋势 104 5.3 无线传感网络层路由协议与OMNET++仿真 104 5.3.1 无线传感网络层路由与OMNET++仿真的基本概念[19] 104 5.3.1.1 传感网络的体系结构 105 5.3.1.1.1 传感节点的物理结构 105 5.3.1.1.2 传感网络的体系结构与网络模型 106 5.3.2 传感网络层路由协议的基本概念 106 5.3.2.1 网络通信模式[28] 106 5.3.2.1.1 单播: 107 5.3.2.1.2 广播: 107 5.3.2.1.3 组播: 108 5.3.2.2传感网络层设计[29] 108 5.3.3 OMNET++仿真软件的基本概念 109 5.4 无线传感网络路由协议介绍 110 5.4.1 泛洪法(Flooding)[32] 111 5.4.2 定向扩散(Directed Diffusion:DD)[33] 112 5.4.3 LEACH( Energy Adaptive Clustering Hierarchy)[34] 113 5.5. OMNET++仿真实例 114 5.5.1 泛洪法 114 5.5.2 gossiping协议 119 5.6 本章总结 121 参考文献 121 第六章 应用层仿真 125 6.1 无线传感网络节点定位 125 6.1.1 节点定位的基本概念 125 6.1.1.1 节点定位的定义 125 6.1.1.2 节点定位的重要性 126 6.1.2 节点定位的研究 126 6.1.2.1 测距方法 126 6.1.2.2 节点定位原理 127 6.1.2.3 节点定位算法分类 128 6.1.2.3.1 锚节点分类 128 6.1.2.3.2 计算方式分类 129 6.1.2.3.3 测距分类 130 6.1.2.3.4 节点移动性分类 130 6.1.2.4 节点定位性能评价[37] 130 6.1.3基于OMNET++的DV—Hop定位算法仿真 132 6.1.3.1 DV—Hop定位算法的基本思想 132 6.1.3.2 DV—Hop定位算法仿真 133 6.2 网络管理 141 6.2.1概叙 141 6.2.1.1 wsn网络管理的定义及范畴 142 6.2.1.2 wsn网络管理系统的分类 143 6.2.1.3 wsn网络管理系统的设计标准 144 6.2.2 wsn网络管理系统 145 6.2.2.1 能量管理系统 145 6.2.2.1.1 SenOs[5] 145 6.2.2.2 拓扑控制系统 146 6.2.2.2.1 TopDisc 算法 146 6.2.2.3 可调试、可配置、可编程系统 148 6.2.2.2.1 sympathy 系统[42] 148 6.2.2.2.2 Agilla系统[7] 149 6.2.3典型网络管理算法的Omnet 模拟 150 6.2.3.1 基于Wsn的一个简单拓扑查找算法算法模拟 150 6.2.4 结论 155 6.3 基于路由层安全协议的OMNeT++仿真 156 6.3.1 基础知识介绍 156 6.3.1.1无线传感网络安全性的重要性和必要性 156 6.3.1.2 无线传感网络的安全目标 156 6.3.1.3无线传感网络中的路由协议概述 157 6.3.1.4无线传感网络路由协议的攻击方法 157 6.3.1.5无线传感网络中经典路由协议安全性分析 160 6.3.1.6 安全路由技术分析 162 6.3.1.6.1 密钥管理技术[20, 23, 24, 25] 162 6.3.1.6.2 安全路由协议 162 6.3.2 在OMNeT++ 中的仿真 163 6.3.3 总结 172 参考文献 172 第七章 实例(无线传感网络移动节点定位仿真) 179 概述 179 7.1 移动定位算法介绍 179 7.1.1 室内移动节点定位算法 179 7.1.1.1 Active Badge系统 180 7.1.1.2 RADAR系统 180 7.1.1.3 Cricket系统 180 7.1.2 室外移动节点定位算法 181 7.1.2.1 基于静态定位的移动定位算法 181 7.1.2.2 纯移动定位算法 182 7.2 移动定位算法的OMNeT++仿真 183 7.2.1 MCL(Monte Carlo Localization)定位算法简介 183 7.2.2 MCL(Monte Carlo Localization)的OMNeT++仿真 185 7.2.2.1 建立网络拓扑 185 7.2.2.2 编码阶段 190 7.3.总结和发展趋势 195 参考文献 195
OMNeT++是一个基于C++的网络仿真框架,用于模拟和评估网络协议和系统。AODV(Ad Hoc On-Demand Distance Vector)是一种常用的自适应无线自组网络路由协议。在OMNeT++中进行AODV仿真可以帮助我们评估AODV协议在不同场景下的性能表现。 首先,我们需要在OMNeT++中创建一个仿真模型,并设计仿真场景。可以使用OMNeT++的内置IDE来创建模型,我们可以根据要仿真网络拓扑和环境来添加节点,设置节点之间的连接,以及定义节点的行为和路由协议。在AODV仿真中,我们需要至少创建一个源节点和一个目的节点,并设置它们的移动模型和传输参数。 其次,我们需要在仿真模型中实现AODV协议的功能。可以使用OMNeT++提供的INET Framework来实现AODV协议。INET Framework是一个通信网络仿真库,它提供了许多常用的网络协议和组件的实现。我们可以选择使用INET Framework中已有的AODV模块,或者根据需要对其进行修改和扩展。 然后,我们需要定义仿真的性能指标并进行仿真执行。可以根据实际需求选择一些重要的性能指标,如数据包传输延迟、数据包传输成功率、网络拓扑变化对路由性能的影响等。在仿真执行过程中,可以使用OMNeT++提供的仿真工具和统计功能来收集和分析这些性能指标。 最后,根据仿真结果进行评估和分析。通过对仿真得到的性能指标进行分析,我们可以评估AODV协议的性能,并根据需要对其进行改进和优化。可以通过修改仿真模型中的参数和策略来验证不同的假设和方案,并比较它们的性能差异。 总之,使用OMNeT++进行AODV仿真可以帮助我们理解AODV协议的工作原理和性能特点,以及对AODV协议进行改进和优化提供参考。同时,OMNeT++提供了丰富的工具和支持,使得仿真实验变得更加便捷和精确,有助于提高网络性能和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值