CN112073266A - 一种基于心跳机制的指令分发系统及方法 - Google Patents
一种基于心跳机制的指令分发系统及方法 Download PDFInfo
- Publication number
- CN112073266A CN112073266A CN202010918042.9A CN202010918042A CN112073266A CN 112073266 A CN112073266 A CN 112073266A CN 202010918042 A CN202010918042 A CN 202010918042A CN 112073266 A CN112073266 A CN 112073266A
- Authority
- CN
- China
- Prior art keywords
- heartbeat
- information
- broadcast
- terminal
- server
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5069—Address allocation for group communication, multicast communication or broadcast communication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于心跳机制的指令分发系统及方法,其中,该系统包括:服务器及多个受控终端,其中:服务器根据受控终端的网络地址信息划分为多个子网区域,在每一个子网区域随机选择一在线受控终端作为广播代理,以高频与服务器进行通信,且服务器在心跳反馈信息中加入需获取指令的受控终端列表信息;广播代理终端在检测到有针对本子网区域的指令信息时,广播需要获取指令的终端列表信息;当目标主机接收广播后,发起与服务器的心跳通信,完成对指令的响应。可以提升在心跳机制模式下的各受控终端对服务器发出的指令的响应效率;结合广播代理终端以高频心跳进行通信以及受控终端以低频心跳进行通信的方式,有效地降低了服务器的并发负载压力。
Description
技术领域
本发明涉及通信领域,具体涉及一种基于心跳机制的指令分发系统及方法。
背景技术
随着科学技术的快速发展,网络环境也变得越来越复杂,尤其是在工控网络领域中,由于网络的复杂性,用户对于工控终端安全管理类产品的要求也越来越高。终端安全管理类产品,受控终端与管理端之间一般采用单向通信的方式,即由终端代理程序周期性访问服务器获取管理指令,进而实现服务器对终端的安全策略配置等管理,这种受控终端与管理端之间采用单向通信的机制被称之为心跳机制。
基于大规模终端管理的场景,为了让服务器管理足够多的终端,在现有的基于心跳机制的单向通信方法中,心跳的频率一般会设置较大,因此在对某个终端进行指令分发时,时延较大,导致服务器无法对终端进行及时管理,进而导致终端对于该指令的响应效率较低。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中的对某个终端进行指令分发时,时延较大,导致服务器无法对终端进行及时管理,进而导致管理指令的响应效率较低的缺陷,从而提供一种基于心跳机制的指令分发系统及方法。
根据第一方面,本发明实施例提供了一种基于心跳机制的指令分发系统,包括:服务器及多个受控终端,其中:所述服务器用于获取所述多个受控终端的网络地址信息,根据所述网络地址信息划分所述多个受控终端,生成多个广播子网区域;在各所述广播子网区域中,获取多个受控终端的最近心跳时间;根据所述最近心跳时间、当前时间分别确定其中一受控终端作为各所述广播子网区域的广播代理终端;所述广播代理终端用于以第一预设心跳频率阈值向所述服务器发送第一心跳信息;所述服务器用于根据所述第一心跳信息生成并反馈心跳反馈信息,所述心跳反馈信息包括广播代理终端的管理指令信息以及目标受控终端列表信息;所述广播代理终端用于获取所述心跳反馈信息;当根据所述目标受控终端列表信息,确定与所属的广播子网区域中的受控终端相匹配时,生成广播包,并在所属的广播子网区域中广播所述广播包;所述多个受控终端用于根据所述广播包确定包含于所述目标受控终端列表信息中的受控终端,所述包含于所述目标受控终端列表信息中的受控终端用于向所述服务器发送第二心跳信息;所述服务器用于根据所述第二心跳信息向所述包含于所述目标受控终端列表信息中的受控终端发送指令信息。
结合第一方面,在第一方面第一实施方式中,所述服务器包括:判断模块,用于根据所述最近心跳时间、当前时间,判断所述受控终端是否在线,生成在线受控终端子集;广播代理终端确定模块,用于在所述在线受控终端子集中,确定其中一受控终端作为各所述广播子网区域的广播代理终端。
结合第一方面第一实施方式,在第一方面第二实施方式中,所述服务器还包括:心跳时间间隔确定模块,用于根据所述最近心跳时间、当前时间,确定所述受控终端的心跳时间间隔;在线离线确定模块,用于当所述受控终端的心跳时间间隔小于或等于第一预设时间阈值时,确定所述受控终端在线。
结合第一方面,在第一方面第三实施方式中,所述广播代理终端还用于:获取所述广播代理终端的当前心跳频率,将所述广播代理终端的心跳频率调节至第一预设心跳频率阈值。
结合第一方面,在第一方面第四实施方式中,所述服务器还用于:根据所述第一心跳信息,向所述广播子网区域中的广播代理终端发送心跳反馈信息。
结合第一方面,在第一方面第五实施方式中,所述受控终端还用于:解析所述广播包,确定包含于所述目标受控终端列表信息中的受控终端。
根据第二方面,本发明实施例提供了一种基于心跳机制的指令分发方法,包括:获取多个受控终端的网络地址信息,根据所述网络地址信息划分所述多个受控终端,生成多个广播子网区域;在各所述广播子网区域中,获取多个受控终端的最近心跳时间;根据所述最近心跳时间、当前时间分别确定其中一受控终端作为各所述广播子网区域的广播代理终端;获取所述广播代理终端以第一预设心跳频率阈值发送的第一心跳信息;根据所述第一心跳信息生成并反馈心跳反馈信息;所述心跳反馈信息包括广播代理终端的管理指令信息以及目标受控终端列表信息;根据第二心跳信息向包含于目标受控终端列表信息中的受控终端发送指令信息,所述第二心跳信息为受控终端向服务器发送的信息。
根据第三方面,本发明实施例提供了一种基于心跳机制的指令分发方法,包括:以第一预设心跳频率阈值向服务器发送第一心跳信息;获取心跳反馈信息,所述心跳反馈信息为服务器根据所述第一心跳信息生成的信息,包括目标受控终端列表信息;当根据所述目标受控终端列表信息,确定与所属的广播子网区域中的受控终端相匹配时,生成广播包,并在所属的广播子网区域中广播所述广播包。
根据第四方面,本发明实施例提供了一种基于心跳机制的指令分发方法,包括:根据广播包确定包含于目标受控终端列表信息中的受控终端;向服务器发送第二心跳信息;接收指令信息,所述指令信息为所述服务器根据所述第二心跳信息生成的信息。
根据第五方面,本发明实施例提供了一种计算机设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行第三方面或第四方面或第五方面所述的基于心跳机制的指令分发方法的步骤。
根据第六方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行第三方面或第四方面或第五方面所述的基于心跳机制的指令分发方法的步骤。
本发明技术方案,具有如下优点:
本发明提供的一种基于心跳机制的指令分发系统及方法,其中,该系统包括:服务器及多个受控终端,其中:服务器根据受控终端的网络地址信息划分为多个子网区域,在每一个子网随机选择任意一台在线受控终端作为广播代理,可以高频心跳方式与服务器进行通信,并且服务器在心跳反馈信息中加入需要获取指令的目标受控终端列表信息;广播代理终端在检测到有针对本子网区域的指令信息时,在本子网区域内广播需要获取指令的终端列表信息;当目标主机接收到广播后,立即发起与服务器的心跳通信,完成对指令的响应。
通过实施本发明,解决了现有技术中存在的对某个终端进行指令分发时,时延较大,导致服务器无法对终端进行及时管理,进而导致管理指令的响应效率较低的问题,可以提升在心跳机制模式下的各受控终端对服务器发出的指令的响应效率,可以实现以子网区域为广播域的指令的快速下发;可以及时对指定受控终端进行及时管理,缩短终端响应指令的时间,实现了对指令的秒级响应;结合广播代理终端以高频心跳进行通信以及受控终端以低频心跳进行通信的方式,有效地降低了服务器的并发负载压力。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中基于心跳机制的指令分发系统的一个具体示意图;
图2为本发明实施例中基于心跳机制的指令分发方法的一个具体示例的流程图;
图3为本发明实施例中基于心跳机制的指令分发方法的另一个具体示例的流程图;
图4为本发明实施例中基于心跳机制的指令分发方法中用于受控终端的一个具体示例的流程图;
图5为本发明实施例中计算机设备的一个具体示例图。
附图标记:
10-服务器;20-受控终端;30-广播代理终端。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
在基于心跳机制的大规模终端管理的应用场景中,为了让服务器能够管理足够多的终端,此时心跳频率会设置的较大,因此受控终端响应时间较长,导致无法对受控终端进行及时管理,为了解决相关技术中存在的指令下发时,受控终端的响应时间较长,延时较大的问题,本发明实施例提供了一种基于心跳机制的指令分发系统和方法,目的是提高基于心跳管理机制下的指令下发的效率。
本发明实施例提供了一种基于心跳机制的指令分发系统,如图1所示,该系统包括:服务器10及多个受控终端20,其中:
服务器10用于获取多个受控终端20的网络地址信息,根据网络地址信息划分多个受控终端20,生成多个广播子网区域;在各广播子网区域中,获取多个受控终端20的最近心跳时间;根据最近心跳时间、当前时间分别确定其中一受控终端20作为各广播子网区域的广播代理终端30;在本实施例中,服务器10可以是指令分发系统中的控制中心,用于指令的生成以及下发,指令可以是管理指令、控制指令等各种指令;受控终端20可以是在指令分发系统中受服务器10统一管理控制的计算机设备,其中,受控终端20的网络地址信息可以是IP地址,是与其他受控终端20的地址不相同的具备独一性的地址标识信息。广播子网区域可以是服务器10根据受控主机网络地址信息划分而成的各受控终端20的集合;最近心跳时间可以是受控终端20最近一次与服务器10进行通信的时间;广播代理终端30可以是服务器10在广播子网区域符合条件的受控终端20中,随机指定的任一台受控终端20。
具体地,在该指令分发系统中,服务器10用于执行以下过程:首先获取服务器10控制范围内所有受控终端20的网络地址信息,基于受控终端20的网络配置信息,也就是根据各受控终端20的网络地址信息,划分各广播子网区域。例如,受控终端20可以包括受控终端A1、受控终端A2、受控终端A3以及受控终端A4;受控终端A1的网络地址为192.168.0.1,受控终端A2的网络地址为192.168.0.10,受控终端A3的网络地址为192.168.1.1,受控终端A4的网络地址为192.168.1.10,此时,由于受控终端A1与A2的子网网段均为192.168.0.X,由于受控终端A3与A4的子网网段均为192.168.1.X,因此,受控终端A1与受控终端A2同属一广播子网域区域,受控终端A3与受控终端A4同属一广播子网区域。
具体地,在各广播子网区域中,服务器根据各受控终端20的最近心跳时间以及当前时间,根据最近心跳时间与当前确定受控终端20与服务器10进行通信的时间间隔,确定符合条件的受控终端20,继而在所有符合条件的受控终端20值随机确定一受控终端20为广播代理终端30,负责与服务器10的高频通信。
广播代理终端30用于以第一预设心跳频率阈值向服务器10发送第一心跳信息;在本实施例中,第一预设心跳频率阈值可以是高频心跳,例如,一秒与服务器10进行一次通信,也可以是三秒与服务器10进行一次通信,第一预设心跳频率阈值可以根据服务器10管控区域内广播子网区域的数量具体确定。具体地,广播代理终端30以第一预设心跳频率阈值与服务器10进行通信,也就是向服务器10发送第一心跳信息。
服务器10用于根据第一心跳信息生成并反馈心跳反馈信息,心跳反馈信息包括受控终端20列表信息;在本实施例中,心跳反馈信息是服务器10根据接收到的第一心跳信息而生成的反馈信息,具体地,包括广播代理终端的管理指令信息以及目标受控终端列表信息,例如可以是服务器对各广播代理终端的管理指令信息,以及在各广播代理终端对应的广播域中,需要获取服务器下发的管理指令的受控终端列表信息。目标受控终端即为服务器想要管理的且在线的受控终端。具体地,服务器10会检查管控区域内的每一个受控终端20是否存在指令,也就是说服务器10会检查在所管理区域内需要获取指令的终端信息,继而生成包含指令信息的终端列表信息,将其发送至相应的广播代理终端30。
广播代理终端30用于获取心跳反馈信息;当根据受控终端20列表信息,确定与所属的广播子网区域中的受控终端20相匹配时,生成广播包,并在所属的广播子网区域中广播包;在本实施例中,广播代理终端30接收服务器10发送的心跳反馈信息,也就是,也就是获取服务器10发送至各广播子网区域内各广播代理终端30的包含指令信息的终端列表信息。继而,广播代理终端30根据上述终端列表信息,当发现上述目标受控终端列表信息中存在本广播子网区域内受控终端20的网络地址信息时,生成广播包;所述广播包也是终端地址列表信息,将上述广播包在本广播子网区域内广播,以使本广播子网区域内的对应受控终端20均能接收到上述广播包。
多个受控终端用于根据广播包确定包含于目标受控终端列表信息中的受控终端,包含于所述目标受控终端列表信息中的受控终端用于向服务器发送第二心跳信息;在本实施例中,当受控终端20接收到上述广播包时,根据所述广播包中的终端地址列表信息,判断与本终端的网络地址信息是否匹配,也就是判断广播包中的目标受控终端地址列表信息中是否存在本受控终端20的地址,当存在时,说明本受控终端20需要与服务器10进行通信,此时,受控终端20立即向服务器10发送第二心跳信息,可以是以第二预设心跳频率向服务器10发送第二心跳信息。进而获取服务器10生成的控制指令信息,继而在本受控终端20上执行相应指令。
服务器10用于根据第二心跳信息向包含于目标受控终端列表信息中的受控终端20发送指令信息。在本实施例中,当服务器10接收到各受控终端20发送的第二心跳信息时,服务器10此时需要向各受控终端20反馈指令信息,上述指令信息可以是管理指令、控制指令以及其他任一服务器10需要受控终端20执行的命令信息。
本发明实施例提供了一种基于心跳机制的指令分发系统,包括:服务器及多个受控终端,其中:服务器根据受控终端的网络地址信息划分为多个子网区域,在每一个子网随机选择任意一台在线受控终端作为广播代理,可以高频心跳方式与服务器进行通信,并且服务器在心跳反馈信息中加入需要获取指令的目标受控终端列表信息;广播代理终端在检测到有针对本子网区域的指令信息时,在本子网区域内广播需要获取指令的终端列表信息;当目标主机接收到广播后,立即发起与服务器的心跳通信,完成对指令的响应。
通过实施本发明,解决了现有技术中存在的对某个终端进行指令分发时,时延较大,导致服务器无法对终端进行及时管理,进而导致管理指令的响应效率较低的问题,可以提升在心跳机制模式下的各受控终端对服务器发出的指令的响应效率,可以实现以子网区域为广播域的指令的快速下发;可以及时对指定受控终端进行及时管理,缩短终端响应指令的时间,实现了对指令的秒级响应;结合广播代理终端以高频心跳进行通信以及受控终端以低频心跳进行通信的方式,有效地降低了服务器的并发负载压力。
作为本发明的一个可选的实施方式,上述服务器10具体包括:
判断模块,用于根据最近心跳时间、当前时间,判断受控终端20是否在线,生成在线受控终端子集;在本实施例中,服务器10中的判断模块可以获取多个广播子网区域内各受控终端20的最近心跳时间,也就是确定各受控终端20与服务器10进行通信的时间,当最近心跳时间与当前时间的时间间隔在预设阈值范围内时,可以判断此受控终端20存货,也就是说,此受控终端20在线;相应地,在每一个广播子网区域内,都会生成一在线受控终端子集。
广播代理终端确定模块,用于在在线受控终端子集中,确定其中一受控终端20作为各广播子网区域的广播代理终端30。在本实施例中,在每一个广播子网区域内,当确定仍然在线的受控终端20后,在在线受控终端子集中,随机指定一受控终端20为广播代理终端30。此时,被指定的受控终端20开始执行广播代理终端30的功能,可以以高频心跳频率与服务器10进行通信,例如,广播代理终端30可以以一秒一次的频率服务器10进行通信。
作为本发明的一个可选的实施方式,上述服务器10,还包括:
心跳时间间隔确定模块,用于根据最近心跳时间、当前时间,确定受控终端20的心跳时间间隔;在本实施例中,受控终端20的心跳时间间隔可以是受控终端20最近一次与服务器10进行通信的时间,与当前时间的差值。具体地,对于每一台受控终端20来说,首先获取各受控终端20的最近心跳时间,以及当前时间,继而确定各受控终端20最近一次与服务器10进行通信的时间间隔。例如,受控终端A1的最近心跳时间为00:00:10;受控终端A2的最近心跳时间为00:01:10;受控终端A3的最近心跳时间为00:02:10;当前时间00:05:10,可以确定受控终端A1的心跳时间间隔为5min,受控终端A2的心跳时间间隔为4min,受控终端A3的心跳时间间隔为3min。
在线离线确定模块,用于当受控终端20的心跳时间间隔小于或等于第一预设时间阈值时,确定受控终端20在线。在本实施例中,第一预设时间阈值可以是根据受控终端20与服务器10进行通信的心跳频率确定的,此时,受控终端20可以是2min与服务器10进行一次通信,那么,第一预设时间阈值可以是两个时间间隔,也就是4min,因此,当时间间隔大于第一预设时间阈值时,可以确定此受控终端20离线,反之,在线。例如,受控终端A2与A3在线,受控终端A1离线。
本发明实施例提供了一种基于心跳机制的指令分发系统,在当前能与服务器正常通信的受控终端中随机确定一广播代理终端,当一受控终端与服务器最后进行心跳通信的时间间隔超过第一预设时间阈值时,确定此受控终端,也就是主机离线。通过在广播子网区域内设置一广播代理终端,可以对某一主机进行及时管理时,且主机响应时间较短,进而提升了基于心跳机制模式下指令的分发以及响应效率。
作为本发明的一个可选的实施方式,上述广播代理终端30还用于:获取广播代理终端30的当前心跳频率,将广播代理终端30的心跳频率调节至第一预设心跳频率阈值。在本实施例中,当某一受控终端20被指定为广播代理终端30后,广播代理终端30会自动提高心跳频率,也就是提高广播代理终端30与服务器10进行通信的频率,例如,当前心跳频率可以是所有的受控终端20与服务器10进行通信的频率,例如,2min一次;此时,某一受控终端20被指定为广播代理终端30后,自动将2min一次的通信频率提升至高频心跳频率,可以是1s一次,此时,第一预设心跳频率阈值就可以是1s,也就说,此时的广播代理终端30会1秒钟与服务器10进行一次通信,可以保证服务器10管理指令的快速下发以及受控终端20对指令的及时响应。
作为本发明的一个可选的实施方式,服务器10还用于:根据第一心跳信息,向广播子网区域中的广播代理终端30发送心跳反馈信息。在本实施例中,服务器10根据接收到的广播代理终端30发送的第一心跳信息,继而向广播代理终端30反馈心跳反馈信息,上述心跳反馈信息可以是“需要向服务器10发送心跳信息以获取指令”的受控终端20列表信息。
作为本发明的一个可选的实施方式,受控终端20还用于:解析广播包,确定包含于受控终端20列表信息中的受控终端20。在本实施例中,广播包可以是通过UDP形式广播的信息,受控终端20接收到上述广播包后,可以根据预设UDP通信协议解析,继而得到受控终端20列表信息。
本发明实施例还提供了一种基于心跳机制的指令分发方法,如图2所示,包括:
步骤S11:获取多个受控终端的网络地址信息,根据网络地址信息划分多个受控终端,生成多个广播子网区域;详细实施内容可参见上述系统实施例中服务器10的相关描述。
步骤S12:在各广播子网区域中,获取多个受控终端的最近心跳时间;详细实施内容可参见上述系统实施例中系统中服务器10的相关描述。
步骤S13:根据最近心跳时间、当前时间分别确定其中一受控终端作为各广播子网区域的广播代理终端;详细实施内容可参见上述系统实施例中服务器10的相关描述。
步骤S14:获取广播代理终端以第一预设心跳频率阈值发送的第一心跳信息;详细实施内容可参见上述系统实施例中服务器10的相关描述。
步骤S15:根据第一心跳信息生成并反馈心跳反馈信息,心跳反馈信息包括广播代理终端的管理指令信息以及目标受控终端列表信息;详细实施内容可参见上述系统实施例中服务器10的相关描述。
步骤S16:根据第二心跳信息向包含于目标受控终端列表信息中的受控终端发送指令信息,第二心跳信息为受控终端向服务器发送的信息。详细实施内容可参见上述系统实施例中服务器10的相关描述。
本发明提供的一种基于心跳机制的指令分发方法,其中,根据受控终端的网络地址信息划分为多个子网区域,在每一个子网随机选择任意一台在线受控终端作为广播代理,可以高频心跳方式与服务器进行通信,并且服务器在心跳反馈信息中加入需要获取指令的目标受控终端列表信息;通过实施本发明,解决了现有技术中存在的对某个终端进行指令分发时,时延较大,导致服务器无法对终端进行及时管理,进而导致管理指令的响应效率较低的问题,可以提升在心跳机制模式下的各受控终端对服务器发出的指令的响应效率,可以实现以子网区域为广播域的指令的快速下发;有效地降低了服务器的并发负载压力。
本发明实施例还提供了一种基于心跳机制的指令分发方法,如图3所示,包括:
步骤S21:以第一预设心跳频率阈值向服务器发送第一心跳信息;详细实施内容可参见上述系统实施例中广播代理终端30的相关描述。
步骤S22:获取心跳反馈信息,心跳反馈信息为服务器根据第一心跳信息生成的信息,包括广播代理终端的管理指令信息以及目标受控终端列表信息;详细实施内容可参见上述系统实施例中广播代理终端30的相关描述。
步骤S23:当根据目标受控终端列表信息,确定与所属的广播子网区域中的受控终端相匹配时,生成广播包,并在所属的广播子网区域中广播包。详细实施内容可参见上述系统实施例中广播代理终端30的相关描述。
本发明提供的一种基于心跳机制的指令分发方法,检测到有针对本子网区域的指令信息时,在本子网区域内广播需要获取指令的终端列表信息;通过实施本发明,可以提升在心跳机制模式下的各受控终端对服务器发出的指令的响应效率,可以实现以子网区域为广播域的指令的快速下发;结合广播代理终端以高频心跳进行通信以及受控终端以低频心跳进行通信的方式,有效地降低了服务器的并发负载压力。
本发明实施例还提供了一种基于心跳机制的指令分发方法,如图4所示,包括:
步骤S31:根据广播包确定包含于目标受控终端列表信息中的受控终端;详细实施内容可参见上述系统实施例中受控终端20的相关描述。
步骤S32:向服务器发送第二心跳信息;详细实施内容可参见上述系统实施例中受控终端20的相关描述。
步骤S33:接收指令信息,指令信息为服务器根据第二心跳信息生成的信息。详细实施内容可参见上述系统实施例中受控终端20的相关描述。
本发明提供的一种基于心跳机制的指令分发方法,当目标主机接收到广播代理终端在检测到有针对本子网区域的指令信息时,在本子网区域内广播的需要获取指令的终端列表信息广播后,立即发起与服务器的心跳通信,完成对指令的响应。通过实施本发明,解决了现有技术中存在的对某个终端进行指令分发时,时延较大,导致服务器无法对终端进行及时管理,进而导致管理指令的响应效率较低的问题,可以提升在心跳机制模式下的各受控终端对服务器发出的指令的响应效率,可以实现以子网区域为广播域的指令的快速下发;可以及时对指定受控终端进行及时管理,缩短终端响应指令的时间,实现了对指令的秒级响应;结合广播代理终端以高频心跳进行通信以及受控终端以低频心跳进行通信的方式,有效地降低了服务器的并发负载压力。
本发明实施例还提供了一种计算机设备,如图5所示,该计算机设备可以包括处理器41和存储器42,其中处理器41和存储器42可以通过总线40或者其他方式连接,图5中以通过总线连接为例。
处理器41可以为中央处理器(Central Processing Unit,CPU)。处理器41还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器42作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的基于心跳机制的指令分发方法对应的程序指令/模块(例如,图1所示的服务器10、受控终端20以及广播代理终端30)。处理器41通过运行存储在存储器42中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的基于心跳机制的指令分发方法。
存储器42可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器41所创建的数据等。此外,存储器42可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器42可选包括相对于处理器41远程设置的存储器,这些远程存储器可以通过网络连接至处理器41。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器42中,当被所述处理器41执行时,执行如图2、图3、图4所示实施例中的基于心跳机制的指令分发方法。上述计算机设备具体细节可以对应参阅图1所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
本发明实施例还提供了一种非暂态计算机可读介质,非暂态计算机可读存储介质存储计算机指令,计算机指令用于使计算机执行如上述实施例中任意一项描述的基于心跳机制的指令分发方法,其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(FlashMemory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (11)
1.一种基于心跳机制的指令分发系统,其特征在于,包括:服务器及多个受控终端,其中:
所述服务器用于获取所述多个受控终端的网络地址信息,根据所述网络地址信息划分所述多个受控终端,生成多个广播子网区域;在各所述广播子网区域中,获取多个受控终端的最近心跳时间;根据所述最近心跳时间、当前时间分别确定其中一受控终端作为各所述广播子网区域的广播代理终端;
所述广播代理终端用于以第一预设心跳频率阈值向所述服务器发送第一心跳信息;
所述服务器用于根据所述第一心跳信息生成并反馈心跳反馈信息,所述心跳反馈信息包括广播代理终端的管理指令信息以及目标受控终端列表信息;
所述广播代理终端用于获取所述心跳反馈信息;当根据所述目标受控终端列表信息,确定与所属的广播子网区域中的受控终端相匹配时,生成广播包,并在所属的广播子网区域中广播所述广播包;
所述多个受控终端用于根据所述广播包确定包含于所述目标受控终端列表信息中的受控终端,所述包含于所述目标受控终端列表信息中的受控终端用于向所述服务器发送第二心跳信息;
所述服务器用于根据所述第二心跳信息向所述包含于所述目标受控终端列表信息中的受控终端发送指令信息。
2.根据权利要求1所述的系统,其特征在于,所述服务器包括:
判断模块,用于根据所述最近心跳时间、当前时间,判断所述受控终端是否在线,生成在线受控终端子集;
广播代理终端确定模块,用于在所述在线受控终端子集中,确定其中一受控终端作为各所述广播子网区域的广播代理终端。
3.根据权利要求2所述的系统,其特征在于,所述服务器还包括:
心跳时间间隔确定模块,用于根据所述最近心跳时间、当前时间,确定所述受控终端的心跳时间间隔;
在线离线确定模块,用于当所述受控终端的心跳时间间隔小于或等于第一预设时间阈值时,确定所述受控终端在线。
4.根据权利要求1所述的系统,其特征在于,所述广播代理终端还用于:获取所述广播代理终端的当前心跳频率,将所述广播代理终端的心跳频率调节至第一预设心跳频率阈值。
5.根据权利要求1所述的系统,其特征在于,所述服务器还用于:根据所述第一心跳信息,向所述广播子网区域中的广播代理终端发送心跳反馈信息。
6.根据权利要求1所述的系统,其特征在于,所述受控终端还用于:
解析所述广播包,确定包含于所述受控终端列表信息中的受控终端。
7.一种基于心跳机制的指令分发方法,其特征在于,包括:
获取多个受控终端的网络地址信息,根据所述网络地址信息划分所述多个受控终端,生成多个广播子网区域;
在各所述广播子网区域中,获取多个受控终端的最近心跳时间;
根据所述最近心跳时间、当前时间分别确定其中一受控终端作为各所述广播子网区域的广播代理终端;
获取所述广播代理终端以第一预设心跳频率阈值发送的第一心跳信息;
根据所述第一心跳信息生成并反馈心跳反馈信息,所述心跳反馈信息包括广播代理终端的管理指令信息以及目标受控终端列表信息;
根据第二心跳信息向包含于目标受控终端列表信息中的受控终端发送指令信息,所述第二心跳信息为受控终端向服务器发送的信息。
8.一种基于心跳机制的指令分发方法,其特征在于,包括:
以第一预设心跳频率阈值向服务器发送第一心跳信息;
获取心跳反馈信息,所述心跳反馈信息为服务器根据所述第一心跳信息生成的信息,包括广播代理终端的管理指令信息以及目标受控终端列表信息;
当根据所述目标受控终端列表信息,确定与所属的广播子网区域中的受控终端相匹配时,生成广播包,并在所属的广播子网区域中广播所述广播包。
9.一种基于心跳机制的指令分发方法,其特征在于,包括:
根据广播包确定包含于目标受控终端列表信息中的受控终端;
向服务器发送第二心跳信息;
接收指令信息,所述指令信息为所述服务器根据所述第二心跳信息生成的信息。
10.一种计算机设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行权利要求7-9中任一项所述的基于心跳机制的指令分发方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求7-9中任一项所述的基于心跳机制的指令分发方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010918042.9A CN112073266B (zh) | 2020-09-03 | 2020-09-03 | 一种基于心跳机制的指令分发系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010918042.9A CN112073266B (zh) | 2020-09-03 | 2020-09-03 | 一种基于心跳机制的指令分发系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112073266A true CN112073266A (zh) | 2020-12-11 |
CN112073266B CN112073266B (zh) | 2022-04-05 |
Family
ID=73666020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010918042.9A Active CN112073266B (zh) | 2020-09-03 | 2020-09-03 | 一种基于心跳机制的指令分发系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112073266B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101420444A (zh) * | 2008-12-12 | 2009-04-29 | 天柏宽带网络科技(北京)有限公司 | 一种提供呈现服务的方法 |
CN101729331A (zh) * | 2008-10-28 | 2010-06-09 | 华为技术有限公司 | 成簇方法与装置、簇头与基站的路由方法与装置 |
CN102263775A (zh) * | 2010-05-31 | 2011-11-30 | 上海贝尔股份有限公司 | 一种本区域sip呼叫控制方法及其装置 |
CN103227839A (zh) * | 2013-05-10 | 2013-07-31 | 网宿科技股份有限公司 | 内容分发网络服务器区域自治的管理系统 |
US9930064B1 (en) * | 2016-11-23 | 2018-03-27 | Blue Star Software | Network management security and protection system |
CN111385137A (zh) * | 2019-03-11 | 2020-07-07 | 深圳市鸿合创新信息技术有限责任公司 | 一种终端唤醒方法及服务器、电子设备 |
-
2020
- 2020-09-03 CN CN202010918042.9A patent/CN112073266B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729331A (zh) * | 2008-10-28 | 2010-06-09 | 华为技术有限公司 | 成簇方法与装置、簇头与基站的路由方法与装置 |
CN101420444A (zh) * | 2008-12-12 | 2009-04-29 | 天柏宽带网络科技(北京)有限公司 | 一种提供呈现服务的方法 |
CN102263775A (zh) * | 2010-05-31 | 2011-11-30 | 上海贝尔股份有限公司 | 一种本区域sip呼叫控制方法及其装置 |
CN103227839A (zh) * | 2013-05-10 | 2013-07-31 | 网宿科技股份有限公司 | 内容分发网络服务器区域自治的管理系统 |
US9930064B1 (en) * | 2016-11-23 | 2018-03-27 | Blue Star Software | Network management security and protection system |
CN111385137A (zh) * | 2019-03-11 | 2020-07-07 | 深圳市鸿合创新信息技术有限责任公司 | 一种终端唤醒方法及服务器、电子设备 |
Non-Patent Citations (1)
Title |
---|
闫斌等: "一种基于地理位置信息的高能效无线传感器网络", 《自动化学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112073266B (zh) | 2022-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3876607A1 (en) | Intelligent scheduling method, terminal device, edge node cluster and intelligent scheduling system | |
CN108777722B (zh) | 多系统组网通信方法、装置、移动终端及存储介质 | |
US20050108331A1 (en) | Presence tracking for datagram based protocols with search | |
CN112654049B (zh) | 用于配置无线通信覆盖扩展系统的方法、系统、节点和介质 | |
US20230161541A1 (en) | Screen projection method and system | |
CN109040295B (zh) | 异常断线的确定方法及装置、终端及存储介质 | |
US11991779B2 (en) | Subscription message processing method and apparatus, and computer device and storage medium | |
US20200014586A1 (en) | Handling network failures in networks with redundant servers | |
US20190238949A1 (en) | Multicast service providing method and software defined networking controller | |
CN110312140B (zh) | 直播数据处理方法、装置、系统及计算机可读存储介质 | |
CN113473576A (zh) | 漫游连网处理方法、装置、移动终端及可读存储介质 | |
KR20220048484A (ko) | 분산 서비스를 위한 요청 응답의 정확한 통신 지연 보장을 제공하기 위한 시스템 | |
CN111459676B (zh) | 一种节点资源管理方法、装置及存储介质 | |
CN112272244B (zh) | 一种路由器WAN端IPv6上网模式配置方法及装置 | |
CN112073266B (zh) | 一种基于心跳机制的指令分发系统及方法 | |
CN112491951B (zh) | 对等网络中的请求处理方法、服务器及存储介质 | |
CN114385374A (zh) | 基于消息中间件的消息处理方法、装置及存储介质 | |
WO2018006684A1 (zh) | 报文处理方法、装置及路由器 | |
CN113872799A (zh) | 管理节点的方法、节点和系统 | |
CN106789662B (zh) | 一种路由公告方法及装置 | |
US11729140B2 (en) | Method and system for managing DHCP servers | |
WO2018227701A1 (zh) | 边缘网络中设备的管理方法及系统 | |
CN102938866B (zh) | 传输vlan信息的方法、设备和系统 | |
CN111726679B (zh) | 一种视频播放方法、装置、设备及介质 | |
CN115150363B (zh) | Ip地址更新方法、网关设备、网关下挂设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |