检测心跳的通信方法、系统、设备及存储介质转让专利

申请号 : CN202011297867.X

文献号 : CN112104528B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 牛桂新赵东艳王于波唐晓柯赵旭胡建武李德建

申请人 : 北京智芯微电子科技有限公司国网信息通信产业集团有限公司

摘要 :

本发明提供一种检测心跳的通信方法、系统、设备及存储介质,属于通信技术领域。所述方法包括:确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,所述邻居节点发送的信标帧具有增加的比特位,所述比特位与所述通信网络内节点的设备标识对应,所述比特位的值包括与所述通信网络内被所述邻居节点记录到的节点的设备标识对应的心跳检测信息;更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识;通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送。本发明可用于无线宽带电力通信系统心跳发送与检测。

权利要求 :

1.一种检测心跳的通信方法,其特征在于,该检测心跳的通信方法包括:确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,所述邻居节点发送的信标帧具有增加的比特位,所述比特位与所述通信网络内节点的设备标识对应,所述比特位的值包括与所述通信网络内被所述邻居节点记录到的节点的设备标识对应的心跳检测信息;

更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识;

通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送;

其中,所述通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送,包括:根据接收到的信标帧中信标分配信息,确定是否发送本地的信标帧,其中,所述接收到的信标帧和所述本地的信标帧均具有所述比特位;

在确定发送本地的信标帧之后,根据所述本地邻居列表中与所述活跃在线标识对应的设备标识和所述比特位的对应关系,分别将所述接收到的信标帧中具有所述对应关系的比特位的值更新为活跃在线标记值,并同时,根据所述接收到的信标帧中心跳检测信息,保留所述接收到的信标帧中比特位已具有的活跃在线标记值,获得具有合并的心跳检测信息的本地的信标帧,并发送具有合并的心跳检测信息的本地的信标帧。

2.根据权利要求1所述的检测心跳的通信方法,其特征在于,该检测心跳的通信方法还包括:确定在所述定时周期内接收到所述通信网络内所述邻居节点发送的帧起始帧;

更新所述本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识。

3.根据权利要求1所述的检测心跳的通信方法,其特征在于,所述确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,增加的比特位有N个比特位,第i个比特位具体与所述通信网络内中心节点分配的第i个设备标识对应,N为正整数,i为正整数且小于等于N。

4.根据权利要求3所述的检测心跳的通信方法,其特征在于,所述确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,所述心跳检测信息为心跳位图信息,所述心跳位图信息占用的比特位等于或近似等于所述通信网络最大可接入的节点的个数。

5.根据权利要求1所述的检测心跳的通信方法,其特征在于,在所述更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识之后,且在所述通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送之前,还包括:增加与所述邻居节点的设备标识对应的信标帧的个数于所述本地邻居列表。

6.根据权利要求1所述的检测心跳的通信方法,其特征在于,在所述更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识之后,且在所述通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送之前,还包括:更新所述本地邻居列表中与所述邻居节点发送的信标帧中值为1的比特位对应的设备标识的网络状态标识为活跃在线标识。

7.一种检测心跳的通信方法,其特征在于,该检测心跳的通信方法包括:接收权利要求1至6任意一项所述的检测心跳的通信方法中的通信网络内节点发送的信标帧,保存所述信标帧中的心跳检测信息;

启动当前的定时周期,执行所述通信网络的节点的心跳检测,确定所述心跳检测信息中与设备标识对应的节点是否活跃在线;

在确定所述心跳检测信息中与设备标识对应的节点不是活跃在线时,向不是活跃在线的节点发送离线指示报文。

8.一种检测心跳的通信系统,其特征在于,该检测心跳的通信系统包括:通信节点模块,用于确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,所述邻居节点发送的信标帧具有增加的比特位,所述比特位与所述通信网络内节点的设备标识对应,所述比特位的值包括与所述通信网络内被所述邻居节点记录到的节点的设备标识对应的心跳检测信息;

所述通信节点模块用于更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识;

所述通信节点模块还用于通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送;

所述通信节点模块具体用于根据接收到的信标帧中信标分配信息,确定是否发送本地的信标帧,其中,所述接收到的信标帧和所述本地的信标帧均具有所述比特位;

所述通信节点模块还具体用于在确定发送本地的信标帧之后,根据所述本地邻居列表中与所述活跃在线标识对应的设备标识和所述比特位的对应关系,分别将所述接收到的信标帧中具有所述对应关系的比特位的值更新为活跃在线标记值,并同时,根据所述接收到的信标帧中心跳检测信息,保留所述接收到的信标帧中比特位已具有的活跃在线标记值,获得具有合并的心跳检测信息的本地的信标帧,并发送具有合并的心跳检测信息的本地的信标帧。

9.根据权利要求8所述的检测心跳的通信系统,其特征在于,该检测心跳的通信系统还包括:中心节点模块,用于接收所述通信网络内节点发送的信标帧,保存所述信标帧中的心跳检测信息;

所述中心节点模块用于启动当前的定时周期,执行所述通信网络的节点的心跳检测,确定所述心跳检测信息中与设备标识对应的节点是否活跃在线;

所述中心节点模块还用于在确定所述心跳检测信息中与设备标识对应的节点不是活跃在线时,向不是活跃在线的节点发送离线指示报文。

10.一种电子设备,其特征在于,该电子设备包括:

至少一个处理器;

存储器,与所述至少一个处理器连接;

其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现权利要求1至7中任意一项权利要求所述的方法。

11.一种计算机可读存储介质,存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行权利要求1至7中任意一项权利要求所述的方法。

说明书 :

检测心跳的通信方法、系统、设备及存储介质

技术领域

[0001] 本发明涉及通信技术领域,具体地涉及一种检测心跳的通信方法、一种检测心跳的通信系统、一种电子设备和一种计算机可读存储介质。

背景技术

[0002] 无线宽带电力通信系统中,中心节点(Central Coordinator,CCO,亦可称为中央协调器、中央节点)需要及时感知通信网络中子节点的在网状态,以便于进行网络管理,其中,通信网络中节点或子节点可分为代理节点或代理站点或代理协调器Proxy Coordinator(PCO),以及一般节点或站点Station(STA)。心跳检测是检测站点是否离线的一种机制,一般可以通过每间隔一定时间发送心跳数据,来检测对方是否连接。对于低压电力线宽带载波通信系统心跳检测,常规的是,在组网过程中,每个站点可以根据接收的发现信标,感知自己的邻居站点,并记录下来,形成一个发现列表。每个发现站点定时周期的发送发现列表报文,用于代理站点判断发现站点是否活跃在线。代理站点将本地维护的发现列表中的站点活跃信息,通过定周期的心跳检测报文,发送给CCO,以便CCO汇总全网站点是否在线的信息。在心跳检测报文的发送过程中,低层级的代理站点,通过高层级代理站点的心跳检测报文触发,产生新的心跳检测报文,最终可以由CCO汇总全网站点。然而发现列表报文和心跳检测报文都是周期性的,涉及的网络维护报文较多,占用了较多的CSMA(载波侦听多路访问,Carrier Sense Multiple Access)时隙,对于抄表等业务有较大影响。

发明内容

[0003] 本发明的目的是提供一种检测心跳的通信方法、系统、设备及存储介质,避免网络维护报文过多导致的CSMA时隙占用、难以进行通信业务,进而改善各节点心跳检测的效率和通信系统资源利用率。
[0004] 为了实现上述目的,本发明实施例提供一种检测心跳的通信方法,该检测心跳的通信方法包括:
[0005] 确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,所述邻居节点发送的信标帧具有增加的比特位,所述比特位与所述通信网络内节点的设备标识对应,所述比特位的值包括与所述通信网络内被所述邻居节点记录到的节点的设备标识对应的心跳检测信息;
[0006] 更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识;
[0007] 通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送。
[0008] 具体的,该检测心跳的通信方法还包括:
[0009] 确定在所述定时周期内接收到所述通信网络内所述邻居节点发送的帧起始帧;
[0010] 更新所述本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识。
[0011] 具体的,所述确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,[0012] 增加的比特位有N个比特位,第i个比特位具体与所述通信网络内中心节点分配的第i个设备标识对应,N为正整数,i为正整数且小于等于N。
[0013] 具体的,所述确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,[0014] 所述心跳检测信息为心跳位图信息,所述心跳位图信息占用的比特位等于或近似等于所述通信网络最大可接入的节点的个数。
[0015] 具体的,在所述更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识之后,且在所述通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送之前,还包括:
[0016] 增加与所述邻居节点的设备标识对应的信标帧的个数于所述本地邻居列表。
[0017] 具体的,在所述更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识之后,且在所述通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送之前,还包括:
[0018] 更新所述本地邻居列表中与所述邻居节点发送的信标帧中值为1的比特位对应的设备标识的网络状态标识为活跃在线标识。
[0019] 具体的,所述通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送,包括:
[0020] 根据接收到的信标帧中信标分配信息,确定是否发送本地的信标帧,其中,所述接收到的信标帧和所述本地的信标帧均具有所述比特位;
[0021] 在确定发送本地的信标帧之后,根据所述本地邻居列表中与所述活跃在线标识对应的设备标识和所述比特位的对应关系,
[0022] 分别将所述接收到的信标帧中具有所述对应关系的比特位的值更新为活跃在线标记值,并同时,根据所述接收到的信标帧中心跳检测信息,保留所述接收到的信标帧中比特位已具有的活跃在线标记值,
[0023] 获得具有合并的心跳检测信息的本地的信标帧,并发送具有合并的心跳检测信息的本地的信标帧。
[0024] 本发明实施例提供一种检测心跳的通信方法,该检测心跳的通信方法包括:
[0025] 接收前述的检测心跳的通信方法中的通信网络内节点发送的信标帧,保存所述信标帧中的心跳检测信息;
[0026] 启动当前的定时周期,执行所述通信网络的节点的心跳检测,确定所述心跳检测信息中与设备标识对应的节点是否活跃在线;
[0027] 在确定所述心跳检测信息中与设备标识对应的节点不是活跃在线时,向不是活跃在线的节点发送离线指示报文。
[0028] 本发明实施例提供一种检测心跳的通信系统,该检测心跳的通信系统包括:
[0029] 通信节点模块,用于确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,所述邻居节点发送的信标帧具有增加的比特位,所述比特位与所述通信网络内节点的设备标识对应,所述比特位的值包括与所述通信网络内被所述邻居节点记录到的节点的设备标识对应的心跳检测信息;
[0030] 所述通信节点模块用于更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识;
[0031] 所述通信节点模块还用于通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送。
[0032] 具体的,该检测心跳的通信系统还包括:
[0033] 中心节点模块,用于接收所述通信网络内节点发送的信标帧,保存所述信标帧中的心跳检测信息;
[0034] 所述中心节点模块用于启动当前的定时周期,执行所述通信网络的节点的心跳检测,确定所述心跳检测信息中与设备标识对应的节点是否活跃在线;
[0035] 所述中心节点模块还用于在确定所述心跳检测信息中与设备标识对应的节点不是活跃在线时,向不是活跃在线的节点发送离线指示报文。
[0036] 再一方面,本发明实施例提供一种电子设备,该电子设备包括:
[0037] 至少一个处理器;
[0038] 存储器,与所述至少一个处理器连接;
[0039] 其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令,所述至少一个处理器通过执行所述存储器存储的指令实现前述的方法。
[0040] 又一方面,本发明实施例提供一种计算机可读存储介质,存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行前述的方法。
[0041] 本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

[0042] 附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
[0043] 图1 为本发明实施例的主要方法的步骤示意图;
[0044] 图2为本发明实施例的示例性子节点心跳统计与发送处理流程示意图;
[0045] 图3为本发明实施例的示例性子节点合并比特位的值处理流程示意图;
[0046] 图4为本发明实施例的示例性中心节点心跳统计处理流程示意图;
[0047] 图5为本发明实施例的示例性中心节点心跳检测处理流程示意图。

具体实施方式

[0048] 以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
[0049] 实施例1
[0050] 本发明实施例提供了检测心跳的通信方法,本发明实施例可用于无线宽带电力通信系统心跳发送与检测,如图1,该检测心跳的通信方法包括:
[0051] 确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,所述邻居节点发送的信标帧具有增加的比特位,所述比特位与所述通信网络内节点的设备标识对应,所述比特位的值包括与所述通信网络内被所述邻居节点记录到的节点的设备标识对应的心跳检测信息;
[0052] 更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识,其中,邻居节点可以是一个或多个节点,比特位的值可以为0或1,心跳检测信息可以包括增加的比特位中比特位的值为1的心跳位图信息,具有与值为1的比特位对应的设备标识的节点可以为活跃在线,也可以还包括增加的比特位中比特位的值为0的心跳位图信息,具有与值为0的比特位对应的设备标识的节点可以为不在线,增加的比特位可以是比特序列(具有顺序),顺序性可以与节点入网时,被分配的设备标识的时隙顺序;
[0053] 更新本地邻居列表中与所述邻居节点发送的信标帧中比特位对应的设备标识的网络状态标识为活跃在线标识,若该信标帧不需要本地的节点再发送信标帧,则可暂时结束,其中,可以根据值为1的比特位所对应的设备标识,将本地邻居列表中这些设备标识的网络状态标识更改为活跃在线标识,值为0的比特位所对应的设备标识可以忽略或者视为与本地邻居列表合并,即本地邻居列表中有设备标识的网络状态标识在本次定时周期内已被更新为活跃在线标识,但信标帧中该设备标识对应的比特位的值仍可以为0或1,比特位的值为0时可以在本次定时周期内不更改本地邻居列表中该设备标识对应的网络状态标识为不在线;
[0054] 通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送。
[0055] 在一些具体实施中,本发明实施例中通信网络可以包括中心节点(CCO)和通信节点,通信节点可以包括代理节点(PCO)和一般节点(可以简称站点或子节点或节点,STA),该两者角色可以是中心节点所分配的或通信节点自行设置的(如STA可以设置PCO);在通信节点进行关联请求后,中心节点若允许加入通信网络时,中心节点会根据可用的时隙资源,分配该通信节点的设备标识(即终端设备标识,Terminal Equipment Identifier,TEI),例如第0字节的第1比特位的值为1,表示发现TEI为1的站点,第1字节的第0比特位的值为1,表示发现TEI为8的站点,相应地,在通信节点被视为离线时,中心节点会回收该TEI和对应的时隙资源;此处的检测心跳的通信方法可以是当前通信节点(任意一个PCO或STA)与邻居节点进行,邻居节点可以是相对在通信网络中通信连接上与当前通信节点相邻的一个通信节点,邻居节点在一些情况下,也可以被作为当前通信节点,并且在一些通信网络中,中心节点也可以有邻居节点,此时邻居节点还可以是中心节点。
[0056] 可以对通信网络中节点(CCO、PCO和STA)进行配置,可以让每个节点均具有增加的比特位,也可以让通信节点具有增加的比特位即可;该增加的比特位可以是固定大小的比特位,也可以跟随接入通信网络的节点的个数进行扩展,该比特位上对应的节点可以按照曾加入通信网络时被分配的TEI的顺序,在信标帧中增加一定数量的(N个)比特位,用于表示该网络内各节点的心跳检测信息,其中,第i比特位对应TEI为i的节点,该比特位为0表示TEI为i的节点不在线,为1则表示TEI为i的节点在线,N为正整数,i为正整数且小于等于N。信标帧中比特位和比特位的值,可以形成心跳位图信息(BITMAP),心跳位图信息占用比特位大约等于网络最大可接入的节点个数,可根据接入通信网络的节点数量等实际情况有所调整。
[0057] 对于子节点(或代理节点)心跳统计与发送处理,如图2所示,子节点入网后,首先需要启动一个用于初始化邻居列表信息的周期定时器,邻居列表信息主要存储用于标识该邻居节点是否有效的标志及在一个定时器周期内发送的SOF帧(Start of Frame,可以称为帧起始帧)和信标帧的个数等信息,定时器超时后,将邻居列表(本地邻居列表)内容进行初始化处理,保证子节点对于邻居节点信息统计的有效性,邻居列表中可以包括节点的设备标识、与设备标识对应的在线标识、与设备标识对应的SOF帧和信标帧个数等信息。
[0058] 具体的,可以确定在所述定时周期内接收到所述通信网络内所述邻居节点发送的帧起始帧或信标帧,具体确定操作的实现先后顺序是根据实际情况中邻居节点发送的帧决定的,此处并不是限定的实施。
[0059] 若子节点收到来自网络内邻居节点的SOF帧,说明该邻居节点是活跃在线的,则更新本地保存的邻居列表信息,将对应的邻居表项flag(网络状态标识)设为有效,如更新为活跃在线(即在线)标识,以表明该邻居节点是活跃在线的。
[0060] 若子节点收到来自网络内邻居节点的信标帧,说明该邻居节点是活跃在线的,则更新本地保存的邻居列表信息,将对应的邻居表项flag设为有效,以表明该邻居节点是活跃在线的,同时将接收信标帧个数计数加一。该邻居节点的信标帧计数可以用于子节点代理变更时重新选择代理的依据之一。
[0061] 以上根据邻居节点的SOF帧或信标帧更新本地的邻居列表信息的过程可以随不断接收的SOF帧或信标帧,多次循环地执行。
[0062] 然后在接收到一些信标帧时,该信标帧可以还具有预先定义的时隙分配,该时隙分配可以告知接收该信标帧的通信节点,需要在指定的时间内发送回去相应的信标帧。例如接收到的信标帧可以是中心节点发送的需要当前通信节点发送信标帧的信标帧(中心信标或中央信标),也可以是通信网络内其他节点向当前通信节点发送的,根据收到的信标帧中的信标分配信息,可以判断是否需要发送信标帧,若本子节点本次需要且可以发送信标帧(代理信标或发现信标),则将本地保存的邻居列表中活跃邻居节点的TEI按比特位对位合并到之前收到的信标帧中的心跳BITMAP中,作为即将发送的信标帧的心跳BITMAP,具体的,根据接收到的信标帧中信标分配信息,确定是否发送本地的信标帧,其中,所述接收到的信标帧和所述本地的信标帧均具有所述比特位。
[0063] 在确定发送本地的信标帧之后,根据所述本地邻居列表中与所述活跃在线标识对应的设备标识和所述比特位的对应关系,合并所述接收到的信标帧中心跳检测信息至待发送的本地的信标帧中心跳检测信息,更具体地,可以分别将所述接收到的信标帧中具有所述对应关系的比特位的值更新为活跃在线标记值,并同时,根据所述接收到的信标帧中心跳检测信息(即各个比特位和比特位上相应的值),保留所述接收到的信标帧中比特位已具有的活跃在线标记值,可以通过当前的比特位和比特位上相应的值获得即将发送本地的信标帧(具有合并的心跳检测信息或本地的心跳检测信息),并发送具有合并的心跳检测信息的本地的信标帧。
[0064] 例如,如图3,当前子节点的邻居列表被初始化后,邻居列表中与设备标识TEI1-TEI9对应的网络状态标识可均为0(不在线标识,1可代表活跃在线标识),在接收到邻居节点1的信标帧之后,可以按比特位与设备标识的对应关系,更新并记录于邻居列表中,此时,邻居列表中与设备标识TEI1-TEI9对应的网络状态标识可分别依次为0、0、1、0、1、0、0、1、1,此后,可以收到邻居节点2的信标帧,该收到的信标帧中信标分配信息需要当前子节点发送信标帧,则该当前子节点可以更新比特位的值,当前子节点处理中的信标帧的比特位和比特位值构成的比特序列可以是001010011,并把接收到的信标帧中与设备标识对应的比特位的值(101101110)按比特位或设备标识与比特序列进行合并,则当前子节点可以得到即将发送的信标帧的比特序列为101111111,该比特序列具有合并的心跳检测信息(合并后的心跳BITMAP);简而言之,在本发明实施例中,在本次定时周期内,邻居节点发送的信标帧中心跳BITMAP中值为1的比特位可以合并或更新至本地的心跳BITMAP中值为0和1中,此时,本地的心跳BITMAP中值为0的比特位被更改为值为1,本地的心跳BITMAP中值为1的比特位被合并为值为1,本地的心跳BITMAP中值为1的比特位保持不变,而邻居节点发送的信标帧中心跳BITMAP中值为0的比特位也可以合并至本地的心跳BITMAP中,并可以不影响本地的心跳BITMAP中各个比特位的值,本地的心跳BITMAP中值为1的比特位保持不变,本地的心跳BITMAP中值为0的比特位也保持不变。
[0065] 需要提出的是,邻居节点(不妨作为第一邻居节点)在发送信标帧或SOF帧之前,第一邻居节点可以接收由与第一邻居节点相邻的第二邻居节点(一个或多个节点)曾发送的信标帧,并获得了各个设备标识对应的心跳检测信息,即相应比特位上对应的比特位值,该第一邻居节点发送的信标帧中比特位的值不仅可以包括被第一邻居节点记录到的节点的设备标识对应的心跳检测信息,该比特位的值还可以包括被第二邻居节点记录到的节点的设备标识对应的心跳检测信息,第一邻居节点所发送的信标帧中具有合并的心跳检测信息。
[0066] 本发明实施例还提供了检测心跳的通信方法,该检测心跳的通信方法包括:
[0067] 接收前述的检测心跳的通信方法中的通信网络内节点发送的信标帧,保存所述信标帧中的心跳检测信息;
[0068] 启动当前的定时周期,执行所述通信网络的节点的心跳检测,确定所述心跳检测信息中与设备标识对应的节点是否活跃在线;
[0069] 在确定所述心跳检测信息中与设备标识对应的节点不是活跃在线时,向不是活跃在线的节点发送离线指示报文。
[0070] 对于中心节点心跳统计处理,如图4所示,中心节点在上电后,首先初始化本地保存的心跳BITMAP全部为0。在收到本网络内子节点的信标帧后,将信标帧中的心跳BITMAP与本地保存的心跳BITMAP合并,并保存在本地,以供心跳检测使用。
[0071] 对于中心节点心跳检测处理,如图5所示,中心节点在网络组网完成后,启动一个周期定时器,用于心跳检测的定时处理。心跳检测定时器超时后,中心节点根据本地保存的心跳BITMAP判断各子节点是否在线,BITMAP中比特位i值为0 ,表示TEI为i的子节点不在线,比特位i值为1表示TEI为i的子节点在线。对于判断为不在线的子节点,如若定时周期结束后各个中心节点收到的信标帧中该子节点的设备标识所对应的比特位的值没有出现过为1或中心节点保存的邻居列表中该子节点的设备标识所对应的网络状态标识没有被更新为活跃在线标识,中心节点给该子节点发送离线指示报文,若定时周期结束前,各个中心节点收到的信标帧中该子节点的设备标识所对应的比特位的值出现过为1或中心节点保存的邻居列表中该子节点的设备标识所对应的网络状态标识被更新为活跃在线标识,中心节点则判断该子节点为在线。中心节点在每个心跳检测处理周期完成后,初始化本地保存的心跳BITMAP全部为0。
[0072] 对于执行所述通信网络的节点的心跳检测,中心节点作为前述的通信节点,通过通信网络内各个节点发送的信标帧中心跳BITMAP,获得通信网络内节点的网络状态。
[0073] 本发明实施例在信标帧中携带各节点的心跳位图信息,子节点在入网后,启动一个用于初始化邻居列表的周期定时器,子节点在收到邻居节点的SOF帧或信标帧后,更新本地保存的邻居列表信息,用于心跳统计,子节点在发送信标帧前,根据本地保存的邻居列表信息更新收到的信标帧中的心跳位图,作为即将发送的信标帧的心跳位图,中心节点收到本网络内子节点的信标帧后,更新本地保存的心跳位图信息,以供心跳检测使用,中心节点定周期进行心跳检测处理。中心节点进行心跳检测的定时周期时长要大于子节点的邻居列表初始化周期时长。
[0074] 本发明实施例通过在信标帧中携带用于标示网络中各节点是否在线的心跳位图,减少了网络维护报文的发送,心跳检测信息的收集不依赖于各个节点特别上报心跳检测报文,从而降低了系统非抄表业务对CSMA时隙的抢占,提高了系统资源的有效利用率;同时,中心节点及其子节点本地均不用存储大量心跳相关的内容,且处理流程简单易行,降低了实现复杂度。
[0075] 实施例2
[0076] 本发明实施例与实施例1属于同一发明构思,本发明实施例提供了检测心跳的通信系统,该检测心跳的通信系统包括:
[0077] 通信节点模块,用于确定在定时周期内接收到通信网络内邻居节点发送的信标帧,其中,所述邻居节点发送的信标帧具有增加的比特位,所述比特位与所述通信网络内节点的设备标识对应,所述比特位的值包括与所述通信网络内被所述邻居节点记录到的节点的设备标识对应的心跳检测信息;
[0078] 所述通信节点模块用于更新本地邻居列表中与所述邻居节点的设备标识对应的网络状态标识为活跃在线标识;
[0079] 所述通信节点模块还用于通过所述本地邻居列表生成本地的心跳检测信息,执行所述本地的心跳检测信息的发送。
[0080] 具体的,该检测心跳的通信系统还包括:
[0081] 中心节点模块,用于接收所述通信网络内节点发送的信标帧,保存所述信标帧中的心跳检测信息;
[0082] 所述中心节点模块用于启动当前的定时周期,执行所述通信网络的节点的心跳检测,确定所述心跳检测信息中与设备标识对应的节点是否活跃在线;
[0083] 所述中心节点模块还用于在确定所述心跳检测信息中与设备标识对应的节点不是活跃在线时,向不是活跃在线的节点发送离线指示报文。
[0084] 以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
[0085] 另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
[0086] 本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0087] 此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。