无线自组织应急通信网络的多信道介质访问控制
扫描二维码
随时随地手机看文章
随着无线技术和网络技术的发展,应用无线自组织网络技术构造应急通信网络将成为今后发展的趋势。既有研究表明多信道介质访问控制可以有效地提高网络的通信能力,因此,需要研究适合无线自组织应急通信网络的多信道介质访问控制机制。在IEEE 80.11[1]标准中已经定义了多信道的通信模式。在有关IEEE 802.11的介质访问控制的研究中,通信模式或者是基于竞争方式的多信道、或者是基于单一控制信道的时分复用。使用多信道改善通信性能已经成为无线通信领域的共识,但是如何配置、控制和使用多信道,仍然是一个值得研究的问题。
1 多信道控制模式
在无线数据通信中,信道复用技术用于控制如何分配或使用信道。典型的复用技术包括:载波感知多址接入(CSMA)、竞争方式和时分复用访问(TDMA)、码分复用(CDMA)。在已知的网络中,卫星通信的ALOHA系统和无线以太网的CSMA/CA为竞争方式的代表;GSM、TD-SCDMA和WiMAX 为时分复用方式的代表。基于Wi-Fi的多信道研究有两种方式:其一是两个或多个同样的竞争信道;其二是指定一个信道为控制信道,其他信道为数据通信信道。既有的关于多信道的研究表明:对于存在多信道的通信系统,当信道数到达某个临界值时,系统的吞吐率不再随信道数量的增加而增加。如何最合理最有效地利用多信道的通信能力,使网络和应用呈现更好的可扩展性成为重要的课题。
在过去的20多年中,人们多从系统的角度设计无线通信系统。为提高无线通信系统传输能力,多信道技术,特别是多个无线载波方式,受到极大重视。在现在比较流行的IEEE标802.11标准体系中[2-3],出现了BAPU、DBTMA和DCMA等双信道和Multiple Channel CSMA和DCA-PC等多信道技术[4-6]。
在一般的商用通信系统中,一般包括一个公共控制信道和一群业务信道,例如:ISDN/SS7、GSM/GPRS/HSDPA。无论在核心网络中,还是在无线环路中都有相同的控制模式。为了提高通信系统的效能,一个重要的研究课题就是:在无线数据通信系统中,公共控制信道和业务信道的关系和控制模型如何确定才能够满足特定的组网要求。
本文研究一种多信道控制模型。该模型的控制模式是为了满足应急通信的信息快速融合的需要而建立的。该模型提出多信道控制算法。在同时4路接收的多信道并行传输的机制中,一个节点在一个时隙内既能够占用一个信道发送数据,又能够同时接收来自其他4个节点在不同信道上的4路数据。多信道手法是一种特定的多信道通信模式。确定这种多信道控制模式,对建立信息汇聚、融合的无线数据通信有很明显的帮助。
2 多信道资源分配算法
自组织应急通信网络媒体访问控制(MAC)技术重点在于动态分配资源和区分优先级的服务质量。动态分配资源主要包括:动态地分配时隙,使得空闲的时隙能够被发送请求数较多的节点充分利用;动态地分配信道,使得节点能够灵活使用多信道机制,实现快速信息融合所需要的多路接收一路发送的通信能力。区分优先级的服务质量主要包括:对分组区分优先级,始终保障最高优先级的服务质量;其他优先级按比例分配带宽,该分配比例能够灵活调整;高负载时性能下降相对平缓。
本文的多信道资源分配算法参考IEEE 802.16中Mesh网络的MAC层机制。该控制机制采用TDMA的组网方式,节点通过请求/响应的方式来接入媒体,其中集中控制方式同样支持Ad hoc网络的集中式MAC资源调度和管理。IEEE 802.16协议支持不同的服务水平,从企业级的高质量服务到家用型的尽力而为服务都有定义。协议通过集中调度来支持时延敏感业务,如话音和视像等。由于确保了无碰撞数据接入,IEEE 802.16的MAC层改善了系统总吞吐量和带宽效率,并确保数据时延受到控制。TDMA接入技术还使支持多播和广播业务变得更容易。IEEE 802.16系统的QoS机制可以根据业务的实际需要来动态分配带宽,具有较大的灵活性。Mesh模式的QoS机制还需要进一步研究和完善,可以借鉴其他模式下较成熟的QoS机制对Mesh模式进行补充和改进。
本文提出的资源分配算法处理流程包括了5个重要过程:
(1)获取节点请求列表过程
(2)请求分类缓冲过程
(3)请求队列截取过程
(4)资源分配过程
(5)节点使用分配结果过程
5个过程的顺序处理关系如图1所示。
其中的(1)和(5)这两个过程不属于资源分配算法的核心内容,但在资源分配总过程的数据流处理中担当了重要角色。资源分配总过程数据流如图2所示。即(1)过程产生算法输入数据,(5)过程使用算法输出数据。
2.1 获取节点请求列表过程
获取节点请求列表过程可以划分为几个时隙(数量通常等于节点数量),每个节点查看自己的MAC优先级队列中各个优先级是否有分组要发送,有的话就生成一定数量的请求状态信息(每一个请求状态信息对应于MAC优先级队列中的一个分组,包含了该对应分组的一些特征信息摘要,网控中心进行资源分配时需要用到这些信息)。节点生成的所有请求状态信息会在某个小时隙中发送给网控中心节点,作为资源分配算法的输入。请求状态信息所包含的内容如表1所示。
MAC优先级队列是由各个节点独立维护的一个区分优先级的分组缓冲区,可以认为是一个按优先级索引的多链表结构,用于缓冲上层协议实体传输下来的分组。该队列能够在每帧开始的请求前导阶段按照MAC的要求,查看缓冲区的内容并生成一定数量的请求状态信息返回给MAC;然后在数据时隙阶段,根据MAC得到的分配结果从缓冲区里取出正确的分组返回给MAC并发送。
获取节点请求列表:每个节点的MAC协议实体查看优先级队列里的缓冲分组。MAC指定一个数值作为优先级队列能够生成的请求状态信息个数的上限,队列据此数值控制发给网控中心的请求信息的总大小。另外,由于每个请求对应一个待发送分组,提交多个请求就意味着节点可能根据网络忙闲状况在一个时帧里获得多次发送机会,从而具备实现动态时隙使用的基础。优先级队列将这些请求状态信息返回给MAC,MAC获得此信息后,在请求前导阶段某个时间将它们封装成为一个请求分组,发送给网控中心节点。[!--empirenews.page--]
2.2 请求分类缓冲过程
请求分类缓冲过程用于对获取节点请求列表过程中接收到的所有节点的请求状态信息进行区分优先级的缓冲,并统计各个优先级的请求数以及总的请求数。此过程的关键内容是网控中心具有一个总请求状态信息缓冲区,其为每个优先级准备一个独立的请求状态信息队列,包含不同优先级信息的请求将缓存到对应优先级的队列中。请求分类缓冲过程如图3所示。
图上的n表示节点总数,优先级数目示例为3个,NULL表示该节点的请求已经分类完或者该节点没有任何请求。从该图可以看出请求分类缓冲过程是将各节点的请求状态信息列表依次拆解为数个请求状态信息,并按照它们的优先级分别缓存到对应的优先级队列中。
请求分类缓冲过程:在网控中心获得所有节点请求状态信息后,算法按照一定的顺序依次处理每个节点的所有请求状态信息。判断是否有节点的请求还未处理完毕,是的话取得一个未处理的节点的所有请求状态信息,根据该请求状态信息的优先级序号将其缓存对应的优先级队列中适当位置,对应优先级的请求计数器和总请求计数器分别加1。当所有节点的请求均分类缓冲完成,整个过程结束。
2.3 请求队列截取过程
请求队列截取过程使用请求分类缓冲过程生成的总请求状态信息缓冲区和请求计数器值,在缓冲区中的请求总数大于数据时隙能够提供的最大发送机会时执行。
发送机会是指能够满足节点进行一次完整发送过程的时机,在多信道环境下为某一信道上的某一数据时隙,可用二元组<时隙,信道>表示。最大发送机会是指多信道环境下所有数据时隙能够提供的发送机会的总和,即最大发送机会=数据时隙数×信道数,它代表了当前时帧结构下全网络一帧能够提供给节点的最大发送次数。当总请求数超过最大发送机会时,当前的请求中将会有一部分得不到满足。请求队列截取过程即是用来决定哪些请求能够被满足,哪些需要被丢弃。采取优先级比例预留进行请求队列的截取。算法事先配置并存储好优先级预留比例数据,用于计算预留给对应优先级的发送机会数。
例如,3个优先级算法,优先级从高到底(优先级号从0到2)的预留比例配置为:1.0、0.6、0.3。其中最高优先级0的比例是1.0,表示该优先级为强制满足的优先级,属于该优先级的请求应该在截取过程中尽量保留而不被丢弃;优先级1和优先级2的比例都小于1,表示它们需要进行正常的按比例截取。通过上述优先级比例预留策略,可以限制各个优先级在网络繁忙时占用的带宽上限,以此实现了优先级带宽按比例预留的要求。
请求队列截取过程:请求分类缓冲过程执行完毕后,所有节点请求已经缓存到对应优先级队列中。判断请求总数是否大于最大发送机会数,如果是则使用优先级预留比例,计算出各个优先级超出预留发送机会的个数。依次截取(丢弃)各个优先级中超出预留发送机会数的那一部分请求。当各个优先级的实际请求数的超额部分已经全部截取完毕,但此时如果总数仍然大于发送机会数,则需要进一步截取。当各个优先级能够满足的请求个数之和已经等于或小于最大发送机会数,无需再截取。记录截取结束,结果供资源分配过程使用,过程结束。
2.4 资源分配过程
资源分配过程使用请求队列截取过程截取后的各个优先级的实际发送机会数,从最高优先级开始依次为每个优先级分配数量等于该优先级的剩余请求个数的二元组<时隙,信道>资源,并在分配过程中进行收发控制。
资源分配策略是指为各个优先级的剩余请求分配MAC资源时所采取的策略。从区分优先级的服务角度来看大体可分为两种策略:间隔分配策略和连续分配策略。由于间隔分配策略是同一优先级的请求间隔发送,可以在一定程度上减少突发信道干扰对某一优先级数据的影响,因此我们采用间隔分配策略。间隔分配策略即将各个优先级的请求以间隔的方式依次分配到各个时隙中。分配后各个优先级的请求比较“均匀”地分布在时帧中,高优先级和低优先级请求的发送顺序没有明显地被区别对待。
节点收发控制用于限制节点在同一个时隙中接收和发送的数据流数。多信道环境下,节点可以在一个时隙内使用不同的信道同时进行数个收发过程。假设网络具有5个不同子频率所对应的信道,则理论上一个节点可以在同一时隙接收或发送5路数据流。这违背了节点的物理设备的“四收一发”限制,即一个节点在同一时隙内最多只能接收4路同时发送1路数据。所以需要在资源分配的时候在每个时隙上控制节点的收发次数。为此,资源分配过程通过网控中心维护一个记录节点收发状态信息的数据结构,称为“节点收发状态表”。网控中心在进行资源分配的时候便可以根据其中内容判断是否将当前请求分配到某个时隙上。
资源分配过程:请求队列截取过程执行完毕后,网控中心已经知道了为各个优先级实际提供的发送机会数。初始化“节点收发状态信息表”,之后,按照各个优先级实际提供的发送机会数请求分配<时隙,信道>二维资源。如果当前缓冲区中还有请求没有被分配,且还有可用数据时隙,则按照从高优先级到低优先级的顺序,循环取到某个优先级的请求队列。若该优先级已经被分配的请求个数达到了实际提供的发送机会数,该优先级仍有未被分配的请求且当前还有空闲信道,则获取该优先级请求队列的一个未被分配资源的请求。判断该请求分配到当前时隙上是否满足节点收发控制的要求,如果满足就为该请求分配当前时隙上的一个空闲信道,并将请求的部分信息以及分配到的<时隙,信道>资源保存为资源分配结果;否则暂时“跳过”该请求。空闲信道标号超出信道数范围,表示当前时隙上所有信道资源已经被分配完毕,将可用时隙标号增加1以指向下一个可用时隙。当所有的请求都已经被分配资源,或者已经没有可用的数据时隙,资源分配过程结束。源分配过程如图4所示。
2.5 节点使用分配结果过程
节点在响应前导阶段接收到网控中心广播的资源分配结果后(资源分配结果所包含的内容如表2所示),使用分配结果信息决定节点自己是否能够实际发送分组,能够发送哪个/哪些分组,以及用什么时隙/信道发送分组。
节点使用分配结果过程:响应前导阶段节点接收到网控中心的资源分配结果,数据时隙阶段开始,之后,节点使用分配结果进行分组发送和接收。每个时隙来临时,MAC根据分配结果中的时隙标识(ID)和源节点ID判断该时隙是否分配给了自己,是的话就向优先级队列确认分组。优先级队列使用分配结果中的目的节点ID和优先级ID,判断该发送机会具体分配给哪一个分组,然后将该分组返回给MAC。MAC确认分组后,使用分配结果中的信道ID,在该信道上将分组发送出去。接收节点使用分配结果中的时隙ID和目的节点ID,判断自己是否需要在该时隙接收分组,然后在信道ID标识的信道上接收分组。目的节点成功接收分组后,源节点将分组从优先级队列的缓冲区中删除,过程结束。
3 算法分析
优先级的动态TDMA算法融合SPMA接入方式,通过推迟低优先级数据的发送,为高优先级数据预留部分资源来实现流量控制。要求通信节点数量小于时隙数量的条件成为MAC算法的制约。从多信道和优先级机制共同存在带来的开销和效率问题需来考虑,将对集中式和分布式的时隙分配和调度建立节点规模较大的网络的控制模型和算法,并且建立<时隙,信道>二维资源高效的分配和调度算法。
MAC处理软件应用了自适应的原理,但是没有涉及认知无线网络技术。我们将认知无线网络技术引入到应用模式中,研究了MAC层多信道控制、多信道和时隙分配与调度算法。建立了具备认知功能的移动节点体系结构和组成模型,定义多信道环境下的时隙分配与调度算法。
4 结束语
本文研究了一种用于无线自组织应急通信网络的多信道介质访问控制机制,实现了资源动态分配(动态分配时隙和动态分配信道)、区分优先级服务、按优先级比例分配带宽。但是,仍然存在一些尚未解决的问题,需要进一步改进。
算法目前使用的请求状态信息的结构比较简单,有关分组的信息量也较少,且主要根据优先级来分组。今后可以考虑增加请求信息的内容以完善分配机制。
算法目前还没有解决优先级机制带来的预留比例灵活调整的问题。今后可以考虑加入自适应的优先级预留比例调整机制。另外,多信道和优先级机制共同带来的开销和效率问题在目前的算法中仍然存在,<时隙,信道>二维资源如何更高效的分配仍然值得进一步的研究和完善[7-9]。
IEEE 802.16工作组在建立无线自组网络的研究方面相当活跃。本文研究的资源分配算法是以IEEE 802.16协议的Mesh网络MAC为基础地。如何将IEEE 802.16协议更有效的运行在多信道环境下,以及如何与相关算法更好地结合值得进一步深入研究。