演示摘要:Choco——无线传感器网络中一种多功能通信协议
我们要提出了一种名为Choco的通信协议,该协议可在多跳无线传感器网络(WSN)中高效支持各种流量需求,并提供端到端可靠性。为实现这一目标,Choco采用细粒度调度,其核心思想在于:通过并发传输可以以很小的开销传递端到端的确认(ACKs)。具体而言,时隙分配会根据流量负载和数据包丢失情况动态调度,每秒可达数次。我们表明,在周期性流量环境中,Choco相比最先进的收集协议ORPL+BF具有更高的效率和可靠性。此外,我们还表明,在产生突发流量的网络成像应用中,Choco能够在平均4.0跳的网络中,约168秒内从5个节点高效地成功收集5幅VGA图像。
1. 概述
一种能够高效支持多种流量需求的多跳WSN协议可使应用程序的开发更加简便,因为开发者无需从众多现有协议中选择合适的协议。然而,现有的通信协议仅支持特定的流量需求,因此必须根据产生的流量适当选择不同的协议和参数。
为了解决这一问题,我们正在开发Choco。我们的重点是高效地在两种主要流量需求——周期性和突发性流量中实现端到端可靠性。许多应用,如环境监测、结构健康监测和网络成像,都会产生其中一种或两种流量。
Choco的设计基于以下洞察:利用并发传输,端到端之间的确认(ACK)可以以很小的开销进行传输。Choco采用类似于LWB[1]的同步时隙,LWB是一种使用并发传输的采集协议,如图1所示。所有节点根据汇聚节点计算并传输的调度数据包进行通信。在一个时隙中,最多由一个节点传输一个数据包。
发起者发起并由接收器通过并发传输进行转发。数据包最终被传送到汇聚节点。
Choco与LWB之间的差异在于时隙调度机制和发送缓冲区管理。在Choco中,调度数据包指定一个发起者以及将在后续每个时隙中传输的数据包的序列号。每个被指定的节点传输被指定的数据包,并将其发送缓冲区中序列号小于指定序列号的数据包删除。
调度数据包基于积压情况进行计算。积压指每个节点发送缓冲区中的数据包数量。汇聚节点从数据包的头部获取积压信息,并为积压未知或非零的节点分配时隙。当所有节点的积压均为零时,汇聚节点通过发送包含唤醒时间的睡眠数据包,指示所有节点进入睡眠模式。在唤醒时间,汇聚节点将所有积压视为未知。
Choco实现端到端可靠性的原因有两个。第一,节点保留所有可能需要重传的数据包。第二,由于数据包丢失时积压不会被更新,汇聚节点会持续重新调度,直到成功接收或检测到节点故障。
Choco能够高效地处理突发的流量fluctuation,而无需显式通知流量需求。当没有产生流量时,所有节点都可以长时间休眠。当产生重流量时,会在最新传输的调度耗尽后立即分发额外调度。
与LWB相比,Choco具有三个优势。首先,由于Choco提供了端到端可靠性,因此可应用于容错应用。其次,Choco效率更高,因为在并发传输中的冗余传输次数这一参数可以被重新调整。通过提供100%的可靠性来实现。该参数在[1],[2]的评估中为保证足够的可靠性而被隐式选择。第三,无需报告流量需求的变化,因为调度是基于积压计算的。
与基于异步MAC的方法(如BF[3])相比,Choco具有两个优点。首先,Choco在轻流量下更高效,因为Choco中不存在低功耗监听(Low Power Listening)所使用的过度侦听和长前导序列。其次,当多个节点生成数据包时,Choco的可靠性不会急剧下降。这是由于Choco通过并发传输避免了拥塞的发生。
2. 评估
周期性流量
我们在Indriya测试平台[4]上使用94个节点,评估了Choco、BF‐2(2 Hz LPL)和BF‐8(8 Hz LPL)在采用ORPL[2]作为路由协议时的占空比和可靠性。实验中使用IEEE 802.15.4信道26,传输功率为0 dBm,并将有效载荷大小fix设置为15 B。在第一个实验中,94个节点均生成数据包,我们改变分组间间隔(IPI)。在第二个实验中,将IPI固定为1秒,并在94个节点中将分组生成节点数量从1变化到35。
第一次实验的结果如表1所示,汇总结果如图2所示。当流量较轻时,Choco的效率更高(IPI > 300s 与 ORPL+BF‐2 相比,IPI > 30 s 与 ORPL+BF‐8 相比)。在任何IPI设置下,Choco的可靠性均高于或等于BF的可靠性。当流量负载超过网络容量时,Choco无法实现100%的可靠性,因为生成的数据包无法被分配到发送缓冲区。当提高LPL频率以提升BF的可靠性时,最小能耗也随之增加。
| 占空比[%] | IPI:1秒 | IPI:1秒 | IPI:3秒 | IPI:3秒 | IPI:10秒 | IPI:10秒 | IPI:30秒 | IPI:30秒 | IPI:100秒 | IPI:100秒 | IPI:300秒 | IPI:300秒 | IPI:900秒 | IPI:900秒 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Choco | 18.59 | 18.59 | 19.97 | 19.97 | 6.40 | 6.40 | 2.18 | 2.18 | 0.66 | 0.66 | 0.23 | 0.23 | 0.09 | |
| ORPL+BF‐2 | 7.78 | 7.78 | 6.87 | 6.87 | 4.12 | 4.12 | 1.35 | 1.35 | 0.56 | 0.56 | 0.35 | 0.35 | 0.30 | |
| ORPL+BF‐8 | 11.62 | 11.62 | 8.88 | 8.88 | 4.45 | 4.45 | 2.25 | 2.25 | 1.45 | 1.45 | 1.30 | 1.30 | 1.24 |
| 可靠性[%] | IPI:1秒 | IPI:1秒 | IPI:3秒 | IPI:3秒 | IPI:10秒 | IPI:10秒 | IPI:30秒 | IPI:30秒 | IPI:100秒 | IPI:100秒 | IPI:300秒 | IPI:300秒 | IPI:900秒 | IPI:900秒 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Choco | 37.56 | 37.56 | 97.49 | 97.49 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 | 100 |
| ORPL+BF‐2 | 15.91 | 15.91 | 32.84 | 32.84 | 75.45 | 75.45 | 99.71 | 99.71 | 99.93 | 99.93 | 99.91 | 99.91 | 100 | 100 |
| ORPL+BF‐8 | 23.18 | 23.18 | 56.84 | 56.84 | 98.47 | 98.47 | 99.76 | 99.76 | 100 | 100 | 100 | 100 | 100 | 100 |
表1:收集协议的比较(周期性流量)
第二次实验的结果如图3所示。当生成数据包的节点数量少于25个时,Choco可以实现100%的可靠性。另一方面,由于拥塞,BF的可靠性即使在仅有两个节点生成数据包时也未达到100%,且始终低于Choco。
突发流量
我们在一个包含5个摄像头传感器节点的网络成像应用中评估Choco的占空比和吞吐量,传感器节点和35个TelosB节点。我们使用IEEE 802.15.4信道26和低传输功率(< ‐25 dBm),并将有效载荷大小fix增加至74 B。每个摄像头传感器节点每20分钟生成一张约47 KB的VGA图像。
图4显示了一小时内所有节点的平均占空比。轻流量下的平均占空比为0.38%,重流量下为44.3%。在大约168秒内从5个节点收集了5幅VGA图像,表明吞吐量平均为1.43 KB/s,网络跳数平均为4.0跳。这说明Choco能够根据网络中的流量需求调整时隙分配,并且表明Choco可以高效地支持具有端到端可靠性的突发流量。
3. 演示
在演示中,我们将展示一个同时收集周期性和突发流量负载的应用。该演示由5个摄像头传感器节点、35个TelosB节点(包括一个汇聚节点)和一台笔记本电脑组成,如图5所示。
摄像头传感器节点拍摄VGA图像并产生突发流量负载。TelosB节点周期性地进行温度、湿度和照度的感知,并产生周期性流量负载。笔记本电脑连接到汇聚节点,记录从传感器节点收集的数据,并显示网络性能和所采集的图像。
697

被折叠的 条评论
为什么被折叠?



