发明内容
本发明的实施例提供一种镜像mirror节点处理信令的方法、mirror节点及系统,能够合理利用mirror节点的存储空间。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供了一种镜像mirror节点处理信令的方法,该方法包括:
所述mirror节点接收可休眠终端发送的第一消息,所述第一消息用于指示所述可休眠终端已休眠;
所述mirror节点获取其他节点发送的第二消息,其中,所述第二消息由所述其他节点通过所述mirror节点向所述可休眠终端发送,所述第二消息包含或不包含时间限制信息;
所述mirror节点若确定所述可休眠终端已休眠,且所述第二消息包含时间限制信息,则根据预设规则处理所述第二消息。
在第一种可能的实现方式中,根据第一方面,具体实现为:
所述mirror节点若确定所述可休眠终端已休眠,且所述第二消息包含时间限制信息,则删除所述第二消息。
在第二种可能的实现方式中,结合第一方面和第一种可能的实现方式,还包括:
所述mirror节点向包括对应的其他节点发送休眠消息,以使得所述包括对应的其他节点确定所述可休眠终端已休眠,其中,所述对应的其他节点为发送所述第二消息的其他节点。
在第三种可能的实现方式中,根据第一方面,具体实现为:
所述mirror节点若确定所述可休眠终端已休眠,且所述第二消息包含时间限制信息,则将所述第二消息存入所述第一存储空间;
所述mirror节点检测所述第一存储空间中存储的所述第二消息,若所述第二消息存入所述第一存储空间的时长超过所述时间限制信息指示的时长,则删除所述第二消息。
在第四种可能的实现方式中,根据第一方面,所述第一消息还携带有所述可休眠终端休眠的时长,具体实现为:
所述mirror节点根据所述可休眠终端休眠的所述时长,计算所述可休眠终端结束休眠的时间点。
在第五种可能的实现方式中,结合第一方面、第一种可能实现的方式和第四种可能实现的方式,具体实现为:
所述mirror节点向对应的其他节点发送休眠消息,所述休眠消息携带有所述可休眠终端结束休眠的时间点,以使得所述对应的其他节点确定所述可休眠终端已休眠,并确定结束休眠的时间点,在所述结束休眠的时间点后重新发送所述第二消息,其中,所述对应的其他节点为发送所述第二消息的其他节点。
在第六种可能的实现方式中,结合第一方面或第四种可能的实现方式,所述第一消息还携带有所述可休眠终端休眠的时长,具体实现为:
所述mirror节点根据所述时间限制信息,确定所述第二消息失效的时间点;
所述mirror节点若确定所述失效的时间点晚于所述可休眠终端结束休眠的时间点,则将所述第二消息存入所述第一存储空间,若所述确定所述失效的时间点早于所述结束休眠的时间点,则删除所述第二消息。
第二方面,提供了一种mirror节点,其特征在于,包括:
接收单元,用于接收可休眠终端发送的第一消息,所述第一消息用于指示所述可休眠终端已休眠;
获取单元,用于获取其他节点发送的第二消息,其中,所述第二消息由所述其他节点通过所述mirror节点向所述可休眠终端发送,所述第二消息包含或不包含时间限制信息;
处理单元,用于若确定所述可休眠终端已休眠,且所述第二消息包含时间限制信息,则根据预设规则处理所述第二消息。
在第一种可能的实现方式中,根据第二方面,具体实现为:
所述处理单元,用于若确定所述可休眠终端已休眠,且所述第二消息包含时间限制信息,则删除所述第二消息。
在第二种可能的实现方式中,结合第二方面和第一种可能的实现方式,还包括:
发送单元,用于向包括对应的其他节点发送休眠消息,以使得所述包括对应的其他节点确定所述可休眠终端已休眠,其中,所述对应的其他节点为发送所述第二消息的其他节点。
在第三种可能的实现方式中,根据第二方面,该mirror节点,还包括:
储存单元,包含第一存储空间和第二存储空间,用于将携带有所述时间限制信息的第二消息存入所述第一存储空间,将不携带所述时间限制信息的第二消息存入所述第二存储空间。
在第四种可能的实现方式中,结合第二方面和第三种可能实现的方式,该mirror节点,具体实现为:
检测单元,用于检测所述第一存储空间中存储的所述第二消息,若所述第二消息存入所述第一存储空间的时长超过所述时间限制信息指示的时长,则使得所述处理单元删除所述第二消息。
在第五种可能的实现方式中,结合第二方面、第一种可能实现的方式和第二种可能实现的方式,该mirror节点,还包括:
计算单元,用于若确定所述接收单元接收的所述第一消息携带有所述可休眠终端休眠的时长,则根据所述时长,计算所述可休眠终端结束休眠的时间点。
在第六种可能的实现方式中,根据第五种可能实现的方式,该mirror节点,具体实现为:
所述发送单元,还用于向对应的其他节点发送休眠消息,所述休眠消息携带有所述可休眠终端结束休眠的时间点,以使得所述对应的其他节点确定所述可休眠终端已休眠,并确定结束休眠的时间点,在所述结束休眠的时间点后重新发送所述第二消息,其中,所述对应的其他节点为发送所述第二消息的其他节点。
在第七种可能的实现方式中,根据第五种可能实现的方式,该mirror节点,具体实现为:
所述处理单元,还用于根据所述第二消息的所述时间限制信息,确定所述第二消息失效的时间点;若所述确定所述失效的时间点晚于所述计算单元得到的所述可休眠终端结束休眠的时间点,则将所述第二消息存入所述第一存储空间,若所述确定所述失效的时间点早于所述计算单元得到的所述结束休眠的时间点,则删除所述第二消息。
第三方面,提供了一种系统,包括:
上述的mirror节点;
可休眠终端,用于向所述mirror节点发送第一消息,所述第一消息用于指示所述可休眠终端已休眠;
其他节点,用于通过所述mirror节点向所述可休眠终端发送第二消息,所述第二消息包含时间限制信息或不包含时间限制信息。
本发明实施例提供的镜像mirror节点处理信令的方法、mirror节点及系统,mirror节点接收可休眠终端发送的第一消息,第一消息指示可休眠终端已休眠,获取其他节点发送的第二消息,其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含或不包含时间限制信息,若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。由于可休眠终端需要在休眠前向mirror节点发送一个第一消息,mirror节点通过这个第一消息确定了可休眠终端已经休眠,然后再对包含时间限制信息的第二消息进行处理,这样一来,mirror节点可以及时处理失效的第二消息,减少在mirror存储空间中存储的失效的第二消息,从而减少对mirror存储空间的浪费,进而更加合理的利用mirror节点的存储空间。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的mirror节点处理信令的方法,如图1所示,该方法步骤包括:
S101、mirror节点接收可休眠终端发送的第一消息,第一消息用于指示可休眠终端已休眠。
进一步的,第一消息可以为一个指示消息或一个信令等,即,第一消息可以是指示可休眠终端已休眠的指示信息,也可以是携带指示可休眠终端已休眠的内容的信令或命令,如用于网络节点间的command命令等。
需要说明的是,可休眠终端,如智能抄表终端等在即将休眠时向mirror节点发送第一消息,由于可休眠终端发送至mirror节点有一定的时延,所以第一消息发送至mirror节点时,可休眠终端已经休眠,所以第一消息用于指示可休眠终端已休眠,通知mirror节点在此第一消息之后,可休眠终端处于休眠状态,不再接收其他节点发送的数据,信令或消息。这时,mirror节点可以设置一个标识位来对应标识这个可休眠终端的状态,如标志位上写入1,说明对应的可休眠终端已休眠。当mirror节点收到可以表示可休眠终端结束休眠的信令后,将该标志位重置为0,说明该可休眠终端已经结束休眠,可以开始接收其他节点发送的数据,信令或消息。
进一步的,mirror是冗余的一种类型,一个磁盘上的数据在另一个磁盘上存在一个完全相同的副本即为镜像。所以mirror节点获取其他节点的信令等,并在可休眠终端休眠时将其储存为一个完全相同的副本。
值得指出的是,mirror节点可以是单独的节点,也可以是设置在ESI中的mirror节点,本实施例以mirror节点是单独的节点为例进行说明,但不以此做任何限定,设置在ESI中的mirror节点也在保护范围内。
S102、mirror节点获取其他节点发送的第二消息,其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含或不包含时间限制信息。
示例性的,在HAN内的能量信息传输、控制等标准规范中,ESI是ZigBee网络和外部网络(如蜂窝网等)的连接器,ESI中设置有该mirror节点,能源提供商通过ESI与HAN中的网元进行信息交互。步骤S102中的其他节点是指在HAN中除了设置ESI外的节点,如用于向用户显示能量的消耗、费用等信息的IHD(In-Home Display,家庭内显示器),或者,用于智能温度调节的PCT(Programmable CommunicationThermostat)可编程通信恒温器,以及控制节点、智能终端、抄表终端等。
进一步的,mirror节点可以设置多个空间,每个空间可以针对一个可休眠终端,在可休眠终端休眠时,其对应的mirror节点中的空间将为其储存其他节点发送的信令等数据,本实施例以向同一个可休眠终端发送信令为例进行说明,多个空间可以按照本实施例提供的方法针对多个可休眠终端进行信令处理,所以多个可休眠终端的处理方法也在保护范围之内。
S103、mirror节点若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。
需要说明的是,第二消息包含时间限制信息则为时间受限命令,第二消息不包含时间限制信息,则不是时间受限命令。其中,时间受限命令有预定的格式,如设置有目的可休眠终端的ID(IDentity,身份标识号码),在一个特定位置设置有时间限制信息,如在最后几个个比特位上的数值为该第二消息的时间限制信息。时间限制信息可以指示该第二消息的失效时间,或将失效时间作为时间限制信息携带在第二消息中。一旦超过了这个失效时间,该时间受限命令将作废。
示例性的,预设规则可以是删除第二消息,或者,储存第二消息,或者,分别储存包含时间限制信息的第二消息和不包含时间限制信息的第二消息。
如mirror节点若确定可休眠终端已休眠,且第二消息包含时间限制信息,则删除第二消息。
进一步的,mirror节点也可以在删除第二消息后,向包括对应的其他节点发送休眠消息,以使得包括对应的其他节点确定可休眠终端已休眠,其中,对应的其他节点为发送第二消息的其他节点。mirror节点可以除了向对应的其他节点发送休眠消息之外,还向HAN中的所有其他节点发送休眠消息,已告知这些节点可休眠终端已休眠。
如IHD发送的第二消息中包含时间限制信息,mirror节点在确定IHD对应的可休眠终端的状态标识位上写入1,则确定IHD对应的可休眠终端已休眠,删除IHD发送的第二消息,并向IHD、控制节点、智能终端、抄表终端等发送休眠消息,以通知IHD、控制节点、智能终端、抄表终端等可休眠终端已经休眠。
或者,mirror节点若确定可休眠终端已休眠,且第二消息包含时间限制信息,则将第二消息存入第一存储空间,并检测第一存储空间中存储的第二消息,若第二消息存入第一存储空间的时长超过时间限制信息,则删除第二消息。如PCT发送了一个包含时间限制信息为20分钟的第二消息,mirror节点将第二消息存入第一存储空间,当检测发现这个第二消息已经过期了,所以删除这个第二消息,当可休眠终端已经停止休眠了,则可以把这个还没有过期的、有效的第二消息发送给可休眠终端。
进一步的,持续检测,或者按照某个特定的周期检测等检测方式均在保护范围之内。
或者,mirror节点接收到的第一消息中携带有可休眠终端休眠的时长,若确定可休眠终端已休眠,且第二消息包含时间限制信息,则删除获取的第二消息,并向对应的其他节点发送休眠消息,休眠消息携带有可休眠终端结束休眠的时间点,以使得对应的其他节点确定可休眠终端已休眠,并确定结束休眠的时间点,在结束休眠的时间点后重新发送第二消息,其中,对应的其他节点为发送第二消息的其他节点。如,mirror节点接收到的第一消息,是控制节点对应的可休眠终端发送的,第一消息中携带了该可休眠终端休眠时长为10分钟,mirror节点若确定可休眠终端已休眠,且收到控制节点发送的第二消息,第二消息中携带时间限制信息为5分钟,即第二消息在发送5分钟后失效,则删除第二消息,并向控制节点发送休眠消息,休眠消息携带有可休眠终端休眠10分钟,以使得控制节点确定可休眠终端已休眠,并根据休眠的时长为10分钟得到结束休眠的时间点为10分钟后,这样控制节点可以在10分钟后重新发送这个第二消息,或发送其他的第二消息。
或者,mirror节点接收到的第一消息中携带有可休眠终端休眠的时长若确定可休眠终端已休眠,且第二消息包含时间限制信息,mirror节点根据休眠的时长确定可休眠终端结束休眠的时间点;mirror节点第二消息的时间限制信息,确定第二消息失效的时间点;mirror节点若确定失效的时间点晚于结束休眠的时间点,则不删除第二消息,若确定失效的时间点早于结束休眠的时间点,则删除第二消息。如,mirror节点接收到的第一消息,是控制节点对应的可休眠终端发送的,第一消息中携带了该可休眠终端休眠时长为10分钟,mirror节点若确定可休眠终端已休眠,且收到控制节点发送的第二消息,第二消息中携带时间限制信息为5分钟,则将第二消息存入第一存储空间,如果接收第一消息的时刻为03点10分,根据休眠的时长为10分钟确定可休眠终端结束休眠的时间点为03点20分,如果第二消息存入的时间为03点12分,时间限制信息为5分钟,则确定第二消息失效的时间点为03点17,由于失效的时间点为03点17早于结束休眠的时间点03点20分,因此可知当休眠结束时,该第二消息已经失效,删除第二消息;如果第二消息存入的时间为03点16分,时间限制信息为5分钟,则确定第二消息失效的时间点为03点21,由于失效的时间点为03点21晚于结束休眠的时间点03点20分,所以当休眠结束时,该第二消息还有效,则不删除这个第二消息,待03点20分发送给可休眠终端。
值得指出的是,上述的其他节点仅用来举例,并不以上述情况为任何限定。
本发明实施例提供的镜像mirror节点处理信令的方法,mirror节点接收可休眠终端发送的第一消息,第一消息指示可休眠终端已休眠,获取其他节点发送的第二消息,其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含或不包含时间限制信息,若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。由于可休眠终端需要在休眠前向mirror节点发送一个第一消息,mirror节点通过这个第一消息确定了可休眠终端已经休眠,然后再对包含时间限制信息的第二消息进行处理,这样一来,mirror节点可以及时处理失效的第二消息,减少在mirror存储空间中存储的失效的第二消息,从而减少对mirror存储空间的浪费,进而更加合理的利用mirror节点的存储空间。
本发明另一实施例提供的mirror镜像节点处理信令的方法,如图2所示,该方法步骤包括:
S201、mirror节点接收可休眠终端发送的第一消息。
需要说明的是,第一消息用于指示可休眠终端已休眠。
进一步的,mirror节点可以针对可休眠终端设置标识位,当收到第一消息指示可休眠终端已休眠时,将标志位置1,当结束休眠时在重置为0,反之亦然。
S202、mirror节点获取其他节点发送的第二消息。
其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含时间限制信息或不包含时间限制信息,时间限制信息可以指示该第二消息的失效时间,也可以直接将失效时间作为时间限制信息,携带于第二消息中。
需要说明的是,若mirror节点接收到的第二消息包含时间限制信息,则执行步骤S203;若mirror节点接收到的第二消息不包含时间限制信息,则执行步骤S205。
S203、mirror节点若确定可休眠终端已休眠,且第二消息包含时间限制信息,则删除第二消息。
进一步的,若第一消息中携带可休眠终端休眠的时长,在接收该第一消息后,mirror节点会先计算可休眠终端结束休眠的时间点,在删除获取的第二消息后,向对应的其他节点发送休眠消息,休眠消息携带有可休眠终端结束休眠的时间点,以使得对应的其他节点确定可休眠终端已休眠,并根据结束休眠的时间点,在结束休眠的时间点后重新发送第二消息,其中,对应的其他节点为发送第二消息的其他节点。本方法已在上述实施例中描述,在此不在展开,本实施例虽然以第一消息中不携带可休眠终端休眠的时长为例进行说明,但不以此为限定,第一消息中携带可休眠终端休眠的时长,也在保护范围之内。
S204、mirror节点向包括对应的其他节点发送休眠消息,以使得包括对应的其他节点确定可休眠终端已休眠。
其中,对应的其他节点为发送第二消息的其他节点,即发起这个第二消息的节点,mirror节点向包括对应的其他节点发送休眠消息是指,mirror节点除了向所有的其他节点发送休眠消息,以使得所有其他节点确定可休眠终端已休眠。其中,mirror节点也可以仅向对应的其他节点发送休眠消息,且,如果同时有多个第二消息包含有效信息,来自不同的节点,mirror节点还可以分别向发起节点发送这个休眠消息。
进一步的,收到休眠消息后,此节点的所有时间受限命令都有本节点存储,并等待可休眠终端醒来,如等待mirror节点发来信息通知可休眠终端已结束休眠,在此期间要,节点自己判断第二消息是否失效,如果失效则删除第二消息。
S205、mirror节点若确定可休眠终端已休眠,且第二消息不包含时间限制信息,则将第二消息存入存储空间。
需要说明的是,由于不包含时间限制信息的第二消息不会过期,所以可以将这样的第二消息存入mirror节点中的存储空间内,直至可休眠终端醒来,再发送给可休眠终端。由于这种情况下,包含时间限制信息的第二消息均被删除,所以不需要区分存储空间,将不包含时间限制信息的第二消息存入存储空间即可。
S206、mirror节点若接收一次可休眠终端发送的第三消息,则确定可休眠终端已结束休眠。
示例性的,由于mirror节点接收了可休眠设备发送的第三消息,而可休眠设备只有在未休眠的时候才能接收和发送消息,所以确定可休眠设备已经结束休眠,如第三消息为Poll data,mirror节点只要接收一次Poll data即可确定可休眠终端已结束休眠,而不用像现有技术那样。每次发送前都先要求可休眠终端返回一次Poll data。
进一步的,Poll()接受一个指向结构′struct pollfd′列表的指针,其中包括了你想测试的文件描述符和事件。事件由一个在结构中事件域的比特掩码确定。当前的结构在调用后将被填写并在事件发生后返回。在一些版本中的″Poll.h″文件中包含了用于确定事件的一些宏定义。如Poll data就是可休眠终端可以进行信息交互的信令。
需要说明的是,可休眠终端与mirror节点的交互可以通过第一消息和第三消息进行,mirror节点与其他节点的交互可以通过第二消息进行,第一消息、第二消息和第三消息可以为一个指示消息、一个信令,或者用于网络节点间的command命令等,如第三消息可以是Poll data等。
需要说明的是,mirror节点可以在收到第三消息后,将表示可休眠终端状态的标志位调为0,以表示可休眠终端已经结束休眠了。
需要说明的是,S207和S208没有顺序关系,都在S206后执行。
S207、mirror节点将获取的第二消息发送至可休眠终端。
示例性的,mirror节点将存入存储空间的第二消息发送至可休眠终端。
S208、mirror节点向其他节点发送苏醒消息,以使得其他节点确定可休眠终端已结束休眠,并通过mirror节点向可休眠终端发送第二消息。
需要说明的是,向其他节点发送苏醒消息可以是通知其他节点,现在可休眠终端已经结束休眠,开始工作,可以发送包含时间限制信息的第二消息了。
示例性的,HAN中的其他节点在接收到苏醒消息后,通过mirror节点向可休眠终端发送第二消息,该第二消息可以为之前未发送成功的,包含时间限制信息的第二消息,也可以是新生成的不包含时间限制信息或包含时间限制信息的第二消息。
本发明实施例提供的镜像mirror节点处理信令的方法,mirror节点接收可休眠终端发送的第一消息,第一消息指示可休眠终端已休眠,获取其他节点发送的第二消息,其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含或不包含时间限制信息,若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。由于可休眠终端需要在休眠前向mirror节点发送一个第一消息,mirror节点通过这个第一消息确定了可休眠终端已经休眠,然后再对包含时间限制信息的第二消息进行处理,这样一来,mirror节点可以及时处理失效的第二消息,减少在mirror存储空间中存储的失效的第二消息,从而减少对mirror存储空间的浪费,进而更加合理的利用mirror节点的存储空间。
本发明再一实施例提供的mirror镜像节点处理信令的方法,如图3所示,该方法步骤包括:
S301、mirror节点接收可休眠终端发送的第一消息。
需要说明的是,该第一消息仅指示可休眠终端已休眠,本实施例以第一消息仅用于指示可休眠终端已休眠为例进行说明,但不以此为任何限定。
S302、mirror节点获取其他节点发送的第二消息。
其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含时间限制信息或不包含时间限制信息。
需要说明的是,若mirror节点接收到的第二消息包含时间限制信息,则执行步骤S303;若mirror节点接收到的第二消息不包含时间限制信息,则执行步骤S305。
S303、mirror节点若确定可休眠终端已休眠,且第二消息包含时间限制信息,则将第二消息存入第一存储空间。
值得指出的是,mirror节点包含第一存储空间和第二存储空间,第一存储空间存储携带有时间限制信息的第二消息,第二存储空间存储不携带时间限制信息的第二消息。
需要说明的是,mirror节点将包含时间限制信息第二消息存入第一存储空间;将不包含时间限制信息第二消息存入第二存储空间,可以使得检测时,仅检测第一存储空间,减少mirror节点的工作量,也可以将所有的第二消息存入一个预设存储空间中,检测整个预设存储空间中,不以本实施例的举例为任何限定。
S304、mirror节点检测第一存储空间中存储的第二消息,若第二消息存入第一存储空间的时长超过时间限制信息,则删除第二消息。
示例性的,第一存储空间中存储了三个第二消息,一个存入时间为17点10分时间限制信息3分钟,一个存入时间为17点12分时间限制信息10分钟,另一个,存入时间为17点10分时间限制信息6分钟,如果mirror节点从17点起,每5分钟检测一次,在第3次检测时,第一个第二消息失效,删除第一个第二消息;在第4次检测时第三个第二消息失效,删除第三个第二消息,如果,在第5次检测前,确定可休眠终端开始工作,则发送第二个第二消息至可休眠终端,否则,在第5次检测时,第二个第二消息失效,也删除。
或者,mirror节点从接到第一消息后,或在接到第一消息后、接到第一个第二消息起,如从17点起持续检测第一存储空间,当检测到某个第二消息失效时,则删除该第二消息。
需要说明的是,上述示例仅列举了一种按照第一预设时间周期性检测第一存储空间中存储的第二消息的方法,但不以此为限定。
S305、mirror节点若确定可休眠终端已休眠,且第二消息不包含时间限制信息,则将第二消息存入第二存储空间。
需要说明的是,由于不包含时间限制信息的第二消息不会过期,所以可以将这样的第二消息存入mirror节点中的第二存储空间内,直至可休眠终端醒来,再发送给可休眠终端。
S306、mirror节点若接收一次可休眠终端发送的第三消息,则确定可休眠终端已结束休眠。
需要说明的是,mirror节点可以在收到第三消息后,将表示可休眠终端状态的标志位调为0,以表示可休眠终端已经结束休眠了。
需要说明的是,S307和S308没有顺序关系,都在S306后执行。
S307、mirror节点将获取的第二消息发送至可休眠终端。
示例性的,mirror节点将存入第二存储空间的第二消息和在第一预设空间中,尚未被删除的第二消息发送至可休眠终端,也将后续获取的其他节点发送的第二消息发送至可休眠终端。
本发明实施例提供的镜像mirror节点处理信令的方法,mirror节点接收可休眠终端发送的第一消息,第一消息指示可休眠终端已休眠,获取其他节点发送的第二消息,其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含或不包含时间限制信息,若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。由于可休眠终端需要在休眠前向mirror节点发送一个第一消息,mirror节点通过这个第一消息确定了可休眠终端已经休眠,然后再对包含时间限制信息的第二消息进行处理,这样一来,mirror节点可以及时处理失效的第二消息,减少在mirror存储空间中存储的失效的第二消息,从而减少对mirror存储空间的浪费,进而更加合理的利用mirror节点的存储空间。
本发明又一实施例提供的mirror镜像节点处理信令的方法,如图4所示,该方法步骤包括:
S401、mirror节点接收可休眠终端发送的第一消息。
其中,第一消息用于指示可休眠终端已休眠,且携带有可休眠终端休眠的时长,如休眠时长为20分钟。
需要说明的是,步骤S401后可以执行S402和S404,其中,S402和S404没有顺序关系。
S402、mirror节点获取其他节点发送的第二消息。
其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含时间限制信息或不包含时间限制信息。
需要说明的是,若mirror节点接收到的第二消息包含时间限制信息,则执行步骤S403;若mirror节点接收到的第二消息不包含时间限制信息,则执行步骤S407。
S403、mirror节点若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据时间限制信息,确定第二消息失效的时间点。
示例性的,第一存储空间中存储了三个第二消息,一个存入时间为13点10分时间限制信息,如失效时间为3分钟,一个存入时间为13点12分失效时间为10分钟,另一个,存入时间为13点18分,失效时间为6分钟,那么,可以确定第一个第二消息的失效的时间点为13点13分,第二个第二消息的失效的时间点为13点21分,第三个第二消息的失效的时间点为13点23分。
S404、mirror节点根据可休眠终端休眠的时长,计算可休眠终端结束休眠的时间点。
示例性的,若休眠的时长为20分钟,mirror节点接收到可休眠终端发送的第一消息的时间为13点01分,则计算得到可休眠终端结束休眠的时间点为13点21分。或者,也可以在算得的时间点的基础上,减去可休眠终端与mirror节点之间传输信令的时延,作为计算结束休眠的基点,但是由于时延很小,本实施例采用忽略不计的方法,但不以此为限定,如果在休眠时间也很短暂的情况下,也可以将时延减去,以减小计算的误差。
S405、mirror节点若确定失效的时间点晚于结束休眠的时间点,则将所述第二消息存入所述第一存储空间,若确定失效的时间点早于结束休眠的时间点,则删除第二消息。
需要说明的是,步骤S403和步骤S404虽然也没有顺序关系,但都需要在步骤S405之前完成。
示例性的,mirror节点若确定第一个第二消息的失效的时间点为13点13分,第二个第二消息的失效的时间点为13点21分,第三个第二消息的失效的时间点为13点23分,而可休眠终端结束休眠的时间点为13点21分,则比较每个第二消息的失效时间点与可休眠终端结束休眠的时间点。第一个第二消息的失效时间13点13分早于结束休眠的时间点13点21分,则删除第一个第二消息;第二个第二消息的失效时间13点21分晚于结束休眠的时间点13点21分,则不删除第二个第二消息;第三个第二消息的失效时间13点23分晚于结束休眠的时间点13点21分,则不删除第三个第二消息
S406、mirror节点若确定可休眠终端已休眠,且第二消息不包含时间限制信息,则将第二消息存入第二存储空间。
需要说明的是,mirror节点包含第一存储空间和第二存储空间,第一存储空间存储携带有时间限制信息的第二消息,第二存储空间存储不携带时间限制信息的第二消息。
进一步的,由于不包含时间限制信息的第二消息不会过期,所以可以将这样的第二消息存入mirror节点中的第二存储空间内,直至可休眠终端醒来,再发送给可休眠终端。
S407、mirror节点若接收一次可休眠终端发送的第三消息,则确定可休眠终端已结束休眠。
需要说明的是,mirror节点可以在收到第三消息后,将表示可休眠终端状态的标志位调为0,以表示可休眠终端已经结束休眠了。
S408、mirror节点将获取的第二消息发送至可休眠终端。
示例性的,mirror节点将存入第一预设空间中的第二消息发送至可休眠终端,将第二存储空间中尚未被删除的的第二消息发送至可休眠终端。
需要说明的是,由于本实施例中mirror节点并没有通知其他节点可休眠终端已经休眠,而是自行储存了其他节点的第二消息,所以不需要在可休眠终端醒来后,向通知其他节点该终端已经结束休眠,而是将储存在第一存储空间和第二存储空间的第二消息发送给可休眠终端,并对后续接收到的第二消息不再储存,直接发送给可休眠终端。
本发明实施例提供的镜像mirror节点处理信令的方法,mirror节点接收可休眠终端发送的第一消息,第一消息指示可休眠终端已休眠,获取其他节点发送的第二消息,其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含或不包含时间限制信息,若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。由于可休眠终端需要在休眠前向mirror节点发送一个第一消息,mirror节点通过这个第一消息确定了可休眠终端已经休眠,然后再对包含时间限制信息的第二消息进行处理,这样一来,mirror节点可以及时处理失效的第二消息,减少在mirror存储空间中存储的失效的第二消息,从而减少对mirror存储空间的浪费,进而更加合理的利用mirror节点的存储空间。
本发明实施例提供的mirror节点50,如图5所示,包括:
接收单元501,用于接收可休眠终端60发送的第一消息,第一消息用于指示可休眠终端已休眠。
进一步的,接收单元501接收的第一消息还携带有可休眠终端60休眠的时长。
获取单元502,用于获取其他节点70发送的第二消息,其中,第二消息由其他节点70通过mirror节点50向可休眠终端60发送,第二消息包含或不包含时间限制信息。
处理单元503,用于若确定可休眠终端60已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。
示例性的,处理单元503确定可休眠终端60已休眠,且第二消息包含时间限制信息,删除获取单元502获取的第二消息。
示例性的,mirror节点50,如图6所示,还包括:
发送单元504,用于在处理单元503确定可休眠终端60已休眠,且第二消息包含时间限制信息,删除获取单元502获取的第二消息后,向对应的其他节点70发送休眠消息,以使得对应的其他节点70确定可休眠终端60已休眠,其中,对应的其他节点70为发送第二消息的其他节点70。
进一步的,可休眠终端60结束休眠后,接收单元501若接收一次可休眠终端60发送的第三消息,处理单元503则确定可休眠终端60已结束休眠。这样,发送单元504将获取单元502获取的第二消息发送至可休眠终端60。
再进一步的,发送单元504,还用于向其他节点70发送苏醒消息,以使得其他节点70确定可休眠终端60已结束休眠,并通过mirror节点向可休眠终端60发送第二消息。
或者,mirror节点50,如图7所示,还包括:
储存单元505,包含第一存储空间和第二存储空间,用于将携带有时间限制信息的第二消息存入第一存储空间,将不携带时间限制信息的第二消息存入第二存储空间。
进一步的,mirror节点50,如图8所示,还包括:
检测单元506,用于检测第一存储空间中存储的第二消息,若第二消息存入第一存储空间的时长超过时间限制信息指示的时长,则使得处理单元503删除第二消息。
再进一步的,mirror节点50,如图9所示,还包括:
计算单元507,用于若接收单元501接收的第一消息携带有可休眠终端休眠60的时长,则根据时长,计算可休眠终端60结束休眠的时间点。
示例性的,若接收单元501接收的第一消息还携带有可休眠终端60休眠的时长,则处理单元503可以用于若确定可休眠终端60已休眠,且第二消息包含时间限制信息,则删除获取单元502获取的第二消息。
发送单元504,还用于向对应的其他节点70发送休眠消息,休眠消息携带有计算单元507计算得到的可休眠终端60结束休眠的时间点,以使得对应的其他节点70确定可休眠终端60已休眠,并确定可休眠终端60结束休眠的时间点,在结束休眠的时间点后重新发送第二消息,其中,对应的其他节点70为发送第二消息的其他节点。
需要说明的是,这种情况下,发送单元504在mirror节点50确定可休眠终端60结束休眠后,不需要再向其他节点70发送苏醒消息,而是由其他节点70自己根据休眠消息携带的可休眠终端60结束休眠的时间点,确定重新发送包含时间限制信息的第二消息的时间点。
或者,mirror节点50中接收单元501接收的第一消息还携带有可休眠终端60休眠的时长时,处理单元503还用于根据第二消息的时间限制信息,确定第二消息失效的时间点;若确定失效的时间点晚于计算单元507确定的结束休眠的时间点,则将第二消息存入第一存储空间,若确定失效的时间点早于计算单元507确定的结束休眠的时间点,则删除第二消息。
进一步的,储存单元505,还用于若处理单元503确定可休眠终端60已休眠,且第二消息不包含时间限制信息,则将第二消息存入第二存储空间。
当可休眠终端结束休眠之后,可以向mirror节点50发送第三消息,如发送Poll data。
mirror节点50中接收单元501若接收一次可休眠终端60发送的第三消息,发送单元504则向可休眠终端60发送第二存储空间中的第二消息。
本mirror节点50可以使用上述实施例提供的方法进行工作,工作方法与实施例提供的方法相同,在此不再赘述。
本发明实施例提供的mirror节点,mirror节点接收可休眠终端发送的第一消息,第一消息指示可休眠终端已休眠,获取其他节点发送的第二消息,其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含或不包含时间限制信息,若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。由于可休眠终端需要在休眠前向mirror节点发送一个第一消息,mirror节点通过这个第一消息确定了可休眠终端已经休眠,然后再对包含时间限制信息的第二消息进行处理,这样一来,mirror节点可以及时处理失效的第二消息,减少在mirror存储空间中存储的失效的第二消息,从而减少对mirror存储空间的浪费,进而更加合理的利用mirror节点的存储空间。
本发明实施例提供的系统1,如图10所示,包括:
上述的mirror节点50。
可休眠终端60,用于向mirror节点50发送第一消息,第一消息用于指示可休眠终端已休眠。
其他节点70,用于通过mirror节点50向可休眠终端60发送第二消息,第二消息包含或不包含时间限制信息。
值得指出的是,系统1可以为HAN,其他节点可以包括控制节点,PCT等,mirror节点可以是单独的mirror节点,也可以是设置在ESI中的mirror节点。
需要说明是,上述mirror节点50对应上述方法实施例,可以用于上述方法实施例的步骤中,其具体各个步骤中的应用可以参照上述方法实施例,mirror节点50的具体结构与上述实施例中提供的缓存服务器的结构相同,在此不再赘述。
本发明实施例提供的系统,mirror节点接收可休眠终端发送的第一消息,第一消息指示可休眠终端已休眠,获取其他节点发送的第二消息,其中,第二消息由其他节点通过mirror节点向可休眠终端发送,第二消息包含或不包含时间限制信息,若确定可休眠终端已休眠,且第二消息包含时间限制信息,则根据预设规则处理第二消息。由于可休眠终端需要在休眠前向mirror节点发送一个第一消息,mirror节点通过这个第一消息确定了可休眠终端已经休眠,然后再对包含时间限制信息的第二消息进行处理,这样一来,mirror节点可以及时处理失效的第二消息,减少在mirror存储空间中存储的失效的第二消息,从而减少对mirror存储空间的浪费,进而更加合理的利用mirror节点的存储空间。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。