本发明涉及无线通信领域,更具体地涉及到无线Ad Hoc网络(也称移动对等网络、无线自组网络等)中各节点之间互连的拓扑结构的实现方法。
背景技术:
无线Ad Hoc网络是由多个带有无线收发功能的终端节点共同组成的,它们之间的通信并不需要固定的网络基础设施(例如基站或热点)的支持,每个终端节点可以和无线射频范围内的其他节点直接通信,并且能够通过节点间信息转发(跳)实现更远距离通信,网络中的节点能够自由移动,网络的无线拓扑结构可以随意变化并且无法预知。一般来说,Ad Hoc网络中节点间的路由包含多跳(多次转发),因此这种网络也称多跳无线Ad Hoc网络。
现有的无线Ad Hoc网络主要有这三种技术实现:Wi-Fi、ZigBee和蓝牙(Bluetooth,BT)。
1)Wi-Fi的标准是IEEE 802.11,MAC协议是基于CSMA/CA(载波监听多路访问/带有冲突避免)的方案,非常简单,是实现单跳Ad Hoc网络的良好平台。WiFi不是为无线自组网络开发的,尽管在开发IEEE802.11时保持了Ad Hoc模式,但这种Ad Hoc模式只适用于简单的点对点连接,在实现多跳Ad Hoc网络遇到很大挑战,目前还没有比较成熟的解决方法。
2)ZigBee是标准IEEE 802.15.4技术的商业名称,IEEE 802.15.4标准的信道接入方式也采用了CSMA/CA机制,标准中虽然定义了星型和端对端两种拓扑工作模式,但是这两种模式都需要通过协调器(PAN,Personal Area Network)协商来实现节点间的通信,目前标准只明确定义了星型拓扑结构中的报文交换和操作,没有详细定义端到端拓扑结构的操作,在大规模的网络中,所有节点不可能使用同一个PAN协调器,虽然标准允许PAN协调器之间的通信,但也没有对该通信方式进行明确定义。
3)蓝牙是由爱立信、IBM、INTEL、诺基亚、东芝5家公司联合制定的近距离无线通信技术标准,采用时分双工(TDD)方式来避免冲突,有完善的微微网及散射网构成的解决方案,被认为是无线Ad Hoc网络中最有希望使用的技术之一。蓝牙微微网络拓扑模式和ZigBee星型拓扑模式非常类似,其中一个节点承担通信主节点角色,其他为从节点,所有通信都是通过主节点来实现,主节点还负责提供微微网时钟同步信号,并且确定安排各节点的通信信道。微微网之间通过主节点-主节点、网关从节点和中间网关三种方式互连,构成规模更大的散射网。图1中5个微微网组成一个互相连接的散射网示意了这三种方式的互连。图中五边形表示主节点、小圆表示从节点、包围主节点的虚线大圆表示其传播范围。微微网A和B示意了主节点-主节点的连接方式,当两个主节点1和2相邻并且 互连是通过将其中一个主节点作为另一个的从节点来实现的。微微网B和C示意了网关从节点的连接方式,它们通过各自的从节点5来连接,只要有可能,网关从节点是微微网互连的首选。微微C和D通过相邻的一对从节点6和7(中间网关)连接,互连要求中间网关中的一个节点(图1中节点7)成为新微微网中的主节点,从而产生了额外的微微网E。
本发明中设计的新的节点互连方式属于一种平面型结构模型,节点之间采用端对端连接方式互连,网络中所有节点地位平等,通过这种创新的网络拓扑控制技术可以克服了目前无线Ad Hoc网络中部分节点多重角色而导致任务过重的缺点,而且可以降低整体网络的能量消耗。
技术实现要素:
本发明所描述的Ad Hoc网络中的所有节点地位平等,节点间采用端对端直接连接方式互连,通过安排节点的发送信道和控制节点信号发射功率来建立网络中各节点之间的连接,实现互连互通。网络拓扑结构示意图如图2所示,根据图2示意统一定义下列几个术语。
邻居节点:和参考节点直接相连的节点的集合。图2中以F节点为参考,和它直接相连的节点G、I、H、E称为节点F的邻居节点。
一跳节点:在多跳网络中,邻居节点也称一跳节点,是同一个概念。
二跳节点:在多跳网络中,和参考节点的一跳节点直接相连的所有节点中,去除一跳节点及参考节点本身后剩下的节点的集合。图2中还以F节点为参考,图中的B、D、J、K节点称为F节点的二跳节点。同理可以得出,节点A、C、L为F节点的三跳节点。随着网络规模扩大,以此类推,参考节点F会有四跳、五跳等节点。
一跳连接:参考节点和一跳节点之间的连接称为一跳连接。同理,相对于参考节点,一跳节点和二跳节点之间的连接称为二跳连接,二跳节点和三跳节点之间的连接称为三跳连接,等等。
在本发明所描述的Ad Hoc网络中,由于参考节点的周围节点的分布情况不同引起的干扰差异,以及不同节点的发射功率不同,导致有些节点间出现单通的情况,只有一方能接收到另一方的信息。根据图3示意,定义两个术语。
双向连接:网络中的节点双方都能直接收到对方信息的数据连接,称为双向连接。如图3中A图示意的节点1和节点2之间的连接。图中包围节点的虚线大圆表示其信号传播范围。双向连接的节点双方可以通过信息交互精确地测量出双方之间的距离。
单向连接:网络中的节点双方只有一方能直接收到对方信息的数据连接,称为单向连接。如图3中A图示意的节点2和节点3之间的连接,由于各自信号传播范围不同,导致只有节点3能收到节点2的信号,而节点2则不能直接检测到节点3的存在。图3中B图示意了另一种单通连接的情形,虽然节点2和节点3都在对方信号覆盖范围内,但由于节点2周围分布节点的干扰较大,导致节点2不能正常接收到节点3的信息,形成单向连接。单向连接的双方没有信息交互,图3中只有节点3能够通过接收节点2的信息中的发射功率和接收检测到的功率的比值大小来估算对方的距离,而且也只有节点3能通过增大发射功率来建立双向连接。
本发明所描述的Ad Hoc网络中系统整个无线信道的资源是有限的,总共有M个信道。网络中的节点的模块原理框图如图4所示,拥有一个发送通道和N个接收通道,节点可同时和周围K个邻居节点建立双向连接,接收通道的数量N大于K、不大于M,剩余通道((N-K)个)继续用于轮流监测系统全部的M个无线信道的状态。同一个信道可以通过节点发射功率控制在不同的空间位置被不同的节点复用,这样用有限的信道资源可以构建更大的网络。新节点在加入网络之前不发送信号,在系统全部的M个无线信道上搜索周围节点,只接收周围节点信号,和周围节点没有信息交换,所以节点只能根据每个信道上周围节点发送功率和各自检测到的接收功率的比值大小来估算周围节点的距离远近,事实上是一种单向连接。新节点加入网络的过程及发送信道的安排方法如下:
1)新节点没有搜索到周围有其他节点存在,这种情况下新节点可以选择M个系统信道中任意一个作为自己的发送信道,并以最大功率发射信号。为了节省能量,新节点也可以周期性地以最大功率来发送信号,尽最大能力给周围最大范围的节点发送连接信号,详细的功率控制方法见后续的节点功率控制部分。
2)新节点搜索到周围有节点存在,新节点接收周围节点发送的数据信息,以新节点本身作为参考,分析一跳节点和二跳节点的无线信道占用情况,选择M个系统信道中没有被占用的信道作为本节点的发送信道。再根据每个信道上周围节点发送功率和检测到接收功率比值的大小来估算周围节点的距离远近。为了使新节点的加入对现有网络的影响最小,而且基于尽快同步的要求,新节点以估算好的发射功率(加上可靠连接的容限值)和搜索到的周围最近节点先建立双向连接,加入网络。
3)节点信道的安排原则是保证任何参考节点以及它的一跳节点不能占用相同的信道,即同一信道可以安排给相隔两跳连接的不同节点使用。由于网络中节点的随意移动,网络的无线连接的拓扑结构会不断变化,所以加入网络后的节点要实时检测一跳节点和二跳节点的无线信道占用情况,当检测到信道冲突时,比较节点当前发射功率大小,发射功率大的节点维持不变,发射功率相等或小的节点重新安排新的无线信道,发射功率暂时不变。
本发明所描述的Ad Hoc网络中的节点可以通过自带的定位模块直接知道自己的位置,再通过节点间信息交互知道周围节点的相对位置。如果没有定位模块的辅助,网络中的节点可以信息交互来彼此知道周围节点发送功率和检测到的接收功率比值的大小来估算各节点间的距离,或通过测量节点间信息交互的时延值比较精确地得出节点间的距离,再基于三角法计算出各节点间的相对位置。本发明的拓扑控制技术中用到的节点间相对位置的两个参数为:1)参考节点到检测到的周围节点的距离。2)以参考节点为原点、以和最近的一跳连接重叠的射线为角度的参考零度(或其他一个确定的角度值),检测到的周围节点和参考节点连线相对于参考零度的角度大小,所有角度必须统一是顺时针或逆时针方向。如图5所示,节点u为参考节点,节点i、v、w、x为参考节点u检测到的周围节点,因为节点i距离参考节点u距离最近,所以定义节点u和节点i的连线为角度的参考零度基准,其他节点相对于参考零度的角度如图5中的逆时针方向的弧形箭头所示。
无线Ad Hoc网络中的节点允许自由移动,导致网络的无线拓扑结构可以随 意变化并且无法预知,因此加入网络后的节点要时刻测量和掌握周围节点位置的变化,实时控制调整自己的发射功率,确保和周围相关节点建立可靠的双向连接,从而保证整个网络的连通性要求。网络中任一参考节点的发射功率控制流程如下:
1)参考节点实时检测和发现周围节点,根据离参考节点的距离大小,从小到大将各节点排序。
2)以参考节点为中心、以和最近的一跳连接重叠的射线为角度的参考零度(或其他一个确定的角度值),顺时针或逆时针方向引R-1条射线将平面等分R个扇型区域,R不小于6。
3)根据各节点相对于参考零度的角度大小,将按1)排好序的节点(按距离从小到大的顺序)一个一个地放入2)等分好的扇型区域所对应角度范围的集合中。同时检查各扇型区域中节点的分布情况,当平面上每个扇型区域都有节点放入时就停止放置节点,否则继续放置,直至放完所有检测发现到的节点。
4)保留每个扇型区域中最先放入的节点(离参考节点距离最近的节点),删除其他节点。
5)参考节点以平面上剩余节点中距离最远者为参考,实时控制自己的发射功率和平面上的剩余节点建立双向连接。
上述流程中有两种例外情况:第一种情况是上述步骤的1)检测发现周围节点时,没有发现周围有其他节点;第二种情况是上述步骤的3)按要求放置节点时,直到放完所有能检测发现到的节点,平面上还有空白扇型区域没有放入节点。第二种情况的这类节点通常分布于网络的边界附近,被称为边缘节点(BoundaryNode),边缘节点在网络中除了保持和网络内部节点的连接外,还需要加大发射功率尝试和网络外的节点建立新的连接,而加大发射功率就会干扰网络内部节点间的通信,为了使干扰的影响被控制在有限的范围内,边缘节点不能简单地以节点最大功率发射,它的发射功率的最大值由平面上最大的连续空白的扇型区域的个数T值的大小确定(也可以用节点跨过连续空白的扇型区域的夹角表示T值),T值越大,节点允许发射的功率越大,直至节点的最大发射功率。第一种情况的节点可以认为T值最大,等于R(或360°),以节点最大功率发射。这样上述两种情况可以合并,统一到一套流程上来控制节点的发射功率。确定参考节点发射功率值的大小还要和当前的网络状态相关,这里以一跳或几跳范围的覆盖功率来设置参考节点的发射功率,直至节点最大的发射功率。
同时为了节约能量,上述两种情况的节点不能一直以要求的最大功率发射,可以采用间歇性地以各自要求的最大功率来发射,然后再回退到最小功率,当然这样处理在一定程度上会延长节点可能和外界建立新连接的时间。第一种情况节点的最小功率可以是节点能发射的最小功率,第二种情况的边缘节点的最小功率是当前保持和网络内部节点的连接所需要的功率。采用间歇性发射的时间周期由系统设计时确定最大值为P,发射的持续时间L和P的比值(即占空比)由下面两个参数确定:第一个参数是整个网络的规模期望支持连接节点的数量Z,第二个参数是当前的参考节点已连接的网络中节点的数量S。S越小,节点发射占空比越大,S的最小值为1,是一个孤立的节点,这时占空比可以设定达到1(100%)。当S越大,达到和Z可以比较的数量级时,比如达到Z的四分之一、三分之一或二分之一等等时,占空比逐渐变为零,这时网络中的边缘节点不再主动尝试和网络外的节点建立新的连接,当然它还能接受靠近它的新节点接入网络。总之, S越小,尝试和外界建立新连接的主动积极性越高,当S=1时,T值也最大,等于R,节点以最大功率,甚至持续发射信号,尽最大力量来寻找和发现周围新节点。随着连接的节点数目增加,S值越来越大,T值会变小,发射功率受限,发射占空比也变小,网络中的边缘节点的这种主动积极性逐渐变弱,直至消失。
本发明方案介绍的无线Ad Hoc网络拓扑结构的控制技术,主要包括节点无线信道的安排方法、参考节点对周围节点的选择和连接方法以及网络边缘节点的发射功率控制方法,这三方面与现有无线Ad Hoc网络拓扑结构的控制技术比较都具有新颖性。在采用本发明的方案控制无线Ad Hoc网络拓扑结构过程中,各节点需要的知识范围较小,只需要掌握两跳范围内各节点状态信息,节点间控制信息通讯负担低,支持节点自由移动,网络可扩展性强。
附图说明:
图1蓝牙系统中微微网互连组成散射网示意图;
图2本发明所描述的无线Ad Hoc网络拓扑结构示意图;
图3无线Ad Hoc网络中的节点间单向连接和双向连接示意图;
图4无线Ad Hoc网络中节点功能模块原理框图;
图5无线Ad Hoc网络中节点相对位置定义示意图;
图6本发明具体实施例中平面等分方法示意图;
图7本发明具体实施例中连续空白区个数T值对应的节点功率表格;
具体实施例:
下面以一个具体的无线Ad Hoc网络系统来说明本发明介绍的网络拓扑结构的控制技术的工作过程。
设定无线Ad Hoc网络期望支持的最大节点个数Z为1000,系统中整个无线信道总共有31个,如图4所示的节点的模块有一个发送通道和16个接收通道,系统限定任意节点只能同时最多和周围6个邻居节点建立双向连接,至少剩余10通道用于轮流监测系统全部的31个无线信道的状态。新节点在加入网络之前不发送信号,在系统全部的31个无线信道上搜索周围节点,只接收周围节点信号。新节点加入网络的过程及发送信道的安排方法如下:
1)新节点没有搜索到周围有其他节点存在,这种情况下新节点可以选择31个系统信道中的任意一个作为自己的发送信道,并以最大功率发射信号。为了节省能量,新节点也可以周期性地以最大功率来发送信号,详细的功率控制方法见后续的节点功率控制部分。
2)新节点搜索到周围有节点存在,新节点接收周围节点发送的数据信息,以新节点本身作为参考,分析一跳节点和二跳节点的无线信道占用情况,选择31个系统信道中没有被占用的信道作为本节点的发送信道。再通过消息内容知道某个节点的发射功率,同时该信道可以测量出该节点发送的信号到达时的接收功率,通过计算它们比值大小来估算该节点的距离远近,同样的方法可以估算周围其他节点的距离。选择最近距离的节点,估算好发射功率(加上可靠连接的容限值)和它建立双向连接,加入网络。
3)加入网络后的节点要实时检测一跳节点和二跳节点的无线信道占用情况,当检测到信道冲突时,比较节点当前发射功率大小,发送功率大的节点维持不变,发送功率相等或小的节点重新安排新的无线信道,发射功率暂时不变。
该系统中的节点没有定位模块的辅助,网络中的节点需要通过信息交互来彼此知道周围节点发送功率和检测到的接收功率比值的大小来估算各节点间的距离,或通过测量节点间信息交互的时延值比较精确地得出节点间的距离,再基于三角法计算出各节点间如图5所示的角度。为了保证整个网络的连通性要求及适应网络拓扑结构的变化,加入网络后的节点要时刻利用这些距离和角度参数来控制调整自己的发射功率。网络中任一参考节点的发射功率控制流程如下:
1)参考节点实时检测和发现周围节点,根据离参考节点的距离大小,从小到大将各节点排序。
2)以参考节点为中心、以通过最近节点的射线为角度的参考0°,顺时针或逆时针方向引5条射线将平面等分6个扇型区域,每个扇形的夹角为60°,如图6所示。
3)根据各节点相对于参考0°的角度大小,将按1)排好序的节点(按距离从小到大的顺序)一个一个地放入2)等分好的扇型区域所对应角度范围的集合中。同时检查各扇型区域中节点的分布情况,当平面上每个扇型区域都有节点放入时就停止放置节点,否则继续放置,直至放完所有检测发现到的节点。
4)保留每个扇型区域中最先放入的节点(离参考节点距离最近的节点),删除其他节点。
5)参考节点实时控制自己的发射功率,与平面上的剩余节点建立双向连接。
6)计算平面上的最大的连续空白扇型区域的个数T值,根据T值查询图7的表格获得节点允许的最大发射功率。再查询当前节点的路由表确定当前网络连接节点的数量S,系统中两个节点可靠建立连接的时间是250ms,边缘节点间歇性发射的最大时间周期要求为10s,则最小的占空比为2.5%,系统设定S大于600以后,占空比为零,当前边缘节点间歇性发射的占空比q可由下列公式计算获得:
式中分母部分的除是整除,只取整数,(28+S)是为了只有当S=1时的占空比为1,需要判断S>600后,占空比为0。
综上所述,在本发明方案介绍的无线Ad Hoc网络拓扑结构的控制技术中,除了角度计算有点工作量,其余部分的计算量较小,而且对计算结果精度的要求也不高,所以可以采用近似或简化算法来减小计算量,在网络中节点移动速度不高且不太频繁的情况下不需要采用高性能的处理器。