CN101771941B - 多播通讯方法及使用此方法的中继节点与无线网络*** - Google Patents
多播通讯方法及使用此方法的中继节点与无线网络*** Download PDFInfo
- Publication number
- CN101771941B CN101771941B CN2008101903679A CN200810190367A CN101771941B CN 101771941 B CN101771941 B CN 101771941B CN 2008101903679 A CN2008101903679 A CN 2008101903679A CN 200810190367 A CN200810190367 A CN 200810190367A CN 101771941 B CN101771941 B CN 101771941B
- Authority
- CN
- China
- Prior art keywords
- node
- multicast
- bag
- member node
- via node
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明关于多播通讯方法及使用此方法的中继节点与无线网络***,其中该多播通讯方法适用于在无线网络中转传来自于第一成员节点的多播包给多个第二成员节点,其中第二成员节点与第一成员节点属于同一群组且彼此可经由多个非成员节点通讯。此多播通讯方法包括记录第二成员节点的数目与距离。此多播通讯方法也包括从第一成员节点中接收此多播包并且依据第二成员节点的数目与距离来决定一等候时间。此多播方法还包括在此等候时间期间监听是否有其它节点广播此多播包并且当有其它节点已广播此多播包给所有第二成员节点,则终止广播此多播包,反之,则在等候时间到期之后广播此多播包。
Description
技术领域
本发明涉及一种能够在减少耗电的前提下有效率地多播的多播通讯方法及使用此方法的中继节点与无线网络***。
背景技术
随着无线感测网络技术的日渐成熟,未来无线感测网络将广泛地应用于我们的生活中。以目前IEEE 802.15.4为基础的ZigBee标准为例,在ZigBee规格文件(Specification Document)中规范了多播(multicast)的方法,其可将讯息多播给属于特定群组的节点(node)。ZigBee标准所规范的多播方法包括非成员模式(Non-member Mode)以及成员模式(Member Mode)。非成员模式主要是以单方传播(unicast)的一对一(即,一个节点对一个节点)方式传送讯息包(message packet),而成员模式则是主要使用广播方式来传送讯息包。在一个多播通讯开始时,假设由起始节点指定一个特定群组为目标发出多播包(packet),其中起始节点会在发出多播包前判断本身是否属于此特定群组。若起始节点不属于此特定群组时,则起始节点会使用非成员模式将多播包传送给下一个节点,直到多播包传递至此特定群组的任一成员时,则传输方式将进入为成员模式并且以成员模式传输此多播包直到结束为止。具体来说,在ZigBee规格书中所提出的方法中会在讯息包中定义最大非成员范围(MaxNonMemberRadius)字段与非成员范围(NonMemberRadius)字段。最大非成员范围字段定义属于此特定群组的节点与此特定群组的任一节点的最小距离不应超过的范围(即,跳跃数(hop)),例如,当最小距离不应超过的范围设为2个跳跃数时,则表示属于同一群组的2个节点必须是在其本身可通讯的范围或最多通过2个不属于此群组的节点来进行通讯。非成员范围字段定义在讯息包传送过程中记录其经过非属于此特定群组的节点的个数。因此,在此无线感测网络中的节点收到多播包时,收到多播包的节点会判断是否接收过此讯息包,如果已接收过此讯息包时则会丢弃讯息包。若收到多播包的节点没有接收过此讯息包时,则其会检查本身是否属于此特定群组,若本身属于此特定群组,则将非成员范围字段的值重设为最大非成员范围的值,并且重新以广播方式继续传送所接收到的多播包。倘若收到多播包的节点不属于此特定群组时,则检视非成员范围字段的值,其中倘若非成员范围字段的值为0时,则停止转传所接收到的多播包;倘若非成员范围字段的值为7时,则表示不限制多播包的转传次数并且继续转传所接收的多播包;以及倘若非成员范围字段的值为1-6时,则将非成员范围字段的值减一并且转传所接收的多播包。
然而,在上述多播方法中,虽然ZigBee规定了群组范围来减小广播所产生的重复讯息包与讯息包碰撞,但是在较高节点密度的网络下,ZigBee的多播方法仍会造成大量的能量消耗,并会使电力较低的装置快速的消耗电力,减低装置的运作时间与生命周期。因此,有其需要发展一套能够在兼具节点(例如,无线传感器)的省电与耗电平衡下有效地多播讯息包给群组内的成员节点的多播通讯方法。
发明内容
本发明的实施例提供一种多播通讯方法,其适用于在一无线网络中转传来自于一第一成员节点的一多播包给多个第二成员节点,其中这些第二成员节点与第一成员节点属于同一群组,此多播通讯方法包括记录第二成员节点的数目以及与第二成员节点之间的距离。此多播通讯方法也包括从第一成员节点中接收此多播包并且依据第二成员节点的数目与距离来计算一监听参数以及依据所计算的监听参数决定一等候时间。此多播方法还包括在所决定的等候时间期间监听是否有其它节点广播此多播包并且当有其它节点广播此多播包时判断此多播包是否已传送给所有第二成员节点,其中当此多播包已传送给所有第二成员节点,则不广播此多播包,反之,则在等候时间到期之后广播此多播包。
本发明的实施例提供一种中继节点,其适用于在一无线网络中转传来自于一第一成员节点的一多播包给多个第二成员节点,其中第二成员节点与第一成员节点属于同一群组。此中继节点包括用以接收与传送此多播包的射频天线、存储器以及电连接至此射频天线与此存储器的多播单元。此存储器用以储存第二成员节点的数目以及第二成员节点的距离。多播单元用以依据第二成员节点的数目与距离计算一监听参数并且依据监听参数决定一等候时间,其中多播单元会在等候时间内监听是否有其它节点广播此多播包,以及当有其它节点广播此多播包时多播单元会判断其它节点所广播的多播包是否已传送给所有第二成员节点。当其它节点所广播的多播包已传送给所有第二成员节点,则多播单元会不广播所接收的多播包,反之,则在等候时间到期之后广播所接收的多播包。
本发明的实施例提供一种无线网络***,其包括多个成员节点与多个非成员节点。成员节点包括多个成员中继节点并且非成员节点包括多个非成员中继节点,其中成员节点与非成员节点的彼此通讯范围形成一无线网络。在此无线网络***中,每一非成员节点与成员节点会记录可与其通讯的成员节点的数目与距离,并且依据可与其通讯的成员节点的数目与距离计算对应的监听参数且依据对应的监听参数决定对应的等候时间,其中当这些成员节点的其中之一发送一多播包给其它成员节点时,接收到此多播包的每一成员中继节点或非成员中继节点会执行多个多播通讯步骤,其中此多播通讯步骤包括在对应的等候时间期间监听是否有其它成员中继节点或非成员中继节点广播此多播包。此多播通讯步骤也包括当有其它成员中继节点或非成员中继节点广播此多播包时,判断广播此多播包的其它成员中继节点或非成员中继节点是否已传送此多播包给所有可通讯的成员节点。此多播通讯步骤还包括当判断此多播包已传送给所有可通讯的成员节点时,则不广播所接收的多播包,反之,则在等候时间到期之后广播所接收的多播包。
基于上述,本发明的多播方法是在接收到欲转传的多播包时依据所计算监听参数等候一段等候时间,并且在此等候时间期间判断多播包是否已传递给欲转传的目标节点。若多播包已传递给欲转传的目标节点时,在等候时间到期时不广播多播包,由此避免重复广播以节省无线网络***的电量消耗。
为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并结合附图详细说明如下。
附图说明
图1是根据本发明范例实施例绘示无线网络***的示意图。
图2是根据本发明实施例绘示中继节点的概要方块图。
图3是根据本发明实施例绘示多播信息表的范例。
图4是根据本发明范例实施例绘示无线网络***中每一节点的多播信息的范例。
图5是根据本发明范例实施例绘示每一中继节点所执行的多播方法的流程图。
附图符号说明
100:无线网络***
112、114、116、118:成员中继节点
122、124、126:非成员中继节点
112a:射频天线
112b:多播单元
112c:存储器
304:多播成员字段
306:距离字段
308:传送状态字段
500:多播流程
S501、S503、S505、S507、S509、S511、S513、S515、S517、S519、S521:多播方法的步骤
具体实施方式
本发明提供一种多播方法,其能够在兼具节点的省电与耗电平衡下执行多播包的广播。
本发明提供一种中继节点,其能够在兼具节点的省电与耗电平衡下执行多播包的广播。
本发明提供一种无线网络***,其能够在兼具节点的省电与耗电平衡下执行多播包的广播。
本发明实施例中提出的多播方法主要是在无线网络的每一中继节点中记录其可通讯的成员节点,并且此中继节点在转传多播包之时会先确认其它中继节点是否已广播此多播包给其可通讯的成员节点,若其可通讯的成员节点可由其它中继节点接收此多播包时,则此中继节点将不广播此多播包,由此达到省电的目的。为能更清楚了解本发明的精神,以下将一范例实施例并结合附图作更详细的描述。
图1是根据本发明范例实施例绘示无线网络***的示意图。
请参照图1,无线网络***100包括多个成员中继节点112、114、116与118以及多个非成员中继节点122、124与126,其中成员节点112、114、116与118以及多个非成员节点122、124与126经由彼此的通讯覆盖形成一无线网络。
在本实施例中,无线网络***100符合ZigBee通讯协议的ZigBee无线感测网络***。然而,必须了解的是,本发明不限于应用于ZigBee无线感测网络,也就是说,本实施的多播通讯方法也可应用于符合其它通讯协议的无线随意网络(Ad-Hoc Network)。
值得一提的是,由于本实施例的无线网络***100为符合ZigBee通讯协议的ZigBee无线感测网络***。因此,无线网络***100还包括一ZigBee协调器(未绘示),用以建立一无线感测网络环境。也就是说,成员中继节点112、114、116与118以及多个非成员中继节点122、124与126所形成的无线网络是建构在ZigBee协调器(coordinator)所建立的无线感测网络环境上的无线感测网络,其中ZigBee协调器或路由器(router)会控管节点加入此无线感测网络、分配网络地址以及搜集数据等功能。因此,建构在ZigBee协调器所建立的无线感测网络环境上的无线感测网络允许节点动态的加入或离开。
一般来说,在ZigBee无线感测网络中可将多个无线感测节点分群为多个群组,其中每一无线感测节点可同时加入多个群组。之后,管理***(未绘示)可依据需要对特定群组发出讯息或指令,例如管理***可要求属于感测温度的无线感测节点回报其感测读值。在本范例实施例中,成员中继节点112、114与116是设定为属于同一群组A的节点,而非成员中继节点122、124与126是不属于此群组A的节点。值得一提的是,在本发明实施例中,不属于群组A的节点(例如,非成员中继节点122、124与126)可通过广播成员信息请求(Member Information Request,MIR)来询问其可通讯范围是否有属于群组A的节点可供其加入,当此不属于群组A的节点从成员中继节点112、114与116的其中之一接收到响应时,则可加入至群组A。也就是说,属于群组A的成员节点是可动态变动的。
此外,在ZigBee无线感测网络中加入至同一个ZigBee协调器所管控的无线感测网络的节点可在其通讯范围内与其它节点进行数据交换与沟通,而不在通讯范围的节点则必须通过中继节点(即,ZigBee路由器)进行转送(Re1ay)。另外,如上所述属于同一群组的节点彼此的距离不能超过一最大非成员范围(MaxNonMemberRadius)。在本范例实施例中,成员中继节点112、114、116与118以及非成员中继节点122、124与126分别是具有转传功能的一ZigBee路由器。
成员中继节点112、114、116与118以及非成员中继节点122、124与126的结构是相同,以下以成员中继节点112为例进行说明。
图2是根据本发明实施例绘示成员中继节点112的概要方块图。
请参照图2,成员中继节点112包括射频(Radio Frequency,RF)天线112a、多播单元112b、存储器112c。射频天线112a用以接收与传送讯息包。多播单元112b电连接至射频天线112a用以执行本发明范例实施例所述的多播功能。此外,存储器电连接至多播单元112b并且用以储存如下所述的多播信息表以及相关感测数据。在本发明范例实施例中,存储器112c是一非易失性存储器。值得一提的是,本发明范例实施例的多播功能(如图4所示)是以一硬件架构(即,多播单元112b)来实作。然而,本发明范例实施例的多播功能也可由软件来实作并储存于存储器112c中,其中当成员中继节点112启动时此软件可由成员中继节点112的微处理器单元(未绘示)来执行。此外,依据不同的应用,成员中继节点112可还包括感测特定环境参数的感测元件(未绘示)。
值得一提的是,在无线网络***100中可还包括多个ZigBee终端装置(未绘示),而这些ZigBee终端装置(end device)可能与成员中继节点112、114与116属于同一群组的成员节点或者不属于此群组的非成员节点。然而,由于本发明的重点在于转传多播包,因此对于仅能传送或接收讯息包的ZigBee终端装置在此不进行描述。
例如,在本范例实施例中,最大非成员范围设定为2,因此假设非成员中继节点122、124与126在成员中继节点112的通讯范围,成员中继节点114同时在非成员节点122与非成员中继节点124的通讯范围,成员中继节点116在非成员中继节点124的通讯范围以及成员中继节点118在非成员中继节点126的通讯范围。必须了解的是,图1所示的网络拓朴仅为一范例,本发明不限于此。
例如,在本发明范例实施例中,成员中继节点112、114、116与118以及非成员中继节点122、124与126分别地会在其存储器中记录一多播信息表,此多播信息表用以记录可通讯的成员节点以及其距离。
图3是根据本发明实施例绘示多播信息表的范例,图4是根据本发明范例实施例绘示无线网络***中每一节点多播信息的范例。。
请参照图3,多播信息表包括索引字段302、多播成员字段304、距离字段306与传送状态字段308。索引字段302用以记录多播信息表的数据编号,多播成员字段304用以记录属于某一群组且可通讯的成员节点,距离字段306用以记录可通讯成员节点的距离,并且传送状态字段308用以记录在每次转传多播包时多播包是否已传送给可通讯成员。在本发明范例实施例中,当传送状态字段308记录‘0’时表示未传送,而当传送状态字段308记录‘1’时表示已传送。然而,本发明不限于此,在本发明另一实施例中也可以其它符号表示未传送或已传送。
例如,成员中继节点112的多播信息表(如图3与图4所示)中记录成员中继节点112可与群组A的成员中继节点114、116与118通讯并且成员中继节点112距离成员中继节点114、116与118的距离分别为2个跳跃数、2个跳跃数与2个跳跃数。成员中继节点114的多播信息表(如图4所示)中记录成员中继节点114可与群组A的成员中继节点112通讯并且成员中继节点114距离成员中继节点112的距离为2个跳跃数。成员中继节点116的多播信息表(如图4所示)中记录成员中继节点116可与群组A的成员中继节点112通讯并且成员中继节点116距离成员中继节点112的距离为2个跳跃数。成员中继节点118的多播信息表(如图4所示)中记录成员中继节点118可与群组A的成员中继节点112通讯并且成员中继节点118距离成员中继节点112的距离为2个跳跃数。
此外,非成员中继节点122的多播信息表(如图4所示)中记录非成员中继节点122可与群组A的成员中继节点112与114通讯并且非成员中继节点122距离成员中继节点112与114的距离分别为1个跳跃数与1个跳跃数。非成员中继节点124的多播信息表(如图4所示)中记录非成员中继节点124可与群组A的成员中继节点112、114与116通讯并且非成员中继节点124距离成员中继节点112、114与116的距离分别为1个跳跃数、1个跳跃数与1个跳跃数。非成员中继节点126的多播信息表(如图4所示)中记录非成员中继节点126可与群组A的成员中继节点112与118通讯并且非成员中继节点126距离成员中继节点112与118的距离分别为1个跳跃数与1个跳跃数。
值得一提的是,在本范例实施例中,成员中继节点112、114、116与118以及非成员中继节点122、124与126中仅维护与更新关于群组A的多播信息表。然而,在本发明另一实施例中,在无线网络***100包括多个群组的例子中,成员中继节点112、114、116与118以及非成员中继节点122、124与126会维护与更新属于不同群组的多个多播信息表。
在本发明范例实施例中,在无线网络***100中的节点(即,成员中继节点112、114、116与118以及非成员中继节点122、124与126)会定期地广播成员信息包广播(Member Information Packet Broadcast,MIPB),并且接收到此成员信息包广播的节点可依据其中的内容更新其对应的多播信息表。也就是说,在无线网络***100中的成员中继节点112、114、116与118以及非成员中继节点122、124与126可通过广播与接收成员信息包广播来得知可通讯的节点并且将属于群组A的成员节点及其距离记录在对应的多播信息表中。另外,在无线网络***100中的节点可根据成员信息包广播而动态的更动属于特定群组的成员节点的信息。例如,假设当成员中继节点114、116与118以及非成员中继节点122、124与126在一预定时间内未收到中继成员节点112的成员信息包广播时,则表示中继成员节点112已离开群组A。
在本发明实施例中,当成员中继节点112、114、116与118以及非成员中继节点122、124与126接收到欲传送给群组A的多播包时,成员中继节点112、114、116与118以及非成员中继节点122、124与126会分别地依据其对应的多播信息表来转传所接收到的多播包。特别是,在本实施例中当中继节点欲传送给特定群组的多播包时接收到多播包的中继节点会依据对应的多播信息表来计算对应的监听参数并且依据此监听参数产生对应的等候时间。之后,此中继节点会在此等候时间期间监听在此无线感测网络中其它中继节点所广播的讯息包,并且若能够与此中继节点通讯的属于此特定群组的成员节点已可由其它中继节点接收到此多播包时,则此中继节点将停止广播,反之,则此中继节点会在等候时间到期时广播此多播包。
例如,在本发明范例实施例中监听参数是依据转传此多播包的中继节点本身所能与属于此特定节点的成员节点通讯的数目以及这些可通讯的成员节点的距离总和来计算,监听参数T可以式(1)来表示:
fmax=G
fmin=1/最大非成员范围
T=(1-(((M/(H-M+1)-fmin))/(fmax-fmin)))×Tmax (1)
在此,M表示转传此多播包的中继节点本身所能与属于此特定节点的成员节点通讯的数目,H表示所有可通讯的成员节点与此中继节点的距离的总和,G表示在此无线感测网络中属于群组A的成员节点的总数,以及Tmax表示此无线感测***中预设的最长等候时间。值得一提的是,为了方便计算本范例实施例是以所计算出的监听参数T直接作为等候时间。然而,在本发明另一实施例中,等候时间也可为0至监听参数T之间的一随机数值。也就是说,在依据监听参数T随机地选取随机数值作为此中继节点的等候时间,由此可避免局部最佳化的发生。
以下将配合图4以非成员中继节点122、124与126转传成员中继节点112所广播的多播包给成员中继节点114、116与118为范例详细描述本范例实施例的运作。在此范例中,在此无线感测网络中属于群组A的成员节点的总数为4个,最大非成员范围为1个跳跃数,并且最长等候时间为3个时间单位。
如图4所示,非成员中继节点122、124与126是在成员中继节点112的通讯范围内,因此当成员中继节点112广播多播包P给群组A的成员节点(即,成员中继节点114、116与118)时,非成员中继节点122、124与126会接收到此多播包。值得一提的是,在本范例实施例中成员中继节点112是起始传送多播包P的节点,并且成员中继节点112属于群组A,因此成员中继节点112会直接以成员模式来广播多播包P。然而,在本发明另一实施例中,成员中继节点112也可能是从其它非属于群组A的非成员节点中接收到欲传送给群组A的多播包P,在此例子中,成员中继节点112以非会员模式从其它非属于群组A的非成员节点中接收到多播包P。
请再参照图4,当非成员中继节点122、124与126接收到多播包P时,非成员中继节点122、124与126会分别地计算本身的监听参数与等候时间。
具体来说,当非成员中继节点122接收到多播包P时,可得知多播包P是欲传送给群组A,因此非成员中继节点122会依据其多播信息表内的信息(即,可与其通讯且属于群组A的成员节点的数目与距离)来计算监听参数。例如,在非成员中继节点122通讯范围内且属于群组A的成员节点为2个(即,成员节点112与114)且其距离都为1个跳跃数,因此,依据公式(1)可计算非成员中继节点122的等候时间为2个(即,(1-(2/(2-2+1)-(1/1))/(4-(1/1)))×3)时间单位。以此类推,非成员中继节点124的等候时间为1个(即,(1-(3/(3-3+1)-(1/1))/(4-(1/1)))×3)时间单位,并且非成员中继节点126的等候时间为2个(即,(1-(2/(2-2+1)-(1/1))/(4-(1/1)))×3)时间单位。此外,由于此多播包是来自于属于群组A的成员节点112,因此非成员中继节点122、124与126分别会在其对应的多播信息表的传送状态字段中标记成员节点112已有此多播包。
非成员中继节点122、124与126会在其对应的等候时间内监听其它的广播。当时间到达1个时间单位时,非成员中继节点124会判断其多播信息表中仍有属于群组A的成员节点(即,成员节点114与116)未收到多播包P,因此非成员中继节点124会执行广播以转传多播包P,其中当非成员中继节点122与126监听到非成员中继节点124所广播的多播包P时,非成员中继节点122与126会判断已曾从成员节点112中接收到多播包P,另外,非成员中继节点122与126会从此转传的多播包P中得知非成员中继节点124已将此多播包P广播给成员节点114与116。特别是,非成员中继节点122的多播信息表含有成员节点114的信息,因此非成员中继节点122会标记成员节点114已接收到多播包P。
之后,当时间到达2个时间单位时,非成员中继节点122会判断其多播信息表内属于群组A的成员节点已都接收到多播包P,因此非成员中继节点122不再广播多播包P。另外,非成员中继节点126会判断其多播信息表中仍有属于群组A的成员节点(即,成员节点118)未接收到多播包P,因此非成员中继节点126会执行广播以转传多播包P。
在上述范例中,可在非成员中继节点122不需广播下,将多播包P转传给群组A的成员节点,因此可降低无线网络***100的耗电。
值得一提的是,由于在无线感测网络中接收讯息包或发送讯息包都需耗电,因此在本发明另一范例实施例中,上述监听参数的计算可还依据转传此多播包的中继节点的邻近节点的电量来平衡无线网络***100内所有节点的电量消耗。例如,考虑邻近节点的电量下监听参数T’可如式(2)来表示:
fmax=G/Et
fmin=1/(Et×最大非成员范围)
T’=(1-(((M/(H-M+1)-fmin))/(fmax-fmin)))×Tmax×(En/Er) (2)
在此,Et表示转传此多播包所需的耗电量,En表示与此中继节点距离1个跳跃数的节点的剩余电量的平均值,以及Er表示在此中继节点的剩余电。基此,在计算等候时间时还可考虑本身剩余电量与邻近节点的电量,由此平衡无线网络***100的电量消耗,以延长无线网络***100的使用寿命。值得一提的是,每一节点可通过上述成员信息包来将本身的剩余电量告知给在无线网络***100中邻近的节点。
图5是根据本发明范例实施例绘示每一中继节点所执行得多播方法的流程图。必须了解的是,图5所示的流程图的顺序并非限制本发明,本领域技术人员可在本发明的精神下修改或省略其执行步骤或顺序。
请参照图5,流程500是中继节点(例如,图1中的所有中继节点)在布设至应用环境后持续执行的步骤。此应用环境包括于树林监控的应用中感测温度或湿度、在居家空调的应用中感测温度或者在卖场的应用中对特定群组的购物者进行信息的提供。
在步骤S501中,此中继节点会为无线网络***100中每一群组(例如,群组A)建立一多播信息表。之后,在步骤S503中此中继节点会等候接收讯息包。具体来说,由于无线网络***100是一无线感测网络,因此中继节点(即,ZigBee路由器)在步骤S503中会持续感测相关读值并且等候***的指令。
接着,在步骤S505中此中继节点会判断是否接收到成员信息包。如上所述,在无线网络***100中可通过定期地广播成员信息包来确认目前每一群组的状态。
倘若在步骤S505中接收到成员信息包时,则在步骤S507中此中继节点会依据所接收的成员信息包来记录与更新多播信息表(例如,关于可通讯的成员节点与其距离的信息)。
之后,在步骤S509中此中继节点会判断是否接收到属于特定群组(例如,群组A)的多播包。
倘若在步骤S509中未接收到任何多播包时,则流程500会回至步骤S503。倘若在步骤S509中接收到属于特定群组(例如,群组A)的多播包时,则在步骤S511中此中继节点会依据多播信息表中的信息(即,属于此特定群组的成员节点的数目与距离)来计算监听参数并且依据此监听参数决定等候时间。接着,在步骤S513判断等候时间是否已到期。
倘若在步骤S513中判断等候时间未到期时,则在步骤S515中此中继节点会在此等候时间期间监听是否有其它中继节点广播此多播包。当在步骤S515中监听到其它中继节点已广播此多播包时,在步骤S517中此中继节点会在对应的多播信息表中更新成员节点的传送状态,并且回至步骤S513。倘若在步骤S513中判断等候时间已到期时,则在步骤S519中会判断多播信息表中的所有成员节点是否已接收到此多播包。
倘若在步骤S519中判断多播信息表中的成员节点仍未都接收到此多播包时,则在步骤S521中此中继节点会广播此多播包。倘若在步骤S519中判断多播信息表中的成员节点都接收到此多播包时,则流程500中会回至步骤S503。另外,当无线网络***100中的中继节点开始执行后流程500会持续运作直到中继节点的电量已耗损或管理者终止感测为止。
综上所述,本发明的多播方法是在中继节点广播转传多播包之前监听是否已有其它中继节点已广播此多播信息,并且在确认其它中继节点已广播此多播包给本身附近的成员节点时,不再重复广播,由此节省无线网络***的耗电,延长无线网络***的运作时间。此外,在本发明应用于ZigBee无线感测网络时,可同时保有ZigBee对多播所提出的最大非成员范围限制使得群组具有范围的可限制性。此外,本发明的多播方法每一中继节点仅需记录附近节点的信息而不需储存全域的成员信息表或全域路由表,因此可节省存储器的空间。再者,本发明可支持移动式的网络,节点可在群组的区域内动态地加入与离开,并且不需要地理信息等定位信息即可传递讯息包,可适用于大量的群组间的讯息沟通。
虽然本发明已以实施例披露如上,但其并非用以限定本发明,本领域技术人员,在不脱离本发明的精神和范围的前提下,当可作些许的更改与修饰,故本发明的保护范围应以本发明的权利要求为准。
Claims (29)
1.一种多播通讯方法,其适用于由一中继节点在一无线网络中转传来自于一第一成员节点的一多播包给多个第二成员节点,其中所述第二成员节点与该第一成员节点属于同一群组,该多播通讯方法包括:
记录所述第二成员节点的数目以及每一所述第二成员节点与所述中继节点之间的距离;
从该第一成员节点中接收该多播包;
依据所述第二成员节点的数目与距离计算一监听参数;
依据该监听参数决定一等候时间;
在该等候时间内监听是否有至少一其它节点广播该多播包;以及
当该至少一其它节点广播该多播包时判断该至少一其它节点所广播的该多播包是否已传送给所有所述第二成员节点,
其中当该至少一其它节点所广播的该多播包已传送给所有所述第二成员节点,则不广播所接收的该多播包,反之,则在该等候时间到期之后广播所接收的该多播包,
其中,该监听参数T用式(1)来表示:
fmax=G
fmin=1/最大非成员范围
T=(1-((M/(H-M+1)-fmin)/(fmax-fmin)))×Tmax (1)
其中该最大非成员范围定义为所述成员节点所属的群组的节点与该群组的任一节点的最小距离不应超过的范围,M表示转传此多播包的中继节点本身所能与属于该群组的成员节点通讯的数目,H表示所有可通讯的成员节点与此中继节点的距离的总和,G表示在此无线感测网络中属于该群组的成员节点的总数,以及Tmax表示此无线感测***中预设的最长等候时间。
2.如权利要求1所述的多播通讯方法,其中依据该监听参数决定该等候时间的步骤包括依据该监听参数产生一随机数值作为该等候时间。
3.如权利要求1所述的多播通讯方法,其中记录所述第二成员节点的数目以及所述第二成员节点的距离的步骤包括:
建立一多播信息表,其中该多播信息表包括一多播成员字段与一距离字段;
接收一成员信息包;以及
依据该成员信息包记录与更新所述第二成员节点的数目以及所述第二成员节点的距离。
4.如权利要求3所述的多播通讯方法,其中接收该成员信息包的步骤包括定期地或非定期地通过一信标讯息接收该成员信息包。
5.如权利要求1所述的多播通讯方法,还包括记录至少一邻近节点的电量。
6.如权利要求5所述的多播通讯方法,其中依据所述第二成员节点的数目与距离计算该监听参数的步骤包括依据所述第二成员节点的数目与距离以及该至少一邻近节点的电量来计算该监听参数。
7.如权利要求3所述的多播通讯方法,其中判断该至少一其它节点所广播的该多播包是否已传送给所有所述第二成员节点的步骤包括在该多播信息表中记录每一所述第二成员节点是否已接收到该多播包。
8.如权利要求1所述的多播通讯方法,其中所述第二成员节点经由至少一个非成员节点与该第一成员节点通讯。
9.一种中继节点,其适用于在一无线网络中转传来自于一第一成员节点的一多播包给多个第二成员节点,其中所述第二成员节点与该第一成员节点属于同一群组,该中继节点包括:
一射频天线,用以接收与传送该多播包;
一存储器,用以储存所述第二成员节点的数目以及每一所述第二成员节点与所述中继节点之间的距离;以及
一多播单元,电连接至该存储器与该射频天线,该多播包用以依据所述第二成员节点的数目与距离计算一监听参数并且依据该监听参数决定一等候时间,
其中该多播单元会在该等候时间内监听是否有至少一其它节点广播该多播包,以及当该至少一其它节点广播该多播包时该多播单元会判断该至少一其它节点所广播的该多播包是否已传送给所有所述第二成员节点,
其中当该至少一其它节点所广播的该多播包已传送给所有所述第二成员节点,则该多播单元会不广播所接收的该多播包,反之,则在该等候时间到期之后该多播单元会广播所接收的该多播包,
其中,该监听参数T用式(1)来表示:
fmax=G
fmin=1/最大非成员范围
T=(1-((M/(H-M+1)-fmin)/(fmax-fmin)))×Tmax (1)
其中该最大非成员范围定义为所述成员节点所属的群组的节点与该群组的任一节点的最小距离不应超过的范围,M表示转传此多播包的中继节点本身所能与属于该群组的成员节点通讯的数目,H表示所有可通讯的成员节点与此中继节点的距离的总和,G表示在此无线感测网络中属于该群组的成员节点的总数,以及Tmax表示此无线感测***中预设的最长等候时间。
10.如权利要求9所述的中继节点,其中该多播单元会依据该监听参数产生一随机数值作为该等候时间。
11.如权利要求9所述的中继节点,其中该存储器包括一多播信息表,并且该多播信息表包括一多播成员字段与一距离字段。
12.如权利要求11所述的中继节点,其中该射频天线会从所述第二成员节点接收到一成员信息包并且该多播单元会依据该成员信息包记录与更新该多播成员字段与该距离字段。
13.如权利要求12所述的中继节点,其中该射频天线会定期地或非定期地通过一信标讯息接收该成员信息包。
14.如权利要求9所述的中继节点,其中该存储器还储存至少一邻近节点的电量。
15.如权利要求14所述的中继节点,其中该多播单元还依据该至少一邻近节点的电量来计算该监听参数。
16.如权利要求11所述的中继节点,其中该多播信息表还包括一传送状态字段用以记录每一所述第二成员节点是否已接收到该多播包。
17.如权利要求9所述的中继节点,其中所述第二成员节点经由至少一个非成员节点与该第一成员节点通讯。
18.一种无线网络***,包括:
多个成员节点,包括多个成员中继节点;以及
多个非成员节点,包括多个非成员中继节点,其中所述成员节点与所述非成员节点的彼此通讯范围形成一无线网络,
其中每一所述非成员节点与所述成员节点会记录可与其通讯的所述成员节点的数目与距离,其中所述成员节点的距离为所述成员节点距离可与其通讯的每一所述非成员节点或所述成员节点的距离,并且依据该可与其通讯的所述成员节点的数目与距离计算对应的一监听参数且依据对应的该监听参数决定对应的一等候时间,
其中当所述成员节点的其中之一发送一多播包给其它可通讯的所述成员节点时,接收到该多播包的每一所述成员中继节点或所述非成员中继节点会执行多个多播通讯步骤,其中该多播通讯步骤包括:
在对应的该等候时间期间监听是否有其它所述成员中继节点或所述非成员中继节点广播该多播包;
当有其它所述成员中继节点或所述非成员中继节点广播该多播包时,判断广播该多播包的其它所述成员中继节点或所述非成员中继节点是否已传送该多播包给所有可通讯的所述成员节点;以及
当判断该多播包已传送给所有可通讯的所述成员节点时,则不广播所接收的该多播包,反之,则在该等候时间到期之后广播所接收的该多播包,
其中,该监听参数T用式(1)来表示:
fmax=G
fmin=1/最大非成员范围
T=(1-((M/(H-M+1)-fmin)/(fmax-fmin)))×Tmax (1)
其中该最大非成员范围定义为所述成员节点所属的群组的节点与该群组的任一节点的最小距离不应超过的范围,M表示转传此多播包的中继节点本身所能与属于该群组的成员节点通讯的数目,H表示所有可通讯的成员节点与此中继节点的距离的总和,G表示在此无线感测网络中属于该群组的成员节点的总数,以及Tmax表示此无线感测***中预设的最长等候时间。
19.如权利要求18所述的无线网络***,其中每一所述成员中继节点与所述非成员中继节点依据该监听参数来产生一随机数值作为该等候时间。
20.如权利要求18所述的无线网络***,其中每一所述成员中继节点与所述非成员中继节点记录可通讯的所述成员节点的数目与距离的步骤包括:
建立一多播信息表,其中该多播信息表包括一多播成员字段与一距离字段;
接收一成员信息包;以及
依据该成员信息包记录与更新可通讯的所述成员节点的数目与距离。
21.如权利要求20所述的无线网络***,其中接收该成员信息包的步骤包括定期地或非定期地通过一信标讯息接收该成员信息包。
22.如权利要求18所述的无线网络***,其中所述多播通讯步骤还包括记录至少一邻近节点的电量。
23.如权利要求22所述的无线网络***,其中每一所述成员中继节点与所述非成员中继节点还依据该至少一邻近节点的电量来计算该监听参数。
24.如权利要求20所述的无线网络***,其中判断广播该多播包的其它所述成员中继节点或所述非成员中继节点是否已传送该多播包给所有可通讯的所述成员节点包括在该多播信息表中记录每一可通讯的所述成员节点是否已接收到该多播包。
25.如权利要求18所述的无线网络***,其中该无线网络为一ZigBee无线感测网络,该无线网络还包括一ZigBee协调器,并且所述中继成员节点与所述中继非成员节点分别为一ZigBee路由器。
26.如权利要求25所述的无线网络***,其中所述成员节点彼此的距离不超过该最大非成员范围。
27.如权利要求26所述的无线网络***,其中接收到该多播包的每一所述成员中继节点或所述非成员中继节点是以一成员模式来执行所述多播通讯步骤。
28.如权利要求27所述的无线网络***,其中发送该多播包的所述成员节点的该其中之一以一非成员模式接收到该多播包。
29.如权利要求18所述的无线网络***,其中所述成员节点经由所述非成员节点的至少其中之一来彼此通讯。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101903679A CN101771941B (zh) | 2008-12-31 | 2008-12-31 | 多播通讯方法及使用此方法的中继节点与无线网络*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101903679A CN101771941B (zh) | 2008-12-31 | 2008-12-31 | 多播通讯方法及使用此方法的中继节点与无线网络*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101771941A CN101771941A (zh) | 2010-07-07 |
CN101771941B true CN101771941B (zh) | 2013-09-25 |
Family
ID=42504472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101903679A Expired - Fee Related CN101771941B (zh) | 2008-12-31 | 2008-12-31 | 多播通讯方法及使用此方法的中继节点与无线网络*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101771941B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103249176B (zh) * | 2013-05-17 | 2015-09-23 | 哈尔滨工业大学 | Td-lte中脱网直通下基于群组通信的中继通信方法 |
CN105933946A (zh) * | 2016-04-05 | 2016-09-07 | 中国科学院上海高等研究院 | 一种无线路由数据处理/转发方法、***及无线传感器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004107679A3 (en) * | 2003-06-03 | 2005-03-31 | Casient Ltd | System and method for wireless mesh networking |
CN1738291A (zh) * | 2005-08-26 | 2006-02-22 | 电子科技大学 | 基于负载均衡的自组网并发多径路由方法 |
WO2007021269A1 (en) * | 2005-08-15 | 2007-02-22 | Mitsubishi Electric Research Laboratories | Method, apparatus and system for multicast communication in a wireless multi-hop network |
CN101159680A (zh) * | 2007-11-22 | 2008-04-09 | 武汉理工大学 | 一种延长网络存活时间的多播树生成方法 |
CN101217500A (zh) * | 2008-01-21 | 2008-07-09 | 重庆邮电大学 | 一种基于maodv协议的无线自组织网组播路由能量改进方法 |
-
2008
- 2008-12-31 CN CN2008101903679A patent/CN101771941B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004107679A3 (en) * | 2003-06-03 | 2005-03-31 | Casient Ltd | System and method for wireless mesh networking |
WO2007021269A1 (en) * | 2005-08-15 | 2007-02-22 | Mitsubishi Electric Research Laboratories | Method, apparatus and system for multicast communication in a wireless multi-hop network |
CN1738291A (zh) * | 2005-08-26 | 2006-02-22 | 电子科技大学 | 基于负载均衡的自组网并发多径路由方法 |
CN101159680A (zh) * | 2007-11-22 | 2008-04-09 | 武汉理工大学 | 一种延长网络存活时间的多播树生成方法 |
CN101217500A (zh) * | 2008-01-21 | 2008-07-09 | 重庆邮电大学 | 一种基于maodv协议的无线自组织网组播路由能量改进方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101771941A (zh) | 2010-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107852661B (zh) | 网络管理器和网状网络*** | |
Kulkarni et al. | MNP: Multihop network reprogramming service for sensor networks | |
Gandham et al. | Distributed time-optimal scheduling for convergecast in wireless sensor networks | |
CN102461288B (zh) | 无线网络***的高级调试 | |
Chilamkurti et al. | Cross‐layer support for energy efficient routing in wireless sensor networks | |
JP2005510956A (ja) | アドホック無線ネットワークのためのネットワークプロトコル | |
US8982754B2 (en) | I/O driven node commissioning in a sleeping mesh network | |
CA2295397A1 (en) | Service advertisements in wireless local networks | |
KR101129562B1 (ko) | 무선 센서 네트워크의 클러스터링 방법 | |
EP1872190A2 (en) | Power-save control for network master device | |
CN101753458B (zh) | 一种nd邻居表项的处理方法及装置 | |
Alam et al. | Performance Analysis of the IEEE 802.11 s PSM | |
JP2004509513A (ja) | データを転送するための、方法及び信号システム | |
KR20090117381A (ko) | 센서 네트워크에서의 라우팅 방법 | |
CN103404202B (zh) | 一种确定中继设备的方法、站点、接入点、中继设备及*** | |
Rajasekaran et al. | Adaptive intelligent hybrid MAC protocol for wireless sensor network | |
WO2009008681A2 (en) | Time synchronization and routing method in wireless sensor network, and apparatus for enabling the method | |
CN101771941B (zh) | 多播通讯方法及使用此方法的中继节点与无线网络*** | |
Reno et al. | Relay node selection in bluetooth mesh networks | |
Park et al. | Breath: a self-adapting protocol for wireless sensor networks in control and automation | |
CN100469015C (zh) | 分布式无线个人区域网中的节能***及其方法 | |
Xi et al. | Performance evaluation of a power management scheme for disruption tolerant network | |
CN101491040B (zh) | 通信方法、相关联的发送和接收站 | |
CN101374098A (zh) | 一种地址资源管理的方法、装置和终端 | |
EP3984287A1 (en) | A method of waking up a mesh node in a wireless mesh network as well as a related mesh node and a computer program product |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130925 Termination date: 20201231 |
|
CF01 | Termination of patent right due to non-payment of annual fee |