CN102355677A - 面向移动节点数据传输的无线传感器网络仿真器 - Google Patents
面向移动节点数据传输的无线传感器网络仿真器 Download PDFInfo
- Publication number
- CN102355677A CN102355677A CN2011102088225A CN201110208822A CN102355677A CN 102355677 A CN102355677 A CN 102355677A CN 2011102088225 A CN2011102088225 A CN 2011102088225A CN 201110208822 A CN201110208822 A CN 201110208822A CN 102355677 A CN102355677 A CN 102355677A
- Authority
- CN
- China
- Prior art keywords
- node
- message
- mobile node
- mobile
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
现有的网络仿真软件在进行移动无线传感器节点数据传输仿真时,缺乏对移动节点针对性的支持,在仿真设计中,移动节点的移动路线描述困难,仿真代码编写量大,结果输出繁琐。为此,本发明提出一个支持移动节点的面向移动节点数据传输的无线传感器网络仿真器,仿真器在初始化阶段读入脚本进行初始化;系统向事件队列加入初始化事件推动整个仿真;调度器读取事件队列头部的事件后,交由相关事件处理程序处理;在调度器运行期间,仿真器根据节点模型和能量消耗模型产生的时间对节点发送和接收报文、移动节点的移动行为和节点的能量消耗情况进行仿真,并根据所处理事件类型,将相应的事件信息格式化后输出到跟踪文件。仿真结束后,输出网络的运行情况。
Description
技术领域
本发明申请涉及用于无线传感器网络中数据传输的网络仿真软件,尤其涉及一种支持移动节点进行数据传输(收集)的无线传感器网络仿真器。本发明有助于对采用移动节点进行数据收集的无线传感器网络进行比较准确地仿真。满足了目前研究人员在研究无线传感器网络时,需要对移动节点数据采集方案/策略的各种性能指标进行仿真与测试的需求,解决了现有网络仿真软件对移动节点的移动性支持不足以及研究人员仿真开发工作量大的问题,从而使得研究人员能客观和直观地评价不同采集策略,属于网络通信技术领域。
背景技术
传统的无线传感器网络所使用的路由算法常常是基于多跳数据传输的思想,即将大量传感器节点组织成为节点数目庞大的Ad Hoc网络。由于无线传感器网络普遍存在能量消耗过快,网络的生命期过短等问题,而网络整体生命期对于无线传感器网络来说是至关重要的一项工作指标。因此,有部分研究人员提出利用移动节点收集分布在传感器网络上的数据,避免多跳路由以延长网络整体生命期的策略。另一方面,在很多低密度节点分布的传感器网络中,由于网络的连通性和节点的断续分布特征,特别是部分节点所在区域难以接近时(例如核电站周围环境质量的监控、生物学中野生动物行踪记录或空气质量监控等等),使用移动节点进行数据收集的方法甚至成为唯一的数据传输方案,有其特有的优势。由此可见,利用移动节点收集数据的无线传感器网络有着广泛的应用前景,越来越多的移动数据采集策略被提出。如何客观全面地评价不同的采集策略,也是研究工作中不可回避的问题。
对任何一种网络算法协议或方案策略的评价,常常通过两种方法进行:1)是把算法应用到实际网络中,从网络的实际运行情况检验算法的正确性和有效性,由于无线传感器网络自身的特点,将正在研究过程中的算法直接应用到实际的网络环境进行测试的话,代价往往会过高而导致不现实;2)通过仿真测试来验证算法协议或方案策略的正确性,就成了一种低成本,高效率的评估和验证算法正确性的手段了。
在研究过程中发现,现有而且比较流行的网络仿真软件有开源的NS-2、OMNet++和商用的OPNET等等。它们都能够较好地对有线网络、无线网络甚至是有线和无线的混合网络进行仿真。
NS-2主要用于ISO/OSI模型的仿真,若要使其适用于无线传感器网络的仿真,就必须要给NS-2加入感知模型,传感器模型,电池模型,轻量级协议,混合仿真支持和场景生成工具等其他支撑构件,所以要利用NS-2对使用移动节点收集策略的无线传感器网络进行仿真的话,需要对NS-2做出大量的修改,大大增加了仿真工作的难度和工作量。
OMNet++也是主要面向OSI模型,并采用自定义的配置语言“NED”进行配置定义。OMNet++的代码量相对于NS-2和OPNET来说要少很多,这个是它的优点,用户可发展的空间大。同时这也是它的缺点,如果要对使用移动节点收集策略的无线传感器网络进行仿真的话,由于很多支撑构件都没有封装在内,如无线传感器节点能量消耗情况监控等,需要用户手动编写。
而OPNET方面,由于OPNET是一款商用的软件,虽然协议的代码都完全公开,但是许多核心代码仍处于保密状态,所以要为OPNET增加适用于无线传感器网络仿真的支撑构件,就显得比较困难了,就更别说添加全面支持移动节点的支撑构件了。而且OPNET本身似乎更关注与网络QoS的性能评价。
与此同时,NS-2和OPNET由于其庞大的网络构件库以及复杂的配置规则,也增加了学习和将它们利用于无线传感器网络仿真的难度。例如在设置移动节点的移动路径时,NS-2需要在用户在编写脚本的阶段便给出在某个具体时刻的移动目标位置,对于某些目标位置随着网络运行而需要动态规划的采集策略或者用户无法在脚本编写阶段给出在某个确切时刻移动节点的移动目标的时候,利用现有仿真器编写配置规则将尤为困难,甚至比在实际网路中进行测试的代价更高。
所以,如果要对无线传感器网络,尤其是使用移动节点进行数据采集的无线传感器网络进行仿真的话,利用现有的一些比较流行的网络仿真软件,在实际操作和研究过程中将会带来一定的困难。
发明内容
技术问题:由于目前常用的网络仿真器均没有对无线传感器网络,尤其是使用移动节点进行数据采集的无线传感器网络具有较好的支持,直接利用现有的网络仿真软件对使用移动节点进行数据采集的无线传感器网络进行仿真的话,开发代价往往会过高。例如常用的网络仿真器NS-2和OPNET缺少感知模型,传感器模型,电池与能量模型等等支持无线传感器网络仿真的支撑构件,特别在配置移动节点的移动路径等配置过程尤为复杂。因此,基于离散事件驱动模型以及增加相关的支撑构件,使得用户能够利用本发明较方便地对使用移动节点进行数据采集的无线传感器网络进行仿真,这正式本发明的目的所在。
技术方案:为实现上述发明目的,本发明采取的技术方案是:一种适用于移动节点进行数据传输的无线传感器网络仿真器。仿真器的核心是事件调度器以及事件队列,事件队列为一以事件发生时刻为优先级的优先队列。对于某些呈现连续变化的系统状态,例如移动节点的位置变化,传感器节点由于不间断的数据采集而造成的缓存变化等等,在系统内部设置一个系统定时器,利用定时器定时更新的策略,在一定误差的情况下,化为离散型的状态。其更新频率越高,其精度就越接近连续变化时的状态,但是系统的开销就越大,反之亦然。
具体来说,本面向移动节点数据传输的无线传感器网络仿真器,包括:
a、仿真脚本
仿真脚本由两部分共同描述:1)网络拓扑脚本:描述了无线传感器节点的位置分布以及无线传感器网络所覆盖面积;2)仿真场景脚本:描述了仿真的环境参数;
b、仿真器引擎
仿真器引擎包括:
调度器与事件队列:事件队列按照事件发生的时刻将事件排序,调度器取出事件队列头部的事件后,交给相应的事件处理程序;在处理程序中,更新系统状态并且向事件队列中加入未来事件;
采集策略:用户定义的采集策略,该策略影响节点模型中节点的行为;
节点模型:模拟实际无线传感器节点的能量消耗、数据采集、移动和无线通信行为;
c、结果的记录和输出
记录来自节点模型的本仿真器的仿真结果,并展示结果。
所述仿真器引擎的节点模型内部封装了能量消耗模型,在仿真器的运行过程中,在节点发送和接收报文时对节点的能量消耗进行仿真。
节点模型的结果先经跟踪信息格式化,再输出结果;
跟踪信息格式化:将不同事件的跟踪信息统一进行格式化,按照统一的格式输出到跟踪信息文件中;
结果输出:将跟踪信息文件内容以图形化和动画化的形式展示。
所述仿真场景脚本中,环境参数包括无线网络的带宽、节点的存储容量大小、传感器节点数据收集速度、最大的无线传输距离、移动节点的移动速度和的移动路径;
移动路径以节点编号的排列表示移动节点对传感器节点进行访问的先后顺序。
在移动性方面,本发明从以下两个方面提供比较全面的支持:
系统以脚本为接口,用户可通过脚本设置移动节点的移动速度、移动路径等移动节点的属性。特别在移动路径设置方面,相比起NS-2等现有仿真器需要用户在脚本编写阶段需要用户给出移动节点在某个确切时刻的移动目标位置,直接给出移动节点的移动路径将更方便用户规划移动节点的行为。
由于移动节点跟据脚本配置的移动路径为静态路径,为了增加灵活性,移动节点可利用仿真器提供的接口,对移动节点的移动路径,移动速率以及移动的目标位置进行动态的设置,改变移动节点移动方向与移动速度。
以下为仿真器的整体工作流程:
流程1-1:仿真器在初始化阶段读入脚本进行初始化,脚本由两部分共同描述:1)网络拓扑脚本:描述了节点的位置分布以及布置有传感器场所的长和宽2)仿真场景脚本:描述了仿真的环境参数,包括无线网络的带宽、节点的存储容量、采集速度、最大的传输半径以及移动节点的移动速度,移动节点的移动路径。
流程1-2:初始化后,系统向事件队列加入初始化事件推动整个仿真的进行。
流程1-3:调度器读取时间队列头部事件后,交由相关的事件处理程序处理该事件。在事件处理程序中,更新系统的状态以及向事件队列加入未来事件。以此循环,直到模拟时钟到达用户所设定的停止时刻为止。
流程1-4:在调度器运行期间,根据所处理的事件的类型,将相应的事件信息格式化成统一格式后,输出到跟踪文件里。
流程1-5:调度器仿真结束后,辅助软件可读取跟踪文件,将网络的运行情况以图形化的方式输出。
由于不同的采集策略会根据不同的网络环境对移动节点的行为做出决策,而且移动节点也无法实时保存网络中所有传感器节点的信息,所以仿真器为了能够适应不同的采集策略,在移动节点内部设计一个数据结构:虚拟节点列表,该列表存储传感器节点的信息并可以根据用户的需要进行删减后记录用户感兴趣的信息。移动节点在与传感器节点交互后,传感器节点会将其内部的信息发送给移动节点,移动节点将信息保存在列表中,以作为决策的依据。同时在某些情况下,采集策略可能需要动态地改变移动节点的移动路径,仿真器同时也提供路径管理的接口,方便采集策略在需要时更改移动路径或移动的目标。
传感器节点在一般情况下进入休眠状态,休眠状态下,传感器节点只进行数据采集,同时忽略能量的消耗。而移动节点在移动的过程中,如果进入某个节点的传输范围,移动节点根据采集策略以及内部虚拟节点列表的信息,决定是否与传感器节点发生交互以及决定与哪个传感器节点发生交互。如果需要发生数据交互,其交互过程如下:
步骤2-1:移动节点检查到进入某个节点的传输范围,根据采集策略以及内部的虚拟节点列表可决定发生交互的目标传感器节点以及是否马上进行数据传输。
步骤2-2:需要进行数据传输时,移动节点向目标节点发送REQ请求数据报文,将目标节点唤醒,其他节点保持则保持休眠状态。
步骤2-3:收到REQ请求数据报文的传感器节点将其采集的数据封装成DATA数据报文,向移动节点回送,并且在报文内部捎带自身的信息。
步骤2-4:移动节点收到DATA数据报文后,将负载中的数据存入自身的缓存,并利用报文内部捎带的信息更新虚拟节点列表。
步骤2-5:在在某些时刻,移动节点只需要某些传感器节点内部的信息而不需要与其发生数据交互,此时,移动节点向目标节点发送REQUPDATE请求更新报文,将目标节点唤醒。
步骤2-6:收到REQUPDATE请求更新报文的节点,将自身的信息单独组成一个UPDATE更新报文,向移动节点回送。移动节点收到UPDATE更新报文后,根据报文内部的信息更新其虚拟节点列表。
上述几个步骤从宏观上说明了移动节点与传感器节点的交互过程。而节点内部报文的处理流程如下:
步骤3-1:当节点有报文需要发送时,报文先在路由层,根据采集策略,填入报文的目的地址与源地址。
步骤3-2:填入适当的目的地址与源地址后,报文在MAC层中压进接口队列ifq_中,等待发送。MAC层主要负责无线信道的侦听以及冲突的避免。
步骤3-3:报文压入接口队列后,节点先侦听无线信道,如果无线信道在侦听时刻空闲,再等待一段时间后再次侦听信道,若信道仍为空闲便将接口队列头部的报文发送,否则将暂缓报文的发送,以避免冲突的发生,等待一定的时间后再次尝试将报文发送。
步骤3-:4:报文经过MAC层后发往传输模型(PropagationModel),传输模型根据无线信道的衰减模型以及传输的距离,往报文写入一个合适的功率值,使得报文在传输的过程中,经过无线信道的衰减后仍能被目标节点正确识别和接受。
步骤3-5:网络接口NetIF将报文发送到无线信道上。
步骤3-6:无线信道将报文复制给链接到该无线信道上的所有节点,并且根据信道的衰减模型以及发送节点与接受节点的距离对报文的功率进行适当的衰减。
步骤3-7:节点从无线信道上接收报文后,首先发送到传输模型(PropagationModel),断接收报文的功率值是否大于能够正确识别的功率阈值,如果小于则表示报文由于功率不足而不能被正确接收,否则,将报文交给网络接口NetIF。
步骤3-8:网络接口对接收报文进行地址检验,如果报文的目的地址不是广播地址而且与本节点的地址不同,表示该报文不是发往本节点的,将其丢弃,否则交由MAC层做进一步处理。
步骤3-9:MAC层根据接收报文的类型和采集策略,决定节点下一步的行为。
上述内容中的有关技术术语定义:
虚拟节点列表:这个术语是和实际的传感器节点相对而言的。所谓的虚拟,是指该列表中每一个列表项所存储的信息均与每一个实际的节点相对应,但由于这个列表只存在于移动节点之中,故称为虚拟节点列表。
无线信道衰减模型:一般来说无线信号在传输过程中会被传输媒介和障碍物吸收,造成信号强度的衰减,该模型是表示无线信号在传输过程中的衰减程度,本发明中使用的信道衰减模型为无线信号在自由空间传播的衰减模型。
有益效果:1)本发明对无线传感器网络,尤其是使用移动节点进行数据采集的无线传感器网络有较好的支持,能够对传感器节点和移动节点的行为,例如传感器节点的采集、溢出、死亡以及移动节点的移动、与传感器节点的通讯等等进行比较准确的仿真。2)本发明配置简单,用户只需要按照既定格式编写简单的脚本配置网络环境和给出移动节点的运行路径后,仿真器读取脚本文件后便能按照用户所设置的网络环境运行,无需因为改变网络环境而重新编译仿真器,与NS-2和OPNET等网络仿真器相比,配置更加简洁和方便。3)本发明将网络的运行过程以一定的格式记录成跟踪日志文件,用户根据仿真后系统给出的跟踪日志文件,可以完整地还原网络的运行过程,并且根据自身的需要,对跟踪日志文件处理后其提取感兴趣的信息。4)由于跟踪日志文件只是以文字记录网络的运行状况,用户无法直观地看到网络的运行状况是否与用户所设计的采集策略相符,所以本发明提供了一款与该仿真器配套的辅助软件。该软件读入仿真器输出的跟踪文件后,能够将跟踪文件内抽象的文字信息以图形化的方式向用户展示,使用户能够对网络的运行状况有个直观的了解。
本发明的兼容性和透明性体现在:1)由于本发明基于面向对象的思想,系统可扩展性较强,系统内部模块与模块之间的耦合性也较低,方便用户根据自身的需求对本发明进行改写和增加新的模块。2)本发明封装并提供了底层网络操作的函数接口,例如报文的发送和接收操作,冲突发生以及冲突避免等等。用户如无特殊需要,则只需要利用系统提供的底层操作接口,关注于上层采集策略的实现即可,无需对系统的其他模块改动。
附图说明
图1是本发明的整体结构框架图;
图2是本发明中节点内部的结构图;
图3是本发明在某种采集策略下,报文在各层的结构图;
图4是在某种采集策略下,移动节点内部的虚拟节点列表示意图;
图5是移动节点的移动过程示意图。
具体实施方式
为了提高仿真器的仿真效率,本发明在实施方式是基于离散事件仿真模型思想的。所谓的离散事件驱动模型系统,是指其活动和状态变化仅在离散时间点上发生的一类系统。这类系统的状态仅与离散的时间点有关,当离散的时间点上有事件发生时,系统状态才发生改变。重要特点在于所模拟系统的状态呈现离散型变化。在离散型模拟中,事件是极其重要的概念,事件是引起系统状态发生离散型变化的事实。发生事件的时间点成为事件时间点。而利用离散事件驱动模型来仿真网络系统是合理的,因为网络系统的状态一般也只是会随报文到达,定时器到时等离散型事件的发生而改变。与轮询驱动模型相比,离散事件驱动模型的具有更高的效率。
图1描述了本发明的整体设计框架。各模块的功能如下:
1)仿真场景脚本:调度器读取场景脚本后,初始化仿真器各个网络组件的基本属性,包括设置无线信道的带宽,节点间的传输速率,移动节点的移动速率已经移动节点的移动路径等等。
2)网络拓扑脚本:用于初始化传感器网络的拓扑结构,包括各个节点的位置,整个布置有传感器节点的场所的大小等等。
3)调度器与事件队列:事件队列按照事件发生的时刻将事件排序,调度器取出事件队列头部的事件后,交给相应的事件处理程序,在处理程序中,更新系统状态并且向事件队列中加入未来事件。
4)采集策略:用户定义的采集策略,将影响节点模型中节点的行为。
5)节点模型:模拟实际节点的能量消耗,数据采集、移动、无线通信行为等等。
6)跟踪信息格式化:将不同事件的跟踪信息统一进行格式化,以便按照统一的格式输出到跟踪信息文件中。
7)结果输出:将格式化后的跟踪信息输出到文件中,辅助软件可读取跟踪信息文件后,将文件内容以图形化的形式输出。
图2描述了节点内部报文的传递流程,下面以在单跳网络中,节点1向目标节点2发送报文为例说明具体的传递流程:
1)节点1根据采集策略,需要向目标节点2发送一个数据报文,报文首先在路由层(Router)根据采集策略向报文填入下一跳的目的地址和源地址,由于是单跳网络,所以此处填入的目的地址为节点2。
2)填入目的地址与源地址后,报文加入接口队列ifq_。
3)MAC层负责侦听信道以避免冲突,MAC层在网络空闲的时候取接口队列头部的报文并将其发送,依此循环,尝试将队列中的所有报文发送出去。
4)将被发送的报文先送往传输模型(PropagationModel),根据无线信道的衰减模型、节点1和节点2之间的距离,填入适当的功率值,以便报文经过信道的衰减后,仍能被节点2正确接收。
5)报文通过网络接口(NetIF)发送到无线信道上。
6)无线信道将报文复制给所有链接到它上面的节点,并根据每个接收节点的位置,对报文的功率进行适当的衰减。
7)节点2接收到报文后,先将报文送到传输模型,判断报文的功率是否大于能够正确识别的功率阈值,由于发送方节点1在发送前,经过预测和计算,报文一般情况下都能被目标节点正确接收。
8)通过功率判断后,报文将通过节点2的网络接口(NetIF)进行地址筛选,如果报文的目的地址不是广播地址和节点2的本地地址,则将报文抛弃,反之,向上传递到MAC层。
9)MAC层根据收到报文的报文类型,根据采集策略,决定下一步应采取的动作。
10)其他节点,例如节点3,4,由于它们也链接到无线信道上,所以它们也会收到节点1向节点2发送的报文,但是,由于它们的位置可能处于节点1的通讯范围之外,报文经过无线信道的衰减后,将不能被正确识别。即使能被正确识别,由于报文的目的地址为节点2,报文也不能通过地址筛选进入到其他节点的上层。
图3所示的是在某种采集策略的仿真环境下,报文的结构图,途中实线表示的是该字段为本层填写,虚线表示该字段由其他模块填写。由于在不同的采集策略中,不同的采集策略需要在报文中捎带的信息各不相同,所以用户可以根据自己的需要对报文的结构进行增减。
图4所示的是在某种采集策略的仿真环境下,移动节点内部的虚拟节点列表结构。在不同的采集策略下,移动节点也需要根据不同的信息做出决策,而且移动节点也不可能在需要做出决策时,马上实时地获取所有节点的信息,所以列表的作用就在于保存节点在上一次交互过后的状态。同时,移动节点也不可能需要节点的全部信息,所以列表的结构可以根据用户的采集策略进行增减。从例子列表中可以看出,移动节点需要根据传感器节点的位置、剩余能量、剩余缓存等信息规划自身的行为。
图5所示的是移动节点从节点1移动到节点3的移动过程:
假设移动节点当前位置在节点1处,处于节点1的传输范围内,按照移动路径,移动节点需要移动到节点3,在开始移动前,求得节点1和节点3所形成的线段与所有节点传输范围的交点,即按序得到交点1->交点2->交点3->交点4,而用于计算的节点信息均取自移动节点内部的虚拟节点列表。求得交点后,移动节点以交点1为移动目标,在移动的过程中,由于处于节点1的传输范围内,移动节点根据采集策略决定是否采集节点1的数据。到达交点1后,判断即将离开节点1,向节点1发送更新请求报文后,根据收到的更新报文更新其虚拟节点列表。然后以交点2为移动目标,在移动过程中,由于移动节点不在任何节点的传输范围内,所以移动节点不会对任何节点进行访问,到达交点2后,判断即将进入节点2的传输范围,并将交点3作为移动目标,以此循环。当移动节点到达交点4后,判断即将进入节点3的传输范围,由于已按序遍历完交点集合中的所有节点,此时将节点3的位置作为移动目标向其移动,并在移动过程中采集节点3的数据,到达节点3后,根据节点3发送的“DATA”数据报文中所捎带的剩余缓存信息,判断是否已将节点3的数据采集完毕,如果否,继续采集,否则,离开节点3,同时向节点3发送“REQUPDATE”请求更新报文,移动节点根据接收的“UPDATE”更新报文更新虚拟节点列表后,按照移动路径,仿照上述过程继续移动。
以下从脚本配置一直到结果输出对本发发明的使用过程做进一步说明。
1)脚本配置:
假设用户需要仿真的移动仿真场景,如下表:
项目 | 数值 |
传感器节点数目 | 20/30/40/50/60 |
节点最大传输半径 | 75m |
节点存储容量 | 100MB |
节点采集速度 | 1KB/s |
节点间传输速度 | 10KB/s |
无线信道带宽 | 8mbps |
移动节点移动速率 | 2m/s |
仿真场景脚本如下:
Node_Energy 48000000000 //节点初始能量,单位为纳焦
Node_Buffer 100000000 //节点初始缓存量,单位为字节
Node_Radius 75 //节点最大的传输半径,单位为米
Node_TransSpeed 100000 //节点间最大传输速度,单位为字节/秒
Channel_Bandwidth 8000000 //无线信道带宽,单位为bps(bit/s)
MobileElement_MoveSpeed 2 //移动节点的移动速度
Schedule_EndTime 5000 //仿真结束时间
然后脚本将提供移动节点的移动路径,以节点编号的排列表示移动节点的访问顺序。
参考路径如下:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
网络拓扑脚本体现了所在无线传感器网络中节点的拓扑结构(本例中包含20个节点):
21 //节点个数
1000 1000 //长和宽
50 50 //ME初始的位置
85 448 1000 //节点信息描述(位置的横坐标,纵坐标,采集速度(字节/秒)),以下同;
-166 -199 1000
-125 -496 1000
283 307 1000
136 -82 1000
-55 137 1000
341 -478 1000
22 23 1000
165 206 1000
266 316 1000
-376 134 1000
104 282 1000
483 -476 1000
239 -114 1000
106 295 1000
-259 -327 1000
-192 317 1000
-81 -434 1000
-186 -193 1000
-373 -267 1000
按照既定格式编写脚本后,仿真器将读取脚本进行仿真,直到模拟时钟到达用户设置的仿真结束时间为止。
经过仿真后,仿真器将给出跟踪信息文件,跟踪信息文件将事件按一定的格式以条目的方式将记录下来,条目的内容也可以根据用户的需要进行增减,以便用户进行分析,下图给出的是跟踪信息的一个参考格式:
用户根据跟踪信息文件,配合某些常用的统计软件,便能方便地提取到用户所需要的信息。同时,可利用辅助软件读取跟踪信息文件,辅助软件会根据跟踪信息文件的内容,将网络的运行状况以图形化的方式展示。
本发明的精髓在于以离散事件驱动仿真模型为基础,辅以相关的支撑构件,同时简化其配置过程和配置难度,增加配置的灵活性以及提供图形化的结果输出,解决了利用现有网络仿真器对无线传感器网络,特别是利用移动节点进行数据采集的无线传感器网络进行仿真的难题,满足了研究人员在研究过程中需要进行仿真以客观评价不同采集策略的需求。本发明还可有其他多种实施方式,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明做出各种相应的改变和变形,这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (8)
1.一种面向移动节点数据传输的无线传感器网络仿真器,其特征是包括:
a、仿真脚本
仿真脚本由两部分共同描述:1)网络拓扑脚本:描述了无线传感器节点的位置分布以及无线传感器网络所覆盖面积;2)仿真场景脚本:描述了仿真的环境参数;
b、仿真器引擎
仿真器引擎包括:
调度器与事件队列:事件队列按照事件发生的时刻将事件排序,调度器取出事件队列头部的事件后,交给相应的事件处理程序;在处理程序中,更新系统状态并且向事件队列中加入未来事件;
采集策略:用户定义的采集策略,该策略影响节点模型中节点的行为;
节点模型:模拟实际无线传感器节点的能量消耗、数据采集、移动和无线通信行为;
c、结果的记录和输出
记录来自节点模型的本仿真器的仿真结果,并展示结果。
2.根据权利要求1所述的面向移动节点数据传输的无线传感器网络仿真器,其特征是所述仿真器引擎的节点模型内部封装了能量消耗模型,在仿真器的运行过程中,在节点发送和接收报文时对节点的能量消耗进行仿真。
3.根据权利要求1或2所述的面向移动节点数据传输的无线传感器网络仿真器,其特征是节点模型的结果先经跟踪信息格式化,再输出结果;
跟踪信息格式化:将不同事件的跟踪信息统一进行格式化,按照统一的格式输出到跟踪信息文件中;
结果输出:将跟踪信息文件内容以图形化和动画化的形式展示。
4.根据权利要求3所述的面向移动节点数据传输的无线传感器网络仿真器,其特征是所述仿真场景脚本中,环境参数包括无线网络的带宽、节点的存储容量大小、传感器节点数据收集速度、最大的无线传输距离、移动节点的移动速度和的移动路径;
移动路径以节点编号的排列表示移动节点对传感器节点进行访问的先后顺序。
5.根据权利要求4所述的面向移动节点数据传输的无线传感器网络仿真器,其特征在于本仿真器工作步骤如下:
步骤1-1:仿真器在初始化阶段读入仿真脚本进行初始化;
步骤1-2:初始化后,向事件队列加入初始化事件,推动整个仿真的进行;
步骤1-3:调度器读取事件队列头部的事件后,交由相应事件处理程序处理该事件;
步骤1-4:在调度器运行期间,根据所处理的事件的类型,将相应的事件信息格式化成统一格式后,输出到跟踪信息文件里;
步骤1-5:调度器仿真结束后,由辅助软件读取跟踪信息文件,并将网络的运行情况以图形化的方式输出。
6.根据权利要求4所述的面向移动节点数据传输的无线传感器网络仿真器,其特征在于节点模型模拟的节点间的交互步骤如下:
步骤2-1:移动节点检查到进入某个节点的传输范围,根据采集策略以及移动节点内部的虚拟节点列表决定发生交互的目标节点,以及是否马上进行数据传输;
步骤2-2:需要进行数据传输时,移动节点向目标节点发送请求数据报文,将目标节点唤醒,其他节点保持则保持休眠状态;
步骤2-3:收到请求数据报文的节点将其采集的数据封装成数据报文,向移动节点回送,并且在报文内部捎带自身的信息;
步骤2-4:移动节点收到数据报文后,将负载中的数据存入自身的缓存,并利用报文内部捎带的信息更新移动节点的虚拟节点列表;
步骤2-5:在移动节点只需要某些传感器节点内部的信息、而不需要与其发生数据交互的时刻,移动节点向目标节点发送请求更新报文,将目标节点唤醒;
步骤2-6:收到请求更新报文的节点,将自身的信息单独组成一个更新报文,向移动节点回送;移动节点收到更新报文后,根据更新报文内部的信息更新移动节点的虚拟节点列表。
7.根据权利要求4所述的面向移动节点数据传输的无线传感器网络仿真器,其特征在于节点模型模拟的节点内部报文的处理步骤如下:
步骤3-1:当节点有报文需要发送时,报文先在路由层,根据采集策略,填入报文的目的地址与源地址;
步骤3-2:报文在MAC层中压进接口队列中,等待发送;MAC层侦听无线信道以及避免冲突;
步骤3-3:报文压入接口队列后,节点先侦听无线信道;如果无线信道在侦听时刻空闲,再等待一段时间后再次侦听信道,若此时信道仍为空闲,便将接口队列头部的报文发送,否则将暂缓报文的发送,等待一定的时间后再次尝试将报文发送;
步骤3-:4:报文经过MAC层后发往节点内的传输模型,传输模型根据无线信道的衰减模型以及传输的距离,往报文写入一个合适的功率值,使得报文在传输的过程中,经过无线信道的衰减后仍能被目标节点正确识别和接受;
步骤3-5:网络接口将报文发送到无线信道上;
步骤3-6:无线信道将报文复制给链接到该无线信道上的所有节点,并且根据信道的衰减模型以及发送节点与接受节点的距离,对报文的功率进行适当的衰减;
步骤3-7:而节点从无线信道上接收报文后,首先发送到其自身的传输模型,判断接收报文的功率值是否大于能够正确识别的功率阈值,如果小于,则表示报文由于功率不足而不能被正确接收,如果不小于,则将报文交给网络接口;
步骤3-8:网络接口对接收报文进行地址检验,如果报文的目的地址不是广播地址而且与本节点的地址不同,表示该报文不是发往本节点的,将其丢弃,否则交由MAC层做进一步处理;
步骤3-9:MAC层根据接收报文的类型和采集策略,决定节点下一步的行为。
8.根据权利要求6所述的面向移动节点数据传输的无线传感器网络仿真器,其特征是所述步骤2-4)中,虚拟节点列表对全网节点的最新状态进行保存,并且具体保存的信息根据不同的采集策略进行增减。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102088225A CN102355677A (zh) | 2011-07-25 | 2011-07-25 | 面向移动节点数据传输的无线传感器网络仿真器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011102088225A CN102355677A (zh) | 2011-07-25 | 2011-07-25 | 面向移动节点数据传输的无线传感器网络仿真器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102355677A true CN102355677A (zh) | 2012-02-15 |
Family
ID=45579156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011102088225A Pending CN102355677A (zh) | 2011-07-25 | 2011-07-25 | 面向移动节点数据传输的无线传感器网络仿真器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102355677A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546063A (zh) * | 2012-02-24 | 2012-07-04 | 哈尔滨工业大学 | 无线传感器网络能耗仿真工具及其仿真方法 |
CN102595446A (zh) * | 2012-02-17 | 2012-07-18 | 南京邮电大学 | 一种无线传感网事务协调方法 |
CN105792270A (zh) * | 2014-12-24 | 2016-07-20 | 国家电网公司 | 一种适用于WiMAX系统的离散事件仿真方法及其平台 |
CN106888115A (zh) * | 2017-02-09 | 2017-06-23 | 中国科学院信息工程研究所 | 一种网络拓扑构建方法与系统 |
CN112261683A (zh) * | 2019-07-22 | 2021-01-22 | 中国移动通信有限公司研究院 | 基站功耗节能效果测试方法、装置、设备及存储介质 |
CN114422378A (zh) * | 2022-01-20 | 2022-04-29 | 北京广利核系统工程有限公司 | 网络缓冲区大小的验证方法及装置 |
-
2011
- 2011-07-25 CN CN2011102088225A patent/CN102355677A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102595446A (zh) * | 2012-02-17 | 2012-07-18 | 南京邮电大学 | 一种无线传感网事务协调方法 |
CN102595446B (zh) * | 2012-02-17 | 2014-10-22 | 南京邮电大学 | 一种无线传感网事务协调方法 |
CN102546063A (zh) * | 2012-02-24 | 2012-07-04 | 哈尔滨工业大学 | 无线传感器网络能耗仿真工具及其仿真方法 |
CN102546063B (zh) * | 2012-02-24 | 2014-04-16 | 哈尔滨工业大学 | 无线传感器网络能耗仿真工具及其仿真方法 |
CN105792270A (zh) * | 2014-12-24 | 2016-07-20 | 国家电网公司 | 一种适用于WiMAX系统的离散事件仿真方法及其平台 |
CN106888115A (zh) * | 2017-02-09 | 2017-06-23 | 中国科学院信息工程研究所 | 一种网络拓扑构建方法与系统 |
CN106888115B (zh) * | 2017-02-09 | 2019-08-02 | 中国科学院信息工程研究所 | 一种网络拓扑构建方法与系统 |
CN112261683A (zh) * | 2019-07-22 | 2021-01-22 | 中国移动通信有限公司研究院 | 基站功耗节能效果测试方法、装置、设备及存储介质 |
CN112261683B (zh) * | 2019-07-22 | 2024-05-24 | 中国移动通信有限公司研究院 | 基站功耗节能效果测试方法、装置、设备及存储介质 |
CN114422378A (zh) * | 2022-01-20 | 2022-04-29 | 北京广利核系统工程有限公司 | 网络缓冲区大小的验证方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Albreem et al. | Green Internet of Things (GIoT): Applications, practices, awareness, and challenges | |
Alhayani et al. | RETRACTED ARTICLE: 5G standards for the Industry 4.0 enabled communication systems using artificial intelligence: perspective of smart healthcare system | |
Agrawal et al. | An improved energy efficient system for IoT enabled precision agriculture | |
CN102355677A (zh) | 面向移动节点数据传输的无线传感器网络仿真器 | |
Adkins et al. | The signpost platform for city-scale sensing | |
Takaishi et al. | Toward energy efficient big data gathering in densely distributed sensor networks | |
Dyo et al. | Evolution and sustainability of a wildlife monitoring sensor network | |
Korkalainen et al. | Survey of wireless sensor networks simulation tools for demanding applications | |
CN103546960B (zh) | 定位方法与系统 | |
Sun | [Retracted] Research on the Construction of Smart Tourism System Based on Wireless Sensor Network | |
Wu et al. | Data pre-forwarding for opportunistic data collection in wireless sensor networks | |
CN104901832A (zh) | 一种航空自组网半实物网络仿真平台 | |
Tanas et al. | Crowdsensing simulation using ns-3 | |
CN110072206A (zh) | 一种基于最佳能量效率的无人机-物联网数据采集方法和系统 | |
Bautista et al. | Large-scale simulations manager tool for OmNet++: Expediting simulations and post-processing analysis | |
Yang et al. | A survey of energy optimization approaches for computational task offloading and resource allocation in MEC networks | |
Liu et al. | Task completion time minimization for UAV-enabled data collection in Rician fading channels | |
CN102572873A (zh) | 无线传感器网络侦听系统 | |
Al-gaashani et al. | Intelligent system architecture for smart city and its applications based edge computing | |
Rais et al. | Impact of loosely coupled data dissemination policies for resource challenged environments | |
Pullmann et al. | Increasing energy efficiency by minimizing collisions in long-range IoT networks | |
Shahzad | Pymote 2.0: Development of an interactive python framework for wireless network simulations | |
CN104049602A (zh) | 一种多路径路由算法的保育猪舍监控系统 | |
Baumgartner et al. | Distributed algorithm engineering for networks of tiny artifacts | |
Gabrovšek et al. | Karst show caves–how DTN technology as used in space assists automatic environmental monitoring and tourist protection–experiment in Postojna Cave |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120215 |