第14章-物联网通信技术(曾宪武)LXX2014.7_第1页
第14章-物联网通信技术(曾宪武)LXX2014.7_第2页
第14章-物联网通信技术(曾宪武)LXX2014.7_第3页
第14章-物联网通信技术(曾宪武)LXX2014.7_第4页
第14章-物联网通信技术(曾宪武)LXX2014.7_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第14章的协议1 1 第14章WSN的MAC协议14.1基于竞争的基于竞争的MAC协议协议14.2基于时分复用的基于时分复用的MAC协议协议本章小结本章小结第14章的协议2 2 14.1 基于竞争的基于竞争的MAC协议协议14.1.1 IEEE802.11 MAC协议协议IEEE802.11 MAC协议包括分布式协调(DCF)和点协调(Point Coordination Function, PCF)两种访问控制方式, 其中DCF是IEEE802.11协议的基本访问控制方式。 由于在无线信道中难以检测到信号的碰撞, 因而只能采用随机退避的方式来减少数据碰撞的概率。第14章的协议3 3在DCF工

2、作方式下, 节点在侦听到无线信道忙之后, 采用CSMA/CA机制和随机退避时间技术, 以实现无线信道的共享。 另外, 所有定向通信都采用立即主动发送ACK确认帧的机制, 如果没有收到ACK帧, 则发送方会重新发送数据分组。 PCF工作方式是基于优先级的无竞争访问, 是可选的控制方式。 它通过访问接入点(AP)协调节点的数据收发, 通过轮询方式查询当前哪些节点有数据发送的请求, 并在必要时给予数据发送权。第14章的协议4 4在DCF工作方式下, 载波侦听机制通过物理载波侦听和虚拟载波侦听来确定无线信道的状态。 物理载波侦听由物理层提供, 而虚拟载波侦听由MAC层提供。 如图14.1.1所示, 节

3、点A欲向节点B发送数据, 节点C在A的无线通信范围内, 节点D在B的无线通信范围内, 但不在A的无线通信范围内。 第14章的协议5 5图14.1.1 CSMA/CA虚拟载波侦听示意图第14章的协议6 6节点A首先向B发送一个请求帧(Request-to-Send, RTS), 节点B返回一个清除帧(Clear-to-Send, CTS)给予应答。 在这两个帧中都有一个字段表示这次数据交换需要的时间长度, 称为网络分配矢量(Network Allocation Vector, NAV), 其他帧的MAC头也会携带这一信息。 节点C和D在侦听到这个信息后, 就不再发送任何数据, 直到这次数交换完成

4、为止。 NAV可看做一个计数器, 以均匀速率递减计数到零。 当计数器为零时, 虚拟载波侦听指示信道为空闲状态, 否则, 指示信道为忙状态。 第14章的协议7 7IEEE802.11 MAC协议规定了三种基本帧间间隔(Inter-frame Spacing, IFS), 用来提供访问无线信道的优先级。 三种帧间的间隔分别如下: SIFS(Short IFS): 最短帧间间隔。 使用SIFS的帧的优先级最高, 用于需要立即响应的服务, 如ACK帧、 CTS帧和控制帧等。 第14章的协议8 8PIFS(PCF IFS): PCF方式下节点使用的帧间间隔, 用于获得在无竞争访问周期启动时访问信道的优先

5、权。 DIFS(DCF IFS): DCF方式下节点使用的帧间间隔, 用于发送数据帧和管理帧。 上述各帧间间隔满足关系: DIFSPIFSSIFS。 第14章的协议9 9根据CSMA/CA协议, 当一个节点要传输一个数据分组时, 它首先侦听信道状态。 如果信道空闲, 而且经过一个帧间间隔时间DIFS后信道仍然空闲, 则节点立即开始发送数据分组。 如果信道忙, 则节点一直侦听信道直到信道的空闲时间超过DIFS。 当信道最终空闲时, 节点进一步使用二进制退避算法(Binary Back-off Algorithm), 进入退避状态来避免发生碰撞, 如图14.1.2所示。 随机退避时间按下列公式计算

6、: 第14章的协议10 10退避时间=Random()aSlottime(14.1.1)式中, Random()是在竞争窗口0, CW内均匀分布的伪随机整数; CW是整数随机数, 其值处于标准规定的aCWmin和aCWmax之间; aSlottime是一个时隙时间, 包括发射启动时间、 媒体传播时延、 检测信道的响应时间等。 第14章的协议11 11图14.1.2 CSMA/CA访问机制时序图第14章的协议12 12节点在进入退避状态时, 启动一个退避计时器, 当计时达到退避时间后结束退避状态。 在退避状态下, 只有当检测到信道空闲时才进行计时。 如果信道忙, 则退避计时器中止计时, 直到检测

7、到信道空闲时间大于DIFS后才继续计时。 当多个节点推迟且进入随机退避时, 利用随机函数选择最小退避时间的节点作为竞争优胜者, 如图14.1.3所示。 第14章的协议13 13图14.1.3 IEEE802.11 MAC协议的退避机制第14章的协议14 14IEEE802.11 MAC协议中通过主动确认机制和预留机制来提高性能, 如图14.1.4所示。 在主动确认机制中, 当目标节点收到一个发给它的有效数据帧时, 必须向源节点发送一个应答帧(ACK), 确认数据已被正确接收。 为了保证目标节点在发送ACK过程中不与其他节点发生冲突, 目标节点使用SIFS帧作为间隔。 主动确认机制只能用于有明确

8、目标地址的帧, 不能用于组播报文和广播报文传输。 第14章的协议15 15为了减少节点间使用共享信道的碰撞概率, 预留机制要求源节点和目标节点在发送数据帧之前交换简短的控制帧, 即发送请求帧RTS和清除帧CTS。 从RTS(或CTS)帧开始到ACK帧结束的这段时间, 信道将一直被这个数据交换过程占用。 RTS帧和CTS帧中包含有关这段时间长度的信息。 每个节点维护一个定时器, 记录网络分配向量NAV, 指示信道被占用的剩余时间。 一旦收到RTS帧或CTS帧, 所有节点都必须更新它们的NAV值。 只有在NAV减至零时,节点才可能发送信息。 通过此种方式, RTS帧和CTS帧为节点的数据传输预留了

9、无线信道。 第14章的协议16 16图14.1.4 IEEE802.11 MAC协议的应答域预留机制第14章的协议17 1714.1.2 S-MAC协议协议S-MAC(Sensor MAC)协议是在IEEE802.11 MAC协议的基础上, 针对WSN的节省能量需求而提出的无线传感器网络MAC协议。 S-MAC协议假设在通常情况下, WSN的数据传输量较少, 而节点能协作完成共同的任务, 网络内部能够进行数据的处理和融合以减少数据通信量, 网络能够容忍一定程度的通信延迟。 它的主要设计目标是提供良好的扩展性, 减少节点能量的消耗。 第14章的协议18 18针对碰撞重传、 串音、 空闲侦听和控制

10、消息等可能造成WSN消耗更多能量等因素,S-MAC 协议采用了周期性侦听/睡眠的低占空比工作方式, 控制节点尽可能处于睡眠状态以便能降低节点能量的消耗; 相邻节点通过协商的一致性睡眠调度机制形成虚拟簇, 减少节点的空闲侦听时间; 通过流量自适应的侦听机制, 减少信息在网络中的传输延迟; 通过带内信令, 减少重传和避免监听不必要的数据; 通过消息分割和突发传递机制, 减少控制消息的开销和消息的传递延迟。 以下介绍S-MAC协议所采用的主要机制。 第14章的协议19 191. 周期性侦听和睡眠为了减少能量消耗, 节点要尽量处于低功耗的睡眠状态。 每个节点独立地调度其他的工作状态, 周期性地转入睡眠

11、状态, 在苏醒后侦听信道状态, 判断是否要发送或接收数据。 为了便于相互通信, 相邻节点之间应该尽量维持睡眠/侦听调度周期的同步。第14章的协议2020每个节点用SYNC消息通告自己的调度信息, 同时维护一个调度表, 以保存所有相邻节点的调度信息。 当节点启动工作时, 首先在一固定的时长内进行侦听, 如果在这段侦听时间内收到其他节点的调度信息, 则将它的调度周期设置为与邻居节点相同的周期, 并在等待一段随机时间后广播它的调度信息。 当节点收到多个邻居节点的不同调度信息时, 可以选择第一个收到的调度信息, 并记录收到的所有调度信息。 第14章的协议21 21如果节点在这段侦听时间内没有收到其他节

12、点的调度信息, 则产生自己的调度周期并广播。 在节点产生和通告自己的调度后, 如果收到邻居的不同调度, 可分两种情况进行处理: 如果节点没有收到过与自己调度相同的其他邻居的通告, 则采纳邻居的调度而丢弃自己生成的调度; 如果节点已经收到过与自己调度相同的其他邻居的通告, 则在调度表中记录该调度信息, 以便能够与非同步的相邻节点进行通信。第14章的协议2222这样, 具有相同调度的节点形成一个虚拟簇, 边界节点记录两个或多个调度。 在部署区域较广的WSN中, 能够形成众多不同的虚拟簇, 从而使得S-MAC具有良好的扩展性。 为了适应新节点的加入, 每个节点都要定期广播自己的调度, 使新节点可以与

13、已经存在的相邻节点保持同步。 如果一个节点同时收到两种不同的调度, 如图14.1.5中处于两个不同调度区域重合部分的节点, 那么这个节点可以选择先收到的调度, 并记录另一个调度信息。第14章的协议2323图14.1.5 S-MAC虚拟簇形成示意图第14章的协议24242. 流量自适应侦听机制WSN一般采用多跳方式进行通信, 但节点的周期性睡眠会导致通信延迟的累加。 S-MAC 协议采用了流量自适应侦听机制, 以减少通信延迟的累加效应。 其基本思想是: 在一次通信过程中, 节点的邻居节点在通信结束后不马上进入睡眠状态, 而是保持侦听一段时间。 如果节点在这段时间内接到RTS分组, 则立即接收数据

14、, 无须等到下一次调度侦听周期, 从而减少了数据分组的传输延迟。 如果在这段时间内没有接到RTS分组, 则转入睡眠状态直到下一次调度侦听周期。 第14章的协议25253. 串音避免为了减少碰撞和避免串音, S-MAC协议采用了与IEEE802.11 MAC协议类似的虚拟和物理载波侦听机制, 以及RTS/CTS的通告机制。 两者的区别在于当邻居节点处于通信时, S-MAC协议的节点进入睡眠状态。第14章的协议2626每个节点在传输数据时, 都要经历RTS/CTS/数据传输/ACK确认的通信过程(除广播外)。在传输的每个分组中, 都有一个域值表示剩余通信过程需要持续的时间长度。 源和目的节点的邻居

15、节点在侦听期间侦听到分组时, 记录这个时间长度值, 同时进入睡眠状态。 通信过程记录的剩余时间会随着时间不断减少。 当剩余时间减至零时, 若节点仍处于侦听周期, 就会被唤醒, 否则, 节点处于睡眠状态直到下一个调度的侦听周期。 每个节点在发送数据时,都要先进行载波侦听。 只有虚拟或物理载波侦听表示无线信道空闲时, 才可以竞争获得通信。 第14章的协议27274. 消息传递 因为WSN内部数据处理需要完整的消息, 所以S-MAC协议利用RTS/CTS机制, 一次预约发送整个长信息的时间; 又因为WSN无线信道误码率较高, S-MAC协议将一个长信息分割成几个短信息在预约的时间内突发传送。 为了能

16、让邻居节点及时获取通信过程的剩余时间, 每个分组都带有剩余时间域。 为了可靠传输以及通告邻居节点正在进行的通信过程, 目的节点对每个短消息都要发送一个应答消息。 如果发送节点没有收到应答消息, 则立刻重传该短消息。 第14章的协议2828S-MAC协议的消息传递机制与IEEE802.11 MAC协议的不同之处在于, S-MAC协议的RTS/CTS控制消息和数据携带的时间信息是整个长信息传输的剩余时间, 其他节点只要接收到一个信息就能知道整个长信息的剩余时间, 然后进入睡眠状态直到信息发送完毕。IEEE802.11MAC协议考虑网络的公平性, RTS/CTS只预约了下一个发送短信息的时间, 其他

17、节点在每个短信息发送完成后不必醒来即可进入侦听状态。 只要发送方没有收到某个短信息的应答, 连接就会断开, 其他节点便可以开始竞争信道。 S-MAC与IEEE802.11MAC传输分组的对比如图14.1.6所示。 第14章的协议2929图14.1.6 S-MAC与IEEE802.11传输分组的对比第14章的协议3030 14.1.3 T-MAC协议协议1. 基本原理如图14.1.7(a)所示, 向上的箭头表示发送消息, 向下的箭头表示接收消息, 上面部分的信息流表示节点一直处于侦听方式下的消息收发序列, 下面部分的信息流表示不采用S-MAC协议时的消息收发序列。第14章的协议31 31图14.

18、1.7 S-MAC与T-MAC协议基本机制对比第14章的协议3232S-MAC协议的周期长度受限于延迟要求和缓存大小, 活动时间主要依赖于传输信息的速率。 这样就存在一个问题, 即延迟要求和缓存大小通常是固定的, 而信息传输速率通常是变化的。 如果要保证可靠及时的信息传输,节点的活动时间必须适应最高通信负载。 当负载动态较小时, 节点处于空闲侦听的时间相对增加。 第14章的协议3333针对这个问题, T-MAC协议在保持周期长度不变的基础上, 根据通信流量的变化动态地调整活动时间, 用突发方式发送信息, 以减少空闲侦听时间。 如图14.1.7(b)所示, T-MAC 协议相对S-MAC协议减少

19、了处于活动状态的时间。 第14章的协议3434在T-MAC 协议中, 发送数据时仍采用 RTS/CTS/DATA/ACK的通信过程, 节点周期性地唤醒并进行侦听, 如果在一个给定时间TA内没有发生下面任何一个激活事件, 则活动结束。 在每个活动期间的开始, T-MAC协议按照突发方式发送所有数据。 TA决定了每个周期内最小的空闲侦听时间。第14章的协议3535TA的取值对于T-MAC协议性能至关重要, 其取值约束为TAC+R+T (14.1.2)式中, C为竞争信道时间, R为发送RTS分组的时间, T为RTS分组结束到发出CTS分组开始的时间, 它们之间的关系如图14.1.8所示。第14章的

20、协议3636图14.1.8 T-MAC协议数据传输时序图及TA、 C、 R及T间关系第14章的协议37372. 早睡问题通常, 在WSN中存在多个节点向一个或少数几个汇聚节点传输数据的单向通信方式。 如图14.1.9所示, 假设数据传输方向是ABCD。 如果节点A通过竞争首先获得发送数据到节点B的机会, 则节点A发送RTS消息给节点B, B用CTS消息应答。 节点C收到节点B发出的CTS消息后而转入睡眠状态, 在B接收完数据后, C醒来, 以便接收节点B发送给它的数据。 D可能不知道A和B的通信存在, 在AB的通信结束后已经处于睡眠状态, 这样, 节点C只有等到下一个周期才能传输数据到节点D。

21、 这种通信延迟称为早睡问题 (Early-Sleep Problem)。第14章的协议3838图14.1.9 T-MAC协议的数据传输与早睡问题第14章的协议3939T-MAC协议提出两种方法来解决早睡问题。 第一种方法称为未来请求发送(Future RequesttoSend, FRTS)。 如图14.1.10(a)所示, 当节点C收到B发送给A的CTS分组后,立刻向下一跳的接收者D发出FRTS分组。 FRTS分组包含D接收数据前需要等待的时间长度, D要在睡眠相应长度时间后醒来接收数据。第14章的协议4040由于节点C发送的FRTS分组可能干扰节点A发送的数据, 所以节点A需要推迟发送数据

22、的时间。 A通过在接收到CTS分组后发送一个与FRTS分组长度相向的DS(Data-Send)分组实现对信道的占用。 DS分组不包含有用信息。 A在DS分组之后开始发送正常的数据信息。 FRTS方法可以提高吞吐率, 但DS分组和FRTS分组带来了额外的通信开销。第14章的协议41 41图14.1.10 解决早睡问题的两种方法第14章的协议4242另一种方法称为满缓冲区优先(Full Buffer Priority)。 当节点的缓冲区接近满时, 对收到的RTS不作应答, 而是立即向目标接收者发送RTS消息, 并传输数据给目的节点, 如图14.1.10(b)所示。 节点B向节点C发送RTS分组,

23、节点C因其缓冲区快满而不发送CTS, 只是向节点D发送RTS, 将它的数据发送给节点D。 第14章的协议434314.2 基于时分复用的基于时分复用的MAC协议协议时分复用(Time Division Multiple Access, TDMA)是实现信道分配的一种机制。 在WSN中采用TDMA机制, 就可以为每个节点分配独立的用于数据发送或接收的时隙, 于是节点可以在其他时隙内转入睡眠状态, 以达到节省能量的目的。 TDMA机制没有竞争机制所产生的碰撞问题, 数据传输时不需要过多的控制信息, 节点在空闲时隙内能及时进入睡眠状态。 第14章的协议4444TDMA机制需要节点之间要有比较严格的时

24、间同步, 这样才能实现节点状态的自动转化,以及节点之间的协同工作。 TDMA机制在网络扩展性方面存在着不足, 很难调整时间帧的长度和时槽的分配。 对于节点的移动、 失效等动态拓扑结构适应性较差, 对于节点发送数据量的变化也不敏感。 研究者利用TDMA机制的优点, 针对该机制的不足, 结合具体的应用, 提出了多个基于TDMA的WSN MAC协议。 下面介绍几种典型的协议。 第14章的协议454514.2.1 基于分簇网络的基于分簇网络的MAC协议协议分簇网络是指网络中的节点按照某种方式固定或自动地被划分为若干个簇, 在每个簇内,由一个簇头来控制所有节点的活动。 在基于分簇网络的TDMA协议中,

25、簇头负责为簇内所有WSN节点分配时隙, 收集和处理簇内节点发来的数据, 并将数据发送给汇聚节点。 分簇WSN的结构如图14.2.1所示。 第14章的协议4646图14.2.1 分簇WSN结构示意图第14章的协议4747在基于分簇网络的MAC协议中, 节点状态分为感应(Sensing)、 转发(Relaying)、 感应并转发(Sensing and Relaying)和非活动(Inactive)四种状态。 节点在感应状态时, 采集数据并向其相邻节点发送所采集的数据; 在转发状态时, 接收其他节点发送的数据并发送给下一个节点; 在感应并转发状态时, 节点需要完成上述两项的功能; 节点没有数据需要

26、接收和发送时, 自动进入非活动状态。 第14章的协议4848为了适应簇内节点的动态变化、 及时发现新的节点、 能量相对高的节点转发数据等目的, 协议将时间帧分为周期性的四个阶段。 第一阶段, 数据传输阶段。 簇内节点在各自分配的时隙内发送采集数据给簇头。 第二阶段, 刷新阶段。 簇内节点向簇头报告其当前状态。第14章的协议4949第三阶段, 刷新引起的重组阶段。 紧接着刷新阶段之后, 簇头根据簇内节点的当前状态, 重新给簇内节点分配时隙。 第四阶段, 事件触发的重组阶段。 节点能量小于特定值、 网络拓扑发生变化等事件发生时, 簇头就要重新分配时隙。 通常在多个数据传输阶段后会有这样的事件发生。

27、 第14章的协议505014.2.2 DEANA协议协议分布式能量感知节点活动(Distributed Energy Aware Node Activation, DEANA)协议将时间帧分为周期性的调度访问阶段和随机访问阶段。 调度访问阶段由多个连续的数据传输时隙组成, 在某个时隙分配给特定节点用来发送数据。 除相应的接收节点外, 其他节点在此时隙内处于睡眠状态, 随机访问阶段由多个连续的信令交换时隙组成, 用于处理节点的添加、 删除以及时间同步等。第14章的协议51 51为了进一步节省能量, 在调度访问阶段, 每个时隙又细分为控制时隙和数据传输时隙。 控制时隙相对数据传输时隙, 其长度较短

28、。 如果节点在其分配的时隙内有数据需要发送, 则在控制时隙发出控制消息, 指出接收数据的节点, 然后在数据传输时隙发送数据。 在控制时隙内, 所有节点都处于接收状态。 如果发现自己不是数据的接收者, 节点就进入睡眠状态。 只有数据的接收者才能在整个时隙内保持在接收状态。 这样就可以有效减少节点接收不必要的数据。 DEANA协议的时间帧分配如图14.2.2所示。 第14章的协议5252图14.2.2 DEANA协议的时间帧分配第14章的协议535314.2.3 TRAMA协议协议1. NP协议 NP协议在随机访问周期内执行, 节点通过NP协议以竞争方式使用无线信道。 协议要求节点周期性通告自己的

29、节点编号ID, 是否有数据需要发送以及能够直接通信的邻居节点的相关信息, 并实现节点之间的时间同步。第14章的协议5454在TRAMA协议中每个节点有唯一的节点编号ID。 节点根据编号独立计算其两跳内所有节点在每个时隙上的优先级, 节点u在编号为t的时隙内的优先级计算公式为priority(u, t)=hash(u + t) (14.2.1) 由于节点间获取的邻居节点信息是一致的, 每个节点独立计算在每个时隙上各个节点的优先级也是一致的, 因此, 节点能够确定每个时隙上优先级最高的节点, 从而知道自己在哪些时隙上优先级最高。 节点优先级最高的时隙称为节点的赢时隙。第14章的协议55552. S

30、EP协议调度信息的产生过程如下: 节点根据上层应用分组的速率, 首先计算它的调度间隔Tinterval(Tinterval代表一次调度对应的时隙个数), 然后, 节点计算在t, t+Tinterval内它具有最高优先级的时隙; 最后, 节点在赢时隙内发送数据并通过调度消息告诉相应的接收者。 如果节点没有足够多的数据需要发送, 应及时通告放弃赢时隙,以便其他节点利用。 在节点的每个调度间隔内, 最后一个赢时隙预留给节点广播它的下一个调度间隔的调度信息。 第14章的协议5656由于节点间保持了一致的两跳邻居拓扑结构, 因而可以将邻居节点按照节点ID的升序或降序排列, 并采用位图(Bitmap)指定

31、接收者。 位图中的每一位代表一个邻居节点, 需要该节点接收信息则将该节点的对应位置置l, 这样可以方便地实现单播、 广播和组播。第14章的协议5757节点将放弃的赢时隙位图置为全0。 最后一个非0时隙称为变更时隙(Changeover Slot)。 节点通过调度分组广播其调度信息。 调度分组的格式如图14.2.3所示, 其中, SourceAddr是发送调度分组的节点编号; Timeout是从当前时隙开始本次调度有效的时隙个数; Width是邻居个数, 也就是邻居位图的字节长度; NumSlot是赢时隙的个数。第14章的协议5858图14.2.3 TRAMA协议中调度分组格式第14章的协议59

32、59节点采用携带技术在发送数据分组中携带节点调度摘要, 以减少调度分组在广播过程中丢失分组所造成的影响。 调度摘要包括Timeout、 NumSlot以及接下来的一个赢时隙的位图。 该赢时隙既可以解决调度分组丢失问题, 也可以实现调度变更。 如发送给节点2、 3, 现只想发送给3, 则可以在最近一个数据分组中修改赢时隙的位图(变更部分中的0010表示3)。 第14章的协议6060出于多种原因, 节点可能改变自己的调度, 如调度分组宣布放弃的赢时隙可能不再放弃等。 在一个节点的变更时隙, 其所有的邻居节点都要处于接收状态, 来同步它们关于节点的调度信息。 为了防止调度信息的不一致和发送调度分组时

33、产生的冲突, 节点只能在当前调度时隙内的最后一个赢时隙广播下一个调度间隔的调度信息。 第14章的协议61 613. AEA算法节点有发送、 接收和睡眠三种状态。 在调度访问周期内的给定时隙,当节点有数据需要发送, 并且在竞争信道中处于最高的优先级时, 它处于发送状态, 当节点是当前发送节点指定的接收者时, 它处于接收状态; 其他情况下, 节点处于睡眠状态。 每个节点在调度周期的每个时隙上运行AEA算法。 该算法根据当前两跳邻居节点内节点的优先级和一跳邻居的调度信息, 决定节点在当前时隙的活动策略为发送、 接收还是睡眠。 第14章的协议6262以下引入AEA算法的相关术语。 N1(u): u的直

34、接邻居集合。 N2(u): u的两跳邻居集合。 CS(u): u的竞争节点集合, 包括u、 N1(u)和N2(u)中的节点。 tx(u): 绝对胜者(Absolute Winner)集合, 是CS(u)中优先级最高的节点。 第14章的协议6363atx(u): 相对胜者(Alternative Winner)集合, 是u和其直接邻居中优先级最高的节点。 PTX(u): 可能发送节点集合(Possible Transmitter set), 是u及其直接邻居中满足以下公式的优先级最高的节点, 但不包括atx(u)节点。 在(5.4.6)中, y是u的一个直接邻居,其优先级大于u的所有两跳邻居节点

35、的优先级。 第14章的协议6464prio(y)prio(u) x, yN1(N1(y) and x N1(y)(14.2.2) NEED(u): 需要竞争节点(Need Contender Set), u和PTX(u)中需要额外时隙的节点。ntx(u): 需要发送者(Need Transmitter), NEED(u)中优先级最高的节点。 在TRAMA协议中, 节点间通过NP协议获得一致的两跳内的拓扑信息, 通过SEP协议建立和维护发送者和接收者的调度信息, 通过AEA算法决定节点在当前时隙的活动策略。A第14章的协议6565TRAMA协议通过分布式协商保证节点无冲突地发送数据, 无数据收发

36、的节点处于睡眠状态; 同时, 避免把时隙分配给没有信息发送的节点, 在节点节省能量的同时, 保证了网络的较高数据传输速率。 但是, 该协议要求节点有较大的存储空间来保存拓扑信息和邻居调度信息, 需要计算两跳内邻居的所有节点的优先级, 并且运行AEA算法。 TRAMA协议适用于周期性数据收集或监测WSN方面的应用。 第14章的协议6666AEA算法的伪代码描述如下: 1: 计算tx(u), atx(u)和ntx(u)2: if (u-tx(u) then /u是绝对胜者3: if (u在调度分组中通告在时隙内发送数据) then4: let u.state=TX (发送状态)5: let u.r

37、eceive=u.reported.rxId6: 发送数据, 更新通告的调度信息7: else if (u在调度分组中放弃该时隙) then第14章的协议67678: call HandleNeedTransmissions9: endif 10: else if (tx(u)N1(u) then u的一跳邻居是绝对胜者11: if (tx(u)在调度分组中放弃该时隙)then12: call HandleNeedTransmissions13: else if (tx(u)在调度分组中通告接收者为u)then14: let u.mode=RX(接收状态)15: else 16: let u. mode=SL (睡眠状态)第14章的协议686817: 更新tx(u)的调度信息18: endif19: else /u的两跳邻居是绝对胜者20: if (atx(u)与tx(u)不是两跳内的邻居, 而且atx(u)PTX(u) then21: call HandleNeedT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论