一种数联网上数据高效分发方法与装置

文档序号:33005139发布日期:2023-01-18 03:19阅读:40来源:国知局
一种数联网上数据高效分发方法与装置

1.本技术涉及数联网领域,特别涉及一种数联网上数据高效分发方法与装置。


背景技术:

2.数联网是基于软件定义,通过以数据为中心的开放式软件体系结构和标准化互操作协议,将大规模的各种异构数据平台和系统连接起来,在“物理/机器”互联网之上形成的“虚拟/数据”网络。现如今,大规模集群服务器之间的数据交互传输主要依靠服务器-客户机(c/s,client-sever)式的架构组网。
3.客户机通过局域网与中心服务器连接,接受用户请求,并通过网络向服务器提出请求,对数据库进行操作;c/s架构能够充分发挥客户端电脑的处理能力,使得许多工作可以在客户端本地设备处理完成后再提交至服务器,减轻了对服务器本身的运行数据负荷。
4.但现有技术方案里,随着集群服务运算需求的增加,用于数据处理的本地设备数量也在随之增长;全部依靠c/s架构组网的数据传输模式,对于面向大规模的跨云跨地域的数联网系统,各节点之间的文件数据传输与运行任务分发速率受限于中心服务器的上传带宽上限,伴随数联网系统规模的不断增长,数据分发效率持续降低。


技术实现要素:

5.本技术实施例提供一种数联网上数据高效分发方法、装置、电子设备及计算机可读存储介质,以解决相关技术中在面向大规模的跨云跨地域数联网系统节点之间的文件数据传输与运行任务分发过程中,分发速率受限于中心服务器的上传带宽上限,数据传输效率低的问题。
6.第一方面,本技术实施例提供了一种数据分发方法,应用于数联网中的客户端,所述方法包括:
7.获取数联网中各节点的节点信息,所述节点信息用于表征所述节点的属性特征;
8.根据所述节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合;
9.根据所述节点拓扑集合,生成树状网络规划文件,所述树状网络规划文件包括:所述目标节点的标识、节点类型以及所述目标节点在树状结构中的位置信息;
10.根据所述目标节点的标识,向所述目标节点分发目标数据包与所述树状网络规划文件。
11.在一种可选实现方式中,所述方法还包括:
12.对所述目标节点进行失效检测;其中,所述失效检测包括:与所述目标节点建立连接,并获取连接响应结果;
13.在所述目标节点的连接响应时间大于第一阈值的情况下,判断所述目标节点为失效节点;
14.根据所述树状网络规划文件获取所述失效节点的标识,以及所述失效节点在树状
结构中的位置信息,并发送所述失效节点的标识以及位置信息至所述目标节点中的根节点;
15.针对所述失效节点执行节点失效动态调节操作。
16.在一种可选实现方式中,所述根据所述树状网络规划文件获取所述失效节点的标识,以及所述失效节点在树状结构中的位置信息,并发送所述失效节点的标识以及位置信息至所述目标节点中的根节点,包括:
17.根据所述树状网络规划文件,将所述失效节点的节点信息发送至所述失效节点的父节点;以供所述父节点继续将所述失效节点的节点信息向根节点传输;
18.在所述根节点接收到所述失效节点的节点信息后,通知所述根节点将所述失效节点标记为异常。
19.在一种可选实现方式中,所述针对所述失效节点执行节点失效动态调节操作,包括:
20.根据所述树状网络规划文件,对所述失效节点的至少一个子孙节点重新执行预设规划算法,并将所述子孙节点的拓扑关系连接至所述失效节点的父节点,从而更新所述子孙节点在树状结构中的位置;
21.将所述子孙节点的传输任务调整至所述父节点中执行。
22.在一种可选实现方式中,向所述树状网络传输树分发目标数据包与所述树状网络规划文件,包括:
23.根据所述树状结构中根节点的标识,将所述树状网络规划文件和所述目标数据包发送至所述根节点,以供所述根节点通过所述树状网络规划文件,将所述数联网中的目标节点构建为树状结构,以及将所述目标数据包分发至树状结构中各所述目标节点中。
24.在一种可选实现方式中,所述节点信息包括:
25.连接所述数联网节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;通过解析处理操作,将所述节点信息转化为标准数据结构格式;其中,所述解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;所述标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
26.在一种可选实现方式中,所述根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合,包括:
27.根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离;
28.通过聚类算法,选取所述数联网中的一个目标节点作为根节点;所述目标节点为到所述数联网中其他节点平均距离最短的节点;
29.同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数联网中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中;
30.重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
31.在一种可选实现方式中,在所述根据节点的节点信息,按照预设规划算法,从所有
所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合之前,所述方法还包括:
32.根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
33.第二方面,本技术实施例提供了一种数据分发装置,其特征在于,应用于数联网中的客户端,所述装置包括:
34.信息获取模块,用于获取数联网中各节点的节点信息,所述节点信息用于表征所述节点的属性特征;
35.拓扑集合构建模块,用于根据所述节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合;
36.规划文件生成模块,用于根据所述节点拓扑集合,生成树状网络规划文件,所述树状网络规划文件包括:所述目标节点的标识、节点类型以及所述目标节点在树状结构中的位置信息;
37.数据分发模块,用于根据所述目标节点的标识,向所述目标节点分发目标数据包与所述树状网络规划文件。
38.在一种可选实现方式中,所述装置还包括:
39.节点检测模块,用于对所述目标节点进行失效检测;其中,所述失效检测包括:与所述目标节点建立连接,并获取连接响应结果;
40.结果判断模块,用于在所述目标节点的连接响应时间大于第一阈值的情况下,判断所述目标节点为失效节点;
41.失效节点信息传输模块,用于根据所述树状网络规划文件获取所述失效节点的标识,以及所述失效节点在树状结构中的位置信息,并发送所述失效节点的标识以及位置信息至所述目标节点中的根节点;
42.动态调节模块,用于针对所述失效节点执行节点失效动态调节操作。
43.在一种可选实现方式中,所述失效节点信息传输模块,包括:
44.失效节点信息传输子模块,用于根据所述树状网络规划文件,将所述失效节点的节点信息发送至所述失效节点的父节点;以供所述父节点继续将所述失效节点的节点信息向根节点传输;
45.异常节点标记子模块,用于在所述根节点接收到所述失效节点的节点信息后,通知所述根节点将所述失效节点标记为异常。
46.在一种可选实现方式中,所述动态调节模块,包括:
47.拓扑关系更新子模块,用于根据所述树状网络规划文件,对所述失效节点的至少一个子孙节点重新执行预设规划算法,并将所述子孙节点的拓扑关系连接至所述失效节点的父节点,从而更新所述子孙节点在树状结构中的位置;
48.任务调整子模块,用于将所述子孙节点的传输任务调整至所述父节点中执行。
49.在一种可选实现方式中,所述数据分发模块,包括:
50.数据分发子模块,用于根据所述树状结构中根节点的标识,将所述树状网络规划文件和所述目标数据包发送至所述根节点,以供所述根节点通过所述树状网络规划文件,将所述数联网中的目标节点构建为树状结构,以及将所述目标数据包分发至树状结构中各
所述目标节点中。
51.在一种可选实现方式中,所述节点信息包括:
52.连接所述数联网节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;所述解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;所述标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
53.在一种可选实现方式中,所述拓扑集合构建模块,包括:
54.相对距离计算子模块,用于根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离;
55.最优距离选取子模块,用于通过聚类算法,选取所述数联网中的一个目标节点作为根节点;所述目标节点为到所述数联网中其他节点平均距离最短的节点;
56.目标节点选择子模块,用于同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数联网中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中;
57.集合构建循环子模块,用于重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
58.在一种可选实现方式中,在所述拓扑集合构建模块开始执行功能之前,所述装置还包括:
59.节点信息解析模块,用于根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
60.在本技术实施例中,本技术通过本地客户端执行规划算法,基于数联网系统中各节点的节点信息将数联网中的部分节点规划生成树状拓扑集合,该集合可实现在数联网中各节点之间建立网状连接,生成树状网络传输树;通过本地客户端,根据传输树结构生成树状网络规划文件,并与将要分发的目标数据文件打包上传至传输树根节点,依靠树状网络的传输关系将上述数据包分发至数联网系统中的所有节点;依靠建立树状传输树向数联网系统中的所有节点实行数据分发,大幅提高了节点之间的信息传输效率。
61.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
62.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
63.图1是本技术实施例提供的一种数据分发方法的简要步骤实施流图;
64.图2是本技术实施例提供的数联网数据分发网络结构对比图;
65.图3是本技术实施例提供的一种数据分发方法的具体步骤流程框图;
66.图4是本技术实施例提供的一种节点失效动态处理步骤示意图;
67.图5是本技术实施例提供的一种数据分发装置关系框图。
具体实施方式
68.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
69.图1是本技术实施例提供的一种数据分发方法的简要步骤流图,应用于数联网中的客户端;如图1所示,该方法可以包括:
70.步骤101,获取数联网中各节点的节点信息,所述节点信息用于表征所述节点的属性特征。
71.在该步骤中,首先由客户端获取数联网中待处理的各节点的节点信息,节点信息具体用于表征节点的属性特征;由各节点的属性特征能够得到各节点之间的相对物理距离与信息传输时延等信息,在后续对于集群树状传输树的生成过程具有重要意义。
72.具体地,操作用户或运维人员经本地客户端连接至数联网系统信息库中,并按照预设目标开始获取整个数联网中所有待操作节点的节点信息;值得说明的是,在此过程中数联网内的所有目标节点之间均为对等式设备节点,尚不存在物理链路或传输层级之间的上下关系。
73.参照图2,图2是本技术实施例提供的一种网络传输关系结构对比图;如图2所示,现有的服务器-客户机(c/s,client server)架构中,所有的客户端主机节点202链接于中心服务器201,数据分发速度受限于中心服务器201的网络上传带宽;而本技术依靠类对等式计算机网络(p2p,peer to peer)建立服务集群,各节点之间的链路传输关系为类树状根茎式网状传输,各节点之间为对等式关系,不存在传统意义上的中心服务器;参照图2,p2p架构中所有节点可按照结构划分为:根节点203、中间节点204、叶子结点205;其中根节点203作为整个传输网络的数据输入节点,接收到数据文件后只负责对其他节点的文件传输,叶子结点205由于不存在下层链路节点因此只负责数据文件的接受,而处于中间部的中间节点204则同时承担下载和上传文件的责任。
74.步骤102,根据所述节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合。
75.在获取到待操作数联网中所有目标节点的节点信息之后,客户端根据获取的节点信息开始执行预设规划算法来生成树状传输网络框架;根据节点信息所表征的节点属性特征,客户端将至少选取数联网中的部分目标节点来构建树状结构的节点拓扑集合;由数联网中的至少部分节点来构建树状结构的节点拓扑集合,生成树状网络传输树,其规划算法的基本思想为,以最快速度进行已接受指令节点的增值,以使得整个节点集群最终的总传输时间。
76.具体地,通过获取的节点信息得到各节点所处的真实地理位置,计算得到各节点之间的相对距离;通过聚类算法,选取出一个到集群中其他节点平均距离最短的节点作为根节点;根节点作为整个树状拓扑集合的初始节点,在树状传输网络中作为外来数据的接入点;当根节点选取完毕后,继续由获取的节点信息中,包含的节点所在城市服务的云服务提供商等信息,得到各节点之间的传输速率与网络传输时延;由此根据节点之间的传输参数特征,首先选取一个当前传输结束时间最短的节点作为父节点,之后再在剩余待选取的
节点中选择一个与其距离最短的节点作为其子节点加入至拓扑集合中;不断重复该步骤,直到拓扑集合中选取的节点数达到预设阈值;本技术由树状传输网络构成的大规模集群部署和运维系统可称作treeops系统。
77.在本步骤中,以节点的节点信息为依据,使用拓扑算法逐渐筛选最佳目标节点加入至拓扑集合中来生成树状网络传输树;基于快速增值的思想经过多伦循环筛选构建出最优结构的拓扑集合;生成树的生成原则是为了达到在数据传输工作集群整体的传输时间最短的技术效果,因此在此过程中,节点信息包含的地理位置、传输速率等信息是作为算法执行的重要依据;由此构建的网络传输树,在实际使用中能够针对多节点的数据分发传输达到最优传输速率,提升了在大规模数联服务网络中的数据传输效率。
78.步骤103,根据所述节点拓扑集合,生成树状网络规划文件,所述树状网络规划文件包括:所述目标节点的标识、节点类型以及所述目标节点在树状结构中的位置信息。
79.客户端执行规划算法生成树状传输网络后,根据各节点之间的连接关系以及单个节点在整个传输网络中所处的位置信息,生成树状网络规划文件;其中树状网络规划文件中包括的信息有:传输树中每个目标节点的身份标识,以及目标节点在树状结构中的节点类型、每个目标节点之间的相互连接关系等。
80.网络规划文件作为整个数联网节点构成的树状网络传输树蓝图,详细地记录了各节点对应的身份信息,一方面用于在网络中正确辨识节点的身份;另一方面,通过该文件在后期的数据传输过程中,各节点之间能够清晰地识别出自己在当前树状结构中的位置,从而正确的进行数据分发与中转;能够正确识别各节点之间链路的上下层关系,是确保数据信息正确传输的重要保障。
81.步骤104,根据所述目标节点的标识,向所述目标节点分发目标数据包与所述树状网络规划文件。
82.客户端生成树状网络规划文件后,即可启用系统实现大规模数联网的数据分发;可进行分发传输的数据类型包括:应用程序源数据包、功能性指令脚本文件、影音媒体文件、加密文档等。
83.具体地,客户端首先将用户指定需要传输的目标数据与树状网络规划文件打包后同时上传至树状传输树的根节点上,由根节点开始向直接与根节点建立连接关系的第一层目标节点同时发送目标数据与树状网络规划文件,之后受到数据的目标节点将通过解析树状网络规划文件,明确自己需要传输的下层目标节点对象。
84.树状网络规划文件详细的包含了整个集群树状传输结构的各方面信息,相当于传输网络结构的蓝图,是整个集群系统在数据传输过程中的重要依据,不同于传统s/c网络传输架构中所有服务节点均从中央服务器上获取数据,本技术实施例中建立的树状传输网络除传输树末端的叶子结点外,其他节点均同时承担数据的接收与分发两项责任;对于分发这项动作而言,服务集群整体会拥有更多的数据上传量,不再受限于单中心服务器有限的上传带宽。
85.综上所述,本技术实施例提供的一种数据传输方法,通过本地客户端执行规划算法,基于数联网中各节点的节点信息将数联网中的部分节点规划生成树状拓扑集合,该集合可实现在数联网中各节点之间建立网状连接,生成树状网络传输树;通过本地客户端,根据传输树结构生成树状网络规划文件,并与将要分发的目标数据文件打包上传至传输树根
节点,依靠树状网络的传输关系将上述数据包分发至数联网中的所有节点;依靠建立树状传输树向数联网系统中的所有节点实行数据分发,大幅提高了节点之间的信息传输效率。
86.参照图3,图3是本技术实施例提供的一种数据传输方法的具体步骤流程框图;如图3所示,其步骤具体包括:
87.步骤301,获取数联网中各节点的节点信息,所述节点信息用于表征所述节点的属性特征。
88.该步骤具体可以参照上述步骤101,此处不再赘述。
89.可选的,步骤301还可以包括:
90.子步骤3011,根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
91.其中,节点信息包括:连接数联网节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
92.具体地,在集群任务开始之前首先由图3中所示的树状网络规划模块,对用户输入的数联网节点信息进行读取,经调用解析函数对包含节点信息的输入文件进行解析处理,从而将用户输入转化为安全外壳协议下的标准数据格式(ssh machine,secure shell machine),将对应信息转化为标准数据结构表;其中包含的数据类型包括:ssh用户名、互联网协议地址(ip,internet protocol address),ssh端口、ssh密码、节点所在城市、节点云服务商、节点描述、节点内网ip。
93.值得说明的是,sshmachine可以提供给负责ssh连接的类执行目标节点的ssh连接和指令执行;sshmachine以列表的形式存储在类虚拟机(vminfo,virtual machine)中,并在程序运行时始终存在。
94.经过对用户输入的节点信息进行解析与标准化,生成数据结构表,能够更加统一和方便地管理数联网中庞大节点数量对应的节点信息,同时在后期树状传输树的生成中作为标准输入与算法执行的重要依据。
95.步骤302,根据所述节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合。
96.该步骤具体可以参照上述步骤102,此处不再赘述。
97.可选的,步骤302还可以包括:
98.子步骤3021,根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离。
99.通过调用解析操作得到的标准sshmachine结构数据中,目标节点的云服务商、节点所在城市等信息,可以得到各目标节点之间的相对地理位置,从而可以通过计算得出各节点之间的地理距离。
100.目标节点之间,在现实环境中的相对距离也会对数据传输产生一定影响,经长距离传输的数据信息可能存在多次交换机的数据中转,将产生更高的传输时延。而本技术中通过计算相对距离选择最优传输网络生成策略,能够依据节点的基本属性特征尽可能的去除节点之间不必要的传输时延。
101.子步骤3022,通过聚类算法,选取所述数联网中的一个目标节点作为根节点;所述目标节点为到所述数联网中其他节点平均距离最短的节点。
102.根节点作为整个数联网与外界的接入点,需要最大程度确保其到集群中每一个节点的平均距离为最短,如此做法能够确保在后期整个数联网的实际使用中,面对所有节点所需要消耗的传输资源为最少。
103.子步骤3023,同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数联网中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中。
104.传输树的算法设计思想为,以最快的速度进行已接受指令节点的增殖,使得节点集群最终的总传输时间尽量少;承接子步骤3022,在选取根节点完毕后,对于数联网中的其他节点通过比较在当前结构中在树中的传输时间长短选取目标节点加入至传输树中,经过多轮循环选取传输时间最短的节点生成的传输树,集群总体需要的传输时间同样也是最短的。
105.具体地,对于每个已在树中的节点,都具备一个传输结束时间。在本场景中,假设对于相同的传输任务,节点到节点之间的传输时间应当是固定的;例如当前时刻,节点a至节点b、c、d的传输时间都设为1;当节点b需要增加一个子节点e时,即等同于使其增加一份传输任务,因此该节点的传输结束时间+1。在一棵生成树中,节点集群总体需要的传输时间,等同于生成树中节点最长的传输结束时间。
106.每一轮节点的选取皆遵循传输时间最短原则,能够确保集群总体需要的传输时间同样也是最短的;对于数联网节点的最佳数据传输效率需求提供最优的传输策略。
107.子步骤3024,重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
108.集合的目标节点个数达到目标阈值时停止。
109.通过重复上述步骤,经过多次节点的循环筛选和加入,直到传输树吸纳的目标节点个数达到用户的目标需求即可停止;在此过程中,传输树中包含的目标节点个数可以包括数联网系统中识别到的所有节点,也可以仅为数联网中所有节点中的部分节点。
110.步骤303,根据所述节点拓扑集合,生成树状网络规划文件,所述树状网络规划文件包括:所述目标节点的标识、节点类型以及所述目标节点在树状结构中的位置信息。
111.该步骤具体可以参照上述步骤103,此处不再赘述。
112.步骤304,根据所述目标节点的标识,向所述目标节点分发目标数据包与所述树状网络规划文件。
113.该步骤具体可以参照上述步骤104,此处不再赘述。
114.可选的,步骤304还可以包括:
115.子步骤3041,根据所述树状结构中根节点的标识,将所述树状网络规划文件和所述目标数据包发送至所述根节点,以供所述根节点通过所述树状网络规划文件,将所述数联网中的目标节点构建为树状结构,以及将所述目标数据包分发至树状结构中各所述目标节点中。
116.客户端根据生成的树状网络规划文件,通过系统实现大规模数联网上的数据分发。
117.具体地,客户端首先将用户指定需要传输的目标数据与树状网络规划文件打包后同时上传至树状传输树的根节点上,由根节点开始向直接与根节点建立连接关系的第一层目标节点同时发送目标数据与树状网络规划文件,之后受到数据的目标节点将通过解析树状网络规划文件,明确自己需要传输的下层目标节点对象。树状网络规划文件详细的包含了整个集群树状传输结构的各方面信息,相当于传输网络结构的蓝图,是整个集群系统在数据传输过程中的重要依据,不同于传统s/c网络传输架构中所有服务节点均从中央服务器上获取数据,本技术实施例中建立的树状传输网络除传输树末端的叶子结点外,其他节点均同时承担着数据的接收与分发两项责任,对于分发这项动作而言,数联网整体会拥有更多的数据上传量,不再受限于单中心服务器有限的上传带宽。
118.步骤305,对所述目标节点进行失效检测;其中,所述失效检测包括:与所述目标节点建立连接,并获取连接响应结果。
119.引入失效检测机制,是执行动态调节的必要选项。对于一个能管理整个集群的运维系统而言,尽量保证集群整体处于高可用性是必要的;同时对于失效节点应当及时进行监测和报告,使得依赖于集群的各类分布式任务能够及时得到调整,确保运行平稳。现有技术中,可以通过定期发送心跳包,对节点批量进行ping等方法进行失效检测判断,由于存在网络波动等因素,可以依据情况对节点的连接时间存在一定的容忍;在本技术实施例中,采用连接响应时间阈值的方法判断目标节点的状态。
120.可选的,步骤305还可以包括:
121.子步骤3051,根据连接相应结果进行判断,在所述目标节点的连接响应时间大于第一阈值的情况下,判断所述目标节点为失效节点。
122.具体地,当集群中节点的treeops客户端向其子节点通过安全外壳协议建立连接后,若在发起连接请求后的200s内未能得到相应,则程序将发出异常警告,认定该节点已经处于失效状态。
123.在实际使用情况中,集群中的各节点应该时刻保持联通状态以供系统能够持续运行,随时应对来自各不同用户的服务请求;而通过定期进行失效检测,能够及时发现集群中的各节点因可能存在的硬件/软件故障导致的运行故障,进而才能够针对性的对处于失效状态的目标节点进行动态调节,使得系统在失去该节点的情况下仍能够正常工作。
124.步骤306,根据所述连接相应结果,发送失效节点的标识以及位置信息。
125.当子节点连接超时后,系统将判断该节点为失效节点,为配合系统执行动态调节,首先需要明细失效节点的节点信息,以及与失效节点存在拓扑连接关系的其他节点状况;当判断节点失效抛出异常,将直接进入节点失效的处理程序。由于生成树中子节点的任务依赖于父节点的传递,一旦父节点失效,它的整棵子树都会陷入失效;因此需要分步处理失效节点的问题。
126.可选的,步骤306还可以包括:
127.子步骤3061,根据所述树状网络规划文件,将所述失效节点的节点信息发送至所述失效节点的父节点;以供所述父节点继续将所述失效节点的节点信息向根节点传输。
128.具体地,首先失效节点的信息依照生成树的路径向根节点进行汇报,由于树状网络规划文件记录了传输树的具体拓扑连接关系,因此各节点也可根据传输路径逆向向自己的上层父节点进行信息传输。
129.不同于数据分发的执行过程,失效节点信息的传输具有单一性,最终只指向整个树状传输网络的根节点。
130.子步骤3062,在所述根节点接收到所述失效节点的节点信息后,通知所述根节点将所述失效节点标记为异常。
131.根节点根据接收到的失效节点信息后,将失效节点标记为异常状态,并反馈给客户端;由此能够通知用户或运维人员对失效节点进行检修等相关操作。
132.步骤307,针对所述失效节点执行节点失效动态调节操作。
133.将失效节点的子节点任务进行动态调整,交由其他节点继续执行。在本技术实施例的设计中,失效节点的所有子节点传输任务将动态调整到该节点的父节点上,从拓扑上看即作为父节点新的子节点存在。如果是根节点失效,则不执行后续任务直接返回,等待修复并重新执行。因此,该机制能保证除了失效节点外的所有正常节点都能够执行对应任务,保证了系统的整体可用性。
134.可选的,步骤307还可以包括:
135.子步骤3071,根据所述树状网络规划文件,对所述失效节点的至少一个子孙节点重新执行预设规划算法,并将所述子孙节点的拓扑关系连接至所述失效节点的父节点,从而更新所述子孙节点在树状结构中的位置。
136.对于已失效的节点,首要处理步骤是要将其子孙节点的连接关系转移至其他正常节点,以确保这些节点能够正常工作;在本技术实施例中,采用根据所述树状网络规划文件,对所述失效节点的至少一个子孙节点重新执行预设规划算法,并将所述子孙节点的拓扑关系连接至所述失效节点的父节点的方法。
137.具体地,参照图4,图4是本技术实施例提供的一种节点失效动态处理步骤示意图;如图4所示,其中401为区别不同类型节点的参考图例,在框图402中,2号节点由系统判断为失效节点,2号节点的拓扑关系中,其上层的父节点为1号节点,3号节点与4号节点是与2号节点处于同层级关系的正常节点,2号节点的子孙节点包括5号、6号以及8号节点,且8号节点亦为5号节点的子节点,此时5号、6号、8号节点仍然处于正常状态;开始执行规划算法,重新赋予2号节点的子孙节点连接关系,由于在树状关系中2号节点的父节点为1号节点,故此将上述3个节点的拓扑关系转至1号节点,如框图403所示,转以后关系效果如框图404所示。
138.子步骤3072,将所述子孙节点的传输任务调整至所述父节点中执行。
139.如图4所示,经动态调节转移后5号、6号节点直接与1号节点连接,8号节点仍然作为5号节点的子节点;由此以来,当集群执行下一次数据传输任务时,将直接由1号节点将目标数据包与树状网络规划文件分发至5号与6号节点,即使2号节点已经失效,仍不影响5号、6号以及8号节点的正常工作。
140.综上所述,本技术实施例提供的一种数据传输方法,通过本地客户端执行规划算法,基于数联网中各节点的节点信息将数联网中的部分节点规划生成树状拓扑集合,该集合可实现在数联网中各节点之间建立网状连接,生成树状网络传输树;通过本地客户端,根据传输树结构生成树状网络规划文件,并与将要分发的目标数据文件打包上传至传输树根节点,依靠树状网络的传输关系将上述数据包分发至数联网中的所有节点;此外,客户端将定期对数联网中的所有节点实施状态检测,并对检测结果失效的节点启用动态调节机制将原节点上的任务内容转移至其他节点执行;依靠建立树状传输树向数联网系统中的所有节
点实行数据分发,能够大幅提高节点之间的信息传输效率;同时,引入动态调节机制填补了集群系统的故障补救机制空缺,大大提升了系统的容错性。
141.参照图5,图5是本技术实施例提供的一种数据分发装置关系框图,应用于数联网中的客户端;如图5所示,所述装置包括:信息获取模块501、拓扑集合构建模块502、规划文件生成模块503、数据分发模块504;
142.所述信息获取模块501,用于获取数联网中各节点的节点信息,所述节点信息用于表征所述节点的属性特征;
143.所述拓扑集合构建模块502,用于根据所述节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合;
144.所述规划文件生成模块503,用于根据所述节点拓扑集合,生成树状网络规划文件,所述树状网络规划文件包括:所述目标节点的标识、节点类型以及所述目标节点在树状结构中的位置信息;
145.所述数据分发模块504,用于根据所述目标节点的标识,向所述目标节点分发目标数据包与所述树状网络规划文件。
146.在一种可选实现方式中,所述装置还包括:
147.节点检测模块,用于对所述目标节点进行失效检测;其中,所述失效检测包括:与所述目标节点建立连接,并获取连接响应结果;
148.结果判断模块,用于在所述目标节点的连接响应时间大于第一阈值的情况下,判断所述目标节点为失效节点;
149.失效节点信息传输模块,用于根据所述树状网络规划文件获取所述失效节点的标识,以及所述失效节点在树状结构中的位置信息,并发送所述失效节点的标识以及位置信息至所述目标节点中的根节点;
150.动态调节模块,用于针对所述失效节点执行节点失效动态调节操作。
151.在一种可选实现方式中,所述失效节点信息传输模块,包括:
152.失效节点信息传输子模块,用于根据所述树状网络规划文件,将所述失效节点的节点信息发送至所述失效节点的父节点;以供所述父节点继续将所述失效节点的节点信息向根节点传输;
153.异常节点标记子模块,用于在所述根节点接收到所述失效节点的节点信息后,通知所述根节点将所述失效节点标记为异常。
154.在一种可选实现方式中,所述动态调节模块,包括:
155.拓扑关系更新子模块,用于根据所述树状网络规划文件,对所述失效节点的至少一个子孙节点重新执行预设规划算法,并将所述子孙节点的拓扑关系连接至所述失效节点的父节点,从而更新所述子孙节点在树状结构中的位置;
156.任务调整子模块,用于将所述子孙节点的传输任务调整至所述父节点中执行。
157.在一种可选实现方式中,所述数据分发模块,包括:
158.数据分发子模块,用于根据所述树状结构中根节点的标识,将所述树状网络规划文件和所述目标数据包发送至所述根节点,以供所述根节点通过所述树状网络规划文件,将所述数联网中的目标节点构建为树状结构,以及将所述目标数据包分发至树状结构中各
所述目标节点中。
159.在一种可选实现方式中,所述节点信息包括:
160.连接所述数联网节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;所述解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;所述标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
161.在一种可选实现方式中,所述拓扑集合构建模块,包括:
162.相对距离计算子模块,用于根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离;
163.最优距离选取子模块,用于通过聚类算法,选取所述数联网中的一个目标节点作为根节点;所述目标节点为到所述数联网中其他节点平均距离最短的节点;
164.目标节点选择子模块,用于同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数联网中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中;
165.集合构建循环子模块,用于重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
166.在一种可选实现方式中,所述拓扑集合构建模块开始执行功能之前,所述装置还包括:
167.节点信息解析模块,用于根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
168.综上所述,本技术实施例提供的一种数据传输装置,通过本地客户端执行规划算法,基于数联网中各节点的节点信息将数联网中的部分节点规划生成树状拓扑集合,该集合可实现在数联网中各节点之间建立网状连接,生成树状网络传输树;通过本地客户端,根据传输树结构生成树状网络规划文件,并与将要分发的目标数据文件打包上传至传输树根节点,依靠树状网络的传输关系将上述数据包分发至数联网中的所有节点;此外,客户端将定期对集群中的所有节点实施状态检测,并对检测结果失效的节点启用动态调节机制将原节点上的任务内容转移至其他节点执行;依靠建立树状传输树向集群系统中的所有节点实行数据分发,能够大幅提高节点之间的信息传输效率;同时,引入动态调节机制填补了集群系统的故障补救机制空缺,大大提升了系统的容错性。
169.本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求指出。
170.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1