机会网络、ONE(Opportunistic Network Environment)

he ONE is a simulation environment that is capable of

generating node movement using different movement models
routing messages between nodes with various DTN routing algorithms and sender and receiver types
visualizing both mobility and message passing in real time in its graphical user interface.
ONE can import mobility data from real-world traces or other mobility generators. It can also produce a variety of reports from node movement to message passing and general statistics.

官方网址: http://www.netlab.tkk.fi/tutkimus/dtn/theone/

--什么是机会网络?

机会网络(opportunisticnetwork):

不需要源节点和目标节点之间存在完整链路,

利用节点移动带来的相遇机会实现通信的自组织网络。

 

 

 

图片摘自于[1] 熊永平,孙利民,牛建伟,等.机会网络[J].软件学报.2009:124-137.

--ONE是什么?


基于Java开发的使用与DTN网络环境的路由协议和应用研究分析的模拟器,具有面向对象、离散事件驱动、可以模拟真实网络环境的特点。

-------

首先在download ONE机会网络仿真器已经有了很多种版本(前提已经装好了java jdk),第一步应当是读里面的README.txt文件,在这个文件中介绍了one包中里面包含了哪些东西以及配置参数的一些规则。在这里介绍一篇paper:机会网络模拟器ONE及其扩展研究_王朕。那么我就主要说下几个比较重要的点:

1、Movement models

移动模型提供了节点在仿真过程中移动的方式,在移动模型中包括以下几种比较重要的类:RandomWayPoint、ExternalMovement、MapBasedMovement、ShortPathMapMovement、MapRouteMovement。

当节点使用的是RandomWayPoint是,在仿真区域就给了随机位置。节点以恒定速度直接移动至给定的目的节点,暂停一段时间然后得到一个新的节点。

MapBasedMovement模型约束节点移动到预定义路径。可以定义不同种类型的路径而且可以定义一条对所有节点组有效的路径。这样,例如汽车严禁在室内或者行人道上行驶。

更加复杂的基于地图的运动模型版本(ShortPathMapMovement)利用Dijkstra最短路径算法来找到在地图区域的路线。一旦一个节点到达了目的地,已经等待了片刻,一个新的随机地图节点就被选中了而且节点移动使用最短路径仅仅使用有效的映射节点移动该节点。

对于基于最短路径移动模型,地图资料也可以包含Points Of Interest(POIs)。而不是选择任意地图节点作为下一个目的地,运动模型可以被分配到一个属于一个确定的有可配置概率的POI组的POI。

基于路由的运动模型(MapRouteMovement)可以用来模拟节点按照一定的路线,例如汽车或者有轨电车路线。在整个路线只有停靠点需要定义,而后使用该路线的节点利用最短路径从一个停靠点运动到下一个停靠点而且在停靠点停靠配置的时间。

所有的移动模型都可以决定节点时活跃(可以移动并且能够连接的上)还是不是活跃的。对于所有的节点,除了external movement,应给出多次仿真时间而只有在那些时间内在组内的节点才是活跃的。

2、路由模型和建立信息
路由模型定义在仿真中消息如何被处理。在包中含有6种不同的活跃的路由模型--First Contact, Epidemic, Spray and Wait, Direct delivery, PRoPHET and MaxProp和一个针对于外部路由仿真的passive router。活跃的路由模型是为DTN路由著名的路由算法的实现。细节见路由包的类。

这一部分应当详细地参考具体的代码分析。

3、Reports & Report

report文件中是整个报告的类,需要逐一对各个Java文件进行分析。
reports包中是针对于仿真结果的数据保存,可以根据需要修改需要report的内容。

4、解读default_setting.txt文件
这里我们可以参考一个博客(http://blog.csdn.net/wb7931021/article/details/41077047),详细地注释了该文件。
这个文件主要是配置仿真场景的重要参数,我们可以根据自己的需求来配置相应的参数,其配置参数的规则只需要参照default_setting.txt即可。

5、编译仿真
在配置好自己所需要的参数之后我们就需要对已经配置的文件进行仿真
win+R快捷键输入cmd,便弹出控制台进入one包当下的路径输入
one.bat便运行仿真default_setting.txt文件。

 

 


还可以输入one -b 1 ./default_setting.txt这里就不hui 弹出仿真界面直接报告仿真完成。

 

 


我们可以在reports包中看到

 

 


打开:

 

 

 

其中重要的参数有: 丢包数 传送率 平均延时


上述内容表示已经基本熟悉了解了one,那么下面就需要进入到详细解读和分析具体的包里面的文件了。

————————————————
版权声明:本文为CSDN博主「qq_36627468」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36627468/article/details/79225355

posted @ 2021-12-08 16:13  常给自己加个油  阅读(649)  评论(0编辑  收藏  举报