摘要
路由协议执行网络拓扑描述、路由选择和数据包转发的功能,影响整个网络
的性能和存活时间。现有的路由协议需要发送大量数据包维护网络拓扑,以及大
量的存储空间来存储路由条目。由于硬件的限制,无线传感器无论是能量还是处
理能力,存储能力都受到了极大的限制。因此,IETF ROLL 工作组提出了一种针
对低功耗有损网络的 IPV6 路由协议,即 RPL 路由协议。
文中对 RPL 路由协议的拓扑构建过程进行分析,并通过利用 cooja 仿真工具
进行仿真,在仿真中显示出 DODAG 的构建过程,并对进行仿真出来的各种拓扑结
构进行能耗的分析,在仿真过程中直观地显示涓流机制。
关键字:IPV6
RPL 路由协议 仿真 能耗分析
I
目录
1. 绪论...................................................................................................................................................... 2
2. 1.1 设计题目:.................................................................................................................................... 2
1.2 设计任务:............................................................................................................................... 2
1.3 设计要求:............................................................................................................................... 2
1.4 参考资料:............................................................................................................................... 3
图 2.1 新建模拟器................................................................................................................................ 16
图 2.2 加入节点.................................................................................................................................... 16
图 2.3 开始仿真..................................................................................................................................... 17
3.系统仿真分析...................................................................................................................................... 18
3.1 DODAG 图构建分析.................................................................................................................. 18
图 3.1 上行路径构建............................................................................................................................ 18
(2)下行路径的构建:......................................................................................................................... 18
图 3.2 下行路径构建............................................................................................................................ 19
(3)最终 DODAG 图的建立....................................................................................................................... 19
图 3.3 建立 DODAG 图...........................................................................................................................19
3.2 能耗的分析..................................................................................................................................... 19
图 3.4 不同节点分布情况的示意图.................................................................................................... 20
图 3.5 情况 1 的节点能耗示意图......................................................................................................... 20
图 3.6 情况 2 的节点能耗示意图......................................................................................................... 20
3.3 涓流机制................................................................................................................................. 21
图 3.7 涓流机制示意图........................................................................................................................ 21
3.4 其他参数修改:..................................................................................................................... 21
参考文献..................................................................................................................................................23
附录..........................................................................................................................................................24
1
1.绪论
2. 1.1 设计题目:
基于 Cooja 仿真器的 RPL 网络实现
1.2 设计任务:
基于 Contiki 操作系统和 Cooja 仿真器,运用所学的无线传感网知识,选择
一种典型的传感网路由协议进行组网设计和仿真。路由协议可在 AODV、RPL、RIME
等协议中任选一种,也可选择其它典型的传感网路由协议。
1.3 设计要求:
掌握 Contiki 物联网平台开发的基础知识,利用 Cooja 开发环境来实现,完
成如下的工作:
1.查阅相关资料, Cooja 仿真环境、熟悉 RPL 路由协议栈及应用,熟悉 Contiki OS
环境等内容,完成简单无线传感器网络路由建立实验。
2.搭建点到点通信环境,以 5s 进行数据包的间隔互发,统计接收到的数据包数
量;
3.调整不同的数据包间隔周期和不同长度发送内容,统计接收到的数据包数量并
进行分析。
4.记录、分析测试结果,完成课程设计报告书等资料提交。
可选内容:
1.发送或接收失败报警及原因显示;
2.三个及以上终端以不同数据包间隔周期发送,统计接收到的数据包数量并进行
分析。
3.记录终端与协调器间最大吞吐量。
2
1.4 参考资料:
1.Contiki 开发组. Contiki: The Open Source OS for the Internet of
Things. http://www.contiki-os.org/
2. 桂劲松. 《物联网系统设计》. 北京:电子工业出版社. 2013.
3. 谢希仁. 《计算机网络》. 北京:电子工业出版社. 2008.
4. 李晓维. 《无线传感器网络技术》. 北京:北京理工大学出版社. 2007.
3
2.系统建模
2.1 Cooja 仿真器仿真过程
第一步:虚拟机运行之后,启动 InstantContiki3.0 密码 user
第二步:打开一个 Terminal 窗口,键入以下
cd contiki/tools/cooja
ant run
(运行出 BUG 时,按照提示敲入对应命令)
第三步:如图所示,应该是一个蓝色的窗口
4
在左上角的 File->New simulation,
如下图所示
从上到下分别是
Simulation name
Radio medium
{
UDGM:Distance Loss 单位圆盘图:距离损失
UDGM:Constant Loss 单位圆盘图:常量损失
DGRM:有向图通信
No radio traffic 无无线信道
5
}
ote startup delay 节点启动延时
Random seed 随机种子生成
选取 UDGM:Distance Loss,点击 Create
入如图所示窗口
左上 Network 窗口为模拟网络窗口,
中间 Simulation Control 模拟控制窗口,控制模拟环境运行。
最右侧 Note 窗口,笔记窗口。
右中 Mote output 窗口,节点输出窗口。
下 Timeline 窗口,在模拟运行过程所有通信事件。
Network 窗口,在 View 下拉菜单中
6
M
进
一般选取
Mote IDs 节点 ID,Radio traffic 广播信道
10m background grid,10m 背景网格
Mote type,节点类型
Radio environment,广播环境
以上就是 Cooja 仿真工具的简介,介绍了 Cooja 工具的 start 以及对 Cooja 界面的
简要描述,接下来说明 Cooja 工具的使用方法。
使用 Cooja 工具是为了仿真无线传感器网络运行情况,WSN 网络需要无线节点
下面以 RPL 路由协议为例
向仿真环境中添加无线节点,Motes->Add motes->Create new mote type
这里我们选取 Sky mote 作为节点仿真平台
7