一种基于通信拓扑的分布式协同交互方法及系统
技术领域
本发明涉及分布式协同交互技术领域,特别涉及一种基于通信拓扑的分布式协同交互方法及系统。
背景技术
目前,云计算是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。云计算早期,简单地说,就是简单的分布式计算,解决任务分发,并进行计算结果的合并。因而,云计算又称为网格计算。通过这项技术,可以在很短的时间内(几秒种)完成对数以万计的数据的处理,从而达到强大的网络服务;如何提高云计算系统处理任务的速度,具有重要的意义。
发明内容
本发明目的之一在于提供了一种基于通信拓扑的分布式协同交互方法,采用通信拓扑信息获取参与处理任务的节点,提高了任务分配速度,进而提高了云计算系统处理任务的速度。
本发明实施例提供的一种基于通信拓扑的分布式协同交互方法,包括:
步骤S1:获取云计算系统的通信拓扑信息;
步骤S2:对通信拓扑信息中的控制节点进行排序;
步骤S3:并对控制节点进行通信校验;
步骤S4:当校验合格时,对控制节点进行节点扩展;当校验不合格时,删除控制节点;
步骤S5:建立控制节点与扩展节点的通信连接关系,进行分布式协同交互。
优选的,步骤S2:对通信拓扑信息中的控制节点进行排序,包括:
步骤S201:获取与控制节点连接的设备的类型和/或控制节点的响应时间和/或控制节点的算力值和/或设备的数量;
步骤S202:基于设备的类型和/或控制节点的响应时间和/或控制节点的算力值和/或设备的数量对控制节点进行评价;
步骤S203:基于评价从高到低对控制节点进行排序;
或,
步骤S211:获取控制节点的协同值和置信度,
步骤S212:基于协同值与置信度,计算控制节点的优先值;
步骤S213:按照优先值从大到小的顺序对控制节点进行排序。
优选的,步骤S3:并对控制节点进行通信校验,包括:
步骤S331:依据排序后的控制节点顺序,依次向控制节点发送第一验证信息;
步骤S332:接收控制节点对于第一验证信息的第一反馈信息;
步骤S333:将第一反馈信息与预先存储的第二验证信息进行比对,当比对符合时,控制节点的通信校验合格;当比对不符合时,控制节点的通信校验为不合格;
或,
步骤S341:依据排序后的控制节点顺序,依次向控制节点发送第三验证信息并接收控制节点发送的第四验证信息;
步骤S342:计算第四验证信息的第一哈希值,控制节点计算第三验证信息的第二哈希值;
步骤S343:将第一哈希值与预先存储的第一验证哈希值进行比对,控制节点将第二哈希值与预先存储的第二验证哈希值进行比对;当第一哈希值比对通过且第二哈希值比对通过时,控制节点的通信校验合格;
步骤S4:当校验合格时,对控制节点进行节点扩展;当校验不合格时,删除控制节点,还包括:
步骤S401:获取控制节点的第一历史通信信息;
步骤S402:解析第一历史通信信息,获取待确认扩展节点列表;
步骤S403:依次向待确认扩展节点列表中的第一节点发送第一状态确认信息,并接收第一节点对于第一状态确认信息的第二反馈信息;
步骤S404:当第二反馈信息为闲置时,将第一节点作为扩展节点;
和/或,
步骤S411:获取控制节点的历史接入设备信息,
步骤S412:解析历史接入设备信息,获取待确认扩展设备列表;
步骤S413:依次向待确认扩展设备列表的第一设备发送第二状态确认信息,并接收第一设备对于第二状态确认信息的第三反馈信息;
步骤S414:当第三反馈信息为闲置时,将第一设备作为控制节点的扩展设备,基于扩展设备对控制节点进行扩展。
优选的,步骤S5:建立控制节点与扩展节点的通信连接关系,进行分布式协同交互,包括:
步骤S501:获取扩展节点的第二历史通信信息;
步骤S502:解析第二历史通信信息,获取容许扩展节点接入的控制节点;
步骤S503:当容许扩展节点接入的控制节点的数目大于等于预设的第一数值时,基于扩展节点与控制节点之间的通信链路的参数,对控制节点进行排序获取第一待连接表,提取第一待连接表中预设的第二数值的控制节点与扩展节点建立通信连接;
步骤S504:当容许扩展节点接入的控制节点的数目小于预设的第一数值时,获取通信拓扑信息中的各个控制节点的连接节点数,基于连接节点数从小到大的顺序对控制节点进行排序获得第二待连接表,扩展节点按照第二待连接表的顺序依次尝试与控制节点建立通信连接,直至扩展节点连接的控制节点的数目等于预设的第一数值或第二待连接表上的所有的控制节点都已尝试连接;
步骤S5:建立控制节点与扩展节点的通信连接关系,进行分布式协同交互,还包括:
步骤S511:获取云计算系统中的控制节点和扩展节点的状态,提取状态为闲置的控制节点和扩展节点建立协同交互节点列表;
步骤S512:获取协同交互节点列表中的控制节点或扩展节点的协同值和置信度;
步骤S513:基于协同值和置信度,计算控制节点或扩展节点的优先值;计算公式如下:
其中,
表示控制节点或扩展节点的优先值;
表示协同值;
表示与控制节点或扩展
节点连接的节点数;
表示与控制节点或扩展节点连接的节点对于控制节点或扩展节点的
置信度;
步骤S514:统计优先值大于预设的参考值的控制节点和扩展节点的数目作为第一标准值并将优先值大于预设的参考值的控制节点和扩展节点作为第一层协同交互节点;
步骤S515:获取交互任务,将交互任务分解成与第一标准值相等数目的子任务;
步骤S516:获取与第一层协同交互节点连接的设备的类型和/或第一层协同交互节点的响应时间和/或第一层协同交互节点的算力值和/或设备的数量;
步骤S517:基于设备的类型和/或第一层协同交互节点的响应时间和/或第一层协同交互节点的算力值和/或设备的数量对第一层协同交互节点进行评价,获取评价值,计算公式如下:
其中,
表示评价值;
表示与第一层协同交互节点连接的设备的数量;
为根据第
个设备的设备类型查询设备类型-评分值对应表获得的值;
、
、
、
分别为预设的对
应类型、响应时间、算力值、数量的关系系数;
为根据响应时间查询响应时间-评分值获得
的值;
为算力值;
为根据设备的数量查询数量-评分值获得的值;
步骤S518:解析子任务,提取子任务的特征值;
步骤S519:基于特征值,计算子任务的需求值,计算公式如下;
其中,
表示子任务的需求值;
表示子任务的特征值数量;
表示第
个特征值对应
的需求值;
步骤S520:基于需求值与评价值,将子任务分配给第一层协同交互节点。
优选的,基于通信拓扑的分布式协同交互方法,还包括:当交互任务结束后,根据交互任务完成情况,对参与交互任务的控制节点和扩展节点进行协同值修正;修正公式为:
其中,
表示修正后的控制节点或扩展节点的协同值,
表示修正前的控制节点或扩
展节点的协同值,
表示根据资金流转情况确定的修正因子,
表示修正幅度,
表示修正
幅度的修正值;
;N表示参与交互任务的控制节点或扩展节点的数
目;
表示第
个参与交互任务的控制节点或扩展节点处理的任务对应的需求值;
表示交互任务对应的需求值。
本发明还提供一种基于通信拓扑的分布式协同交互系统,包括:
拓扑信息获取单元,用于获取云计算系统的通信拓扑信息;
排序模块,用于对通信拓扑信息中的控制节点进行排序;
校验模块,用于对控制节点进行通信校验;
扩展模块,用于当校验合格时,对控制节点进行节点扩展;当校验不合格时,删除控制节点;
协同交互模块,用于建立控制节点与扩展节点的通信连接关系,进行分布式协同交互。
优选的,排序模块执行操作包括:
获取与控制节点连接的设备的类型和/或控制节点的响应时间和/或控制节点的算力值和/或设备的数量;
基于设备的类型和/或控制节点的响应时间和/或控制节点的算力值和/或设备的数量对控制节点进行评价;
基于评价从高到低对控制节点进行排序;
或,
获取控制节点的协同值和置信度,
基于协同值与置信度,计算控制节点的优先值;
按照优先值从大到小的顺序对控制节点进行排序;
校验模块执行操作包括:
依据排序后的控制节点顺序,依次向控制节点发送第一验证信息;
接收控制节点对于第一验证信息的第一反馈信息;
将第一反馈信息与预先存储的第二验证信息进行比对,当比对符合时,控制节点的通信校验合格;当比对不符合时,控制节点的通信校验为不合格;
或,
依据排序后的控制节点顺序,依次向控制节点发送第三验证信息并接收控制节点发送的第四验证信息;
计算第四验证信息的第一哈希值,控制节点计算第三验证信息的第二哈希值;
将第一哈希值与预先存储的第一验证哈希值进行比对,控制节点将第二哈希值与预先存储的第二验证哈希值进行比对;当第一哈希值比对通过且第二哈希值比对通过时,控制节点的通信校验合格。
优选的,扩展模块执行操作包括:
获取控制节点的第一历史通信信息;
解析第一历史通信信息,获取待确认扩展节点列表;
依次向待确认扩展节点列表中的第一节点发送第一状态确认信息,并接收第一节点对于第一状态确认信息的第二反馈信息;
当第二反馈信息为闲置时,将第一节点作为扩展节点;
和/或,
获取控制节点的历史接入设备信息,
解析历史接入设备信息,获取待确认扩展设备列表;
依次向待确认扩展设备列表的第一设备发送第二状态确认信息,并接收第一设备对于第二状态确认信息的第三反馈信息;
当第三反馈信息为闲置时,将第一设备作为控制节点的扩展设备,基于扩展设备对控制节点进行扩展。
优选的,协同交互模块执行操作包括:
获取扩展节点的第二历史通信信息;
解析第二历史通信信息,获取容许扩展节点接入的控制节点;
当容许扩展节点接入的控制节点的数目大于等于预设的第一数值时,基于扩展节点与控制节点之间的通信链路的参数,对控制节点进行排序获取第一待连接表,提取第一待连接表中预设的第二数值的控制节点与扩展节点建立通信连接;
当容许扩展节点接入的控制节点的数目小于预设的第一数值时,获取通信拓扑信息中的各个控制节点的连接节点数,基于连接节点数从小到大的顺序对控制节点进行排序获得第二待连接表,扩展节点按照第二待连接表的顺序依次尝试与控制节点建立通信连接,直至扩展节点连接的控制节点的数目等于预设的第一数值或第二待连接表上的所有的控制节点都已尝试连接;
协同交互模块还执行操作包括:
获取云计算系统中的控制节点和扩展节点的状态,提取状态为闲置的控制节点和扩展节点建立协同交互节点列表;
获取协同交互节点列表中的控制节点或扩展节点的协同值和置信度;
基于协同值和置信度,计算控制节点或扩展节点的优先值;计算公式如下:
其中,
表示控制节点或扩展节点的优先值;
表示协同值;
表示与控制节点或扩展
节点连接的节点数;
表示与控制节点或扩展节点连接的节点对于控制节点或扩展节点的
置信度;
统计优先值大于预设的参考值的控制节点和扩展节点的数目作为第一标准值并将优先值大于预设的参考值的控制节点和扩展节点作为第一层协同交互节点;
获取交互任务,将交互任务分解成与第一标准值相等数目的子任务;
获取与第一层协同交互节点连接的设备的类型和/或第一层协同交互节点的响应时间和/或第一层协同交互节点的算力值和/或设备的数量;
基于设备的类型和/或第一层协同交互节点的响应时间和/或第一层协同交互节点的算力值和/或设备的数量对第一层协同交互节点进行评价,获取评价值,计算公式如下:
其中,
表示评价值;
表示与第一层协同交互节点连接的设备的数量;
为根据第
个设备的设备类型查询设备类型-评分值对应表获得的值;
、
、
、
分别为预设的对
应类型、响应时间、算力值、数量的关系系数;
为根据响应时间查询响应时间-评分值获得
的值;
为算力值;
为根据设备的数量查询数量-评分值获得的值;
解析子任务,提取子任务的特征值;
基于特征值,计算子任务的需求值,计算公式如下;
其中,
表示子任务的需求值;
表示子任务的特征值数量;
表示第
个特征值对应
的需求值;
基于需求值与评价值,将子任务分配给第一层协同交互节点。
优选的,基于通信拓扑的分布式协同交互系统,还包括总结模块,用于当交互任务结束后,根据交互任务完成情况,对参与交互任务的控制节点和扩展节点进行协同值修正;修正公式为:
其中,
表示修正后的控制节点或扩展节点的协同值,
表示修正前的控制节点或扩
展节点的协同值,
表示根据资金流转情况确定的修正因子,
表示修正幅度,
表示修正
幅度的修正值;
;N表示参与交互任务的控制节点或扩展节点的数
目;
表示第
个参与交互任务的控制节点或扩展节点处理的任务对应的需求值;
表示交互任务对应的需求值。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中一种基于通信拓扑的分布式协同交互方法的示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例提供了一种基于通信拓扑的分布式协同交互方法,如图1所示,包括:
步骤S1:获取云计算系统的通信拓扑信息;
步骤S2:对通信拓扑信息中的控制节点进行排序;
步骤S3:并对控制节点进行通信校验;
步骤S4:当校验合格时,对控制节点进行节点扩展;当校验不合格时,删除控制节点;
步骤S5:建立控制节点与扩展节点的通信连接关系,进行分布式协同交互。
上述技术方案的工作原理及有益效果为:
当云计算系统接到任务时,首先,第一步,获取云计算系统的通信拓扑信息,通信拓扑信息可以是预先存储的,实现快速获取可以参与到任务的控制节点的拓扑信息;然后进行排序;当然获取到通信拓扑信息并不能直接采用其中的控制节点进行任务分配,还需要对拓扑信息中的控制节点进行校验,校验包括:是否可以参与任务【控制节点能够处理任务的类型是否与接收到的任务匹配】,当前是否闲置等等;当校验通过时进行节点扩展,通过节点扩展衍生出扩展节点,提高云计算系统处理任务的能力;最后建立控制节点与扩展节点的通信连接,形成最后的分布式协同网络,然后将任务在分布式协网络中分发;在节点扩展时,提高了云计算系统处理任务的性能,进一步提高了云计算系统处理任务的速度。
本发明的基于通信拓扑的分布式协同交互方法,采用通信拓扑信息获取参与处理任务的节点,提高了任务分配速度,进而提高了云计算系统处理任务的速度。
在一个实施例中,步骤S2:对通信拓扑信息中的控制节点进行排序,包括:
步骤S201:获取与控制节点连接的设备的类型和/或控制节点的响应时间和/或控制节点的算力值和/或设备的数量;
步骤S202:基于设备的类型和/或控制节点的响应时间和/或控制节点的算力值和/或设备的数量对控制节点进行评价;
步骤S203:基于评价从高到低对控制节点进行排序;
或,
步骤S211:获取控制节点的协同值和置信度,
步骤S212:基于协同值与置信度,计算控制节点的优先值;
步骤S213:按照优先值从大到小的顺序对控制节点进行排序。
上述技术方案的工作原理及有益效果为:
本实施例提供两种排序方案,方案一:根据各个控制节点接入的设备的类型、响应时间、算力值、接入设备的数量等参数对控制节点进行评价,该评价一定程度上反应控制节点的性能,以评价的高低进行排序,当任务的需求处理节点为有限个数时,根据排序好的列表实现快速挑选参与任务的节点;方案二:根据云计算系统分配的协同值,以及与控制节点连接的节点提供的置信度,确定各个控制节点的优先值,以优先值从大到小进行排序;根据协同值和置信度对控制节点进行表示,一定程度上反应控制节点在云计算系统的重要性;当任务的需求处理节点为有限个数时,根据排序好的列表实现快速挑选参与任务的节点。
优选的,步骤S3:并对控制节点进行通信校验;包括:
步骤S331:依据排序后的控制节点顺序,依次向控制节点发送第一验证信息;
步骤S332:接收控制节点对于第一验证信息的第一反馈信息;
步骤S333:将第一反馈信息与预先存储的第二验证信息进行比对,当比对符合时,控制节点的通信校验合格;当比对不符合时,控制节点的通信校验为不合格;
或,
步骤S341:依据排序后的控制节点顺序,依次向控制节点发送第三验证信息并接收控制节点发送的第四验证信息;
步骤S342:计算第四验证信息的第一哈希值,控制节点计算第三验证信息的第二哈希值;
步骤S343:将第一哈希值与预先存储的第一验证哈希值进行比对,控制节点将第二哈希值与预先存储的第二验证哈希值进行比对;当第一哈希值比对通过且第二哈希值比对通过时,控制节点的通信校验合格;
上述技术方案的工作原理及有益效果为:
拓扑信息中的控制节点在获取后,并不是每个控制节点都能直接参与任务的;故需要进行验证,本实施例提供了两种验证方式,一种是由云计算系统发送验证信息,然后接受控制节点对于验证信息的反馈信息,对反馈信息进行分析,判断控制节点的通信校验是否合格;另一种是通过云计算系统与控制节点相互发送验证信息,同时进行信息验证,直接采用验证信息的哈希值进行验证,去除了传统验证进行验证信息解析的步骤,提高了验证效率。验证信息包括验证控制节点是否闲置、验证控制节点是否与任务适配等。
在一个实施例中,步骤S4:当校验合格时,对控制节点进行节点扩展;当校验不合格时,删除控制节点,包括:
步骤S401:获取控制节点的第一历史通信信息;
步骤S402:解析第一历史通信信息,获取待确认扩展节点列表;
步骤S403:依次向待确认扩展节点列表中的第一节点发送第一状态确认信息,并接收第一节点对于第一状态确认信息的第二反馈信息;
步骤S404:当第二反馈信息为闲置时,将第一节点作为扩展节点;
和/或,
步骤S411:获取控制节点的历史接入设备信息,
步骤S412:解析历史接入设备信息,获取待确认扩展设备列表;
步骤S413:依次向待确认扩展设备列表的第一设备发送第二状态确认信息,并接收第一设备对于第二状态确认信息的第三反馈信息;
步骤S414:当第三反馈信息为闲置时,将第一设备作为控制节点的扩展设备,基于扩展设备对控制节点进行扩展。
上述技术方案的工作原理及有益效果为:
控制节点进行节点扩展主要包括两方面:一、可以与控制节点相连的不属于拓扑信息的节点,通过查看控制节点的历史通信信息,从中获取可以连接的节点,然后对节点的状态进行确认,主要确认节点是否空闲,是否与任务匹配等;二、对控制节点本身进行扩展,即对连接到控制节点的设备进行扩展;通过查看控制节点的历史接入设备信息,从中获取可以接入的设备,对设备的状态进行确认,当设备空闲时可以接入控制节点中。通过对控制节点的扩展,提高了云计算系统的性能,实现更快处理任务。
在一个实施例中,步骤S5:建立控制节点与扩展节点的通信连接关系,进行分布式协同交互,包括:
步骤S501:获取扩展节点的第二历史通信信息;
步骤S502:解析第二历史通信信息,获取容许扩展节点接入的控制节点;
步骤S503:当容许扩展节点接入的控制节点的数目大于等于预设的第一数值时,基于扩展节点与控制节点之间的通信链路的参数,对控制节点进行排序获取第一待连接表,提取第一待连接表中预设的第二数值的控制节点与扩展节点建立通信连接;
步骤S504:当容许扩展节点接入的控制节点的数目小于预设的第一数值时,获取通信拓扑信息中的各个控制节点的连接节点数,基于连接节点数从小到大的顺序对控制节点进行排序获得第二待连接表,扩展节点按照第二待连接表的顺序依次尝试与控制节点建立通信连接,直至扩展节点连接的控制节点的数目等于预设的第一数值或第二待连接表上的所有的控制节点都已尝试连接;
上述技术方案的工作原理及有益效果为:
扩展节点还需接入云计算系统才能参与到任务中来,通过扩展节点的历史通信信息,查询可接入的控制节点,当可接入的控制节点满足接入云计算系统的要求时,直接基于扩展节点与控制节点之间的通信链路的参数【传输速率、响应时间等】选取连接的控制节点进行连接,实现接入云计算系统;当查询历史通信信息获得的可计入控制节点数目达不到执行任务所需的接入云计算系统的要求时,可以从云计算系统中的连接数最少的控制节点开始尝试连接,直至达到执行任务所需的接入云计算系统的要求。通过控制扩展节点的连接到控制节点的数目,一方面保证符合执行任务的需求,另一方面不影响云计算系统的运行;将扩展节点接入云计算系统,提高云计算系统的性能,提法任务运行的速率。
在一个实施例中,步骤S5:建立控制节点与扩展节点的通信连接关系,进行分布式协同交互,还包括:
步骤S511:获取云计算系统中的控制节点和扩展节点的状态,提取状态为闲置的控制节点和扩展节点建立协同交互节点列表;
步骤S512:获取协同交互节点列表中的控制节点或扩展节点的协同值和置信度;
步骤S513:基于协同值和置信度,计算控制节点或扩展节点的优先值;计算公式如下:
其中,
表示控制节点或扩展节点的优先值;
表示协同值;
表示与控制节点或扩展
节点连接的节点数;
表示与控制节点或扩展节点连接的节点对于控制节点或扩展节点的
置信度;
步骤S514:统计优先值大于预设的参考值的控制节点和扩展节点的数目作为第一标准值并将优先值大于预设的参考值的控制节点和扩展节点作为第一层协同交互节点;
步骤S515:获取交互任务,将交互任务分解成与第一标准值相等数目的子任务;
步骤S516:获取与第一层协同交互节点连接的设备的类型和/或第一层协同交互节点的响应时间和/或第一层协同交互节点的算力值和/或设备的数量;
步骤S517:基于设备的类型和/或第一层协同交互节点的响应时间和/或第一层协同交互节点的算力值和/或设备的数量对第一层协同交互节点进行评价,获取评价值,计算公式如下:
其中,
表示评价值;
表示与第一层协同交互节点连接的设备的数量;
为根据第
个设备的设备类型查询设备类型-评分值对应表获得的值;
、
、
、
分别为预设的对
应类型、响应时间、算力值、数量的关系系数;
为根据响应时间查询响应时间-评分值获得
的值;
为算力值;
为根据设备的数量查询数量-评分值获得的值;
步骤S518:解析子任务,提取子任务的特征值;
步骤S519:基于特征值,计算子任务的需求值,计算公式如下;
其中,
表示子任务的需求值;
表示子任务的特征值数量;
表示第
个特征值对应
的需求值;
步骤S520:基于需求值与评价值,将子任务分配给第一层协同交互节点。
上述技术方案的工作原理及有益效果为:
在接到交互任务时,需要将交互任务分配到各个控制节点。此时,根据云计算系统分配的协同值,以及与控制节点连接的节点提供的置信度,确定各个控制节点的优先值,以优先值从大到小进行排序;根据协同值和置信度对控制节点进行表示,一定程度上反应控制节点在云计算系统的重要性;对于才接入的扩展节点可以分配初始协同值和置信度。以控制节点对于云计算系统的重要性确定第一层协同交互节点的范围,当确定了交互任务的分配范围后,首先将交互任务分为对应的子任务,然后需要根据各个控制节点的性能和子任务的需求,进行对应分配,实现合理分配,提高任务的执行速率;此外,对于其他节点,基于与第一层协同交互节点的连接,参加第一层协同交互节点分配的子任务的执行,例如,可以由第一层协同交互节点将子任务再次提取分配到其他节点执行。
在一个实施例中,基于通信拓扑的分布式协同交互方法,还包括:当交互任务结束后,根据交互任务完成情况,对参与交互任务的控制节点和扩展节点进行协同值修正;修正公式为:
其中,
表示修正后的控制节点或扩展节点的协同值,
表示修正前的控制节点或扩
展节点的协同值,
表示根据资金流转情况确定的修正因子,
表示修正幅度,
表示修正
幅度的修正值;
;N表示参与交互任务的控制节点或扩展节点的数
目;
表示第
个参与交互任务的控制节点或扩展节点处理的任务对应的需求值;
表示交互任务对应的需求值。
上述技术方案的工作原理及有益效果为:
当协同任务结束后,对任务完成情况进行量化,例如:当任务完成为准时时,
记为1,
对参与任务的节点进行协同值调高;当任务完成不及时,对应的修正因子
记为-1,对参与
任务的节点进行协同值降低;实现控制节点在云计算系统中的重要性的修正,保证在下次
任务执行时,挑选节点的合理性。
本发明还提供一种基于通信拓扑的分布式协同交互系统,包括:
拓扑信息获取单元,用于获取云计算系统的通信拓扑信息;
排序模块,用于对通信拓扑信息中的控制节点进行排序;
校验模块,用于对控制节点进行通信校验;
扩展模块,用于当校验合格时,对控制节点进行节点扩展;当校验不合格时,删除控制节点;
协同交互模块,用于建立控制节点与扩展节点的通信连接关系,进行分布式协同交互。
上述技术方案的工作原理及有益效果为:
当云计算系统接到任务时,首先,第一步,通过拓扑信息获取单元获取云计算系统的通信拓扑信息,通信拓扑信息可以是预先存储的,实现快速获取可以参与到任务的控制节点的拓扑信息;然后会通过排序模块进行排序;当获取到通信拓扑信息并不能直接采用其中的控制节点进行任务分配,还需要通过校验模块对拓扑信息中的控制节点进行校验,校验包括:是否可以参与任务【控制节点能够处理任务的类型是否与接收到的任务匹配】,当前是否闲置等等;当校验通过时进行节点扩展,通过节点扩展衍生出扩展节点,提高云计算系统处理任务的能力;最后建立控制节点与扩展节点的通信连接,形成最后的分布式协同网络,然后将任务在分布式协网络中分发;在节点扩展时,提高了云计算系统处理任务的性能,进一步提高了云计算系统处理任务的速度。
本发明的基于通信拓扑的分布式协同交互方法,采用通信拓扑信息获取参与处理任务的节点,提高了任务分配速度,进而提高了云计算系统处理任务的速度。
在一个实施例中,排序模块执行操作包括:
获取与控制节点连接的设备的类型和/或控制节点的响应时间和/或控制节点的算力值和/或设备的数量;
基于设备的类型和/或控制节点的响应时间和/或控制节点的算力值和/或设备的数量对控制节点进行评价;
基于评价从高到低对控制节点进行排序;
或,
获取控制节点的协同值和置信度,
基于协同值与置信度,计算控制节点的优先值;
按照优先值从大到小的顺序对控制节点进行排序;
上述技术方案的工作原理及有益效果为:
本实施例提供两种排序方案,方案一:根据各个控制节点接入的设备的类型、响应时间、算力值、接入设备的数量等参数对控制节点进行评价,该评价一定程度上反应控制节点的性能,以评价的高低进行排序,当任务的需求处理节点为有限个数时,根据排序好的列表实现快速挑选参与任务的节点;方案二:根据云计算系统分配的协同值,以及与控制节点连接的节点提供的置信度,确定各个控制节点的优先值,以优先值从大到小进行排序;根据协同值和置信度对控制节点进行表示,一定程度上反应控制节点在云计算系统的重要性;当任务的需求处理节点为有限个数时,根据排序好的列表实现快速挑选参与任务的节点。
在一个实施例中,校验模块执行操作包括:
依据排序后的控制节点顺序,依次向控制节点发送第一验证信息;
接收控制节点对于第一验证信息的第一反馈信息;
将第一反馈信息与预先存储的第二验证信息进行比对,当比对符合时,控制节点的通信校验合格;当比对不符合时,控制节点的通信校验为不合格;
或,
依据排序后的控制节点顺序,依次向控制节点发送第三验证信息并接收控制节点发送的第四验证信息;
计算第四验证信息的第一哈希值,控制节点计算第三验证信息的第二哈希值;
将第一哈希值与预先存储的第一验证哈希值进行比对,控制节点将第二哈希值与预先存储的第二验证哈希值进行比对;当第一哈希值比对通过且第二哈希值比对通过时,控制节点的通信校验合格。
上述技术方案的工作原理及有益效果为:
拓扑信息中的控制节点在获取后,并不是每个控制节点都能直接参与任务的;故需要进行验证,本实施例提供了两种验证方式,一种是由云计算系统发送验证信息,然后接受控制节点对于验证信息的反馈信息,对反馈信息进行分析,判断控制节点的通信校验是否合格;另一种是通过云计算系统与控制节点相互发送验证信息,同时进行信息验证,直接采用验证信息的哈希值进行验证,去除了传统验证进行验证信息解析的步骤,提高了验证效率。验证信息包括验证控制节点是否闲置、验证控制节点是否与任务适配等。
在一个实施例中,扩展模块执行操作包括:
获取控制节点的第一历史通信信息;
解析第一历史通信信息,获取待确认扩展节点列表;
依次向待确认扩展节点列表中的第一节点发送第一状态确认信息,并接收第一节点对于第一状态确认信息的第二反馈信息;
当第二反馈信息为闲置时,将第一节点作为扩展节点;
和/或,
获取控制节点的历史接入设备信息,
解析历史接入设备信息,获取待确认扩展设备列表;
依次向待确认扩展设备列表的第一设备发送第二状态确认信息,并接收第一设备对于第二状态确认信息的第三反馈信息;
当第三反馈信息为闲置时,将第一设备作为控制节点的扩展设备,基于扩展设备对控制节点进行扩展。
上述技术方案的工作原理及有益效果为:
控制节点进行节点扩展主要包括两方面:一、可以与控制节点相连的不属于拓扑信息的节点,通过查看控制节点的历史通信信息,从中获取可以连接的节点,然后对节点的状态进行确认,主要确认节点是否空闲,是否与任务匹配等;二、对控制节点本身进行扩展,即对连接到控制节点的设备进行扩展;通过查看控制节点的历史接入设备信息,从中获取可以接入的设备,对设备的状态进行确认,当设备空闲时可以接入控制节点中。通过对控制节点的扩展,提高了云计算系统的性能,实现更快处理任务。
在一个实施例中,协同交互模块执行操作包括:
获取扩展节点的第二历史通信信息;
解析第二历史通信信息,获取容许扩展节点接入的控制节点;
当容许扩展节点接入的控制节点的数目大于等于预设的第一数值时,基于扩展节点与控制节点之间的通信链路的参数,对控制节点进行排序获取第一待连接表,提取第一待连接表中预设的第二数值的控制节点与扩展节点建立通信连接;
当容许扩展节点接入的控制节点的数目小于预设的第一数值时,获取通信拓扑信息中的各个控制节点的连接节点数,基于连接节点数从小到大的顺序对控制节点进行排序获得第二待连接表,扩展节点按照第二待连接表的顺序依次尝试与控制节点建立通信连接,直至扩展节点连接的控制节点的数目等于预设的第一数值或第二待连接表上的所有的控制节点都已尝试连接;
上述技术方案的工作原理及有益效果为:
扩展节点还需接入云计算系统才能参与到任务中来,通过扩展节点的历史通信信息,查询可接入的控制节点,当可接入的控制节点满足接入云计算系统的要求时,直接基于扩展节点与控制节点之间的通信链路的参数【传输速率、响应时间等】选取连接的控制节点进行连接,实现接入云计算系统;当查询历史通信信息获得的可计入控制节点数目达不到执行任务所需的接入云计算系统的要求时,可以从云计算系统中的连接数最少的控制节点开始尝试连接,直至达到执行任务所需的接入云计算系统的要求。通过控制扩展节点的连接到控制节点的数目,一方面保证符合执行任务的需求,另一方面不影响云计算系统的运行;将扩展节点接入云计算系统,提高云计算系统的性能,提法任务运行的速率。
在一个实施例中,协同交互模块还执行操作包括:
获取云计算系统中的控制节点和扩展节点的状态,提取状态为闲置的控制节点和扩展节点建立协同交互节点列表;
获取协同交互节点列表中的控制节点或扩展节点的协同值和置信度;
基于协同值和置信度,计算控制节点或扩展节点的优先值;计算公式如下:
其中,
表示控制节点或扩展节点的优先值;
表示协同值;
表示与控制节点或扩展
节点连接的节点数;
表示与控制节点或扩展节点连接的节点对于控制节点或扩展节点的
置信度;
统计优先值大于预设的参考值的控制节点和扩展节点的数目作为第一标准值并将优先值大于预设的参考值的控制节点和扩展节点作为第一层协同交互节点;
获取交互任务,将交互任务分解成与第一标准值相等数目的子任务;
获取与第一层协同交互节点连接的设备的类型和/或第一层协同交互节点的响应时间和/或第一层协同交互节点的算力值和/或设备的数量;
基于设备的类型和/或第一层协同交互节点的响应时间和/或第一层协同交互节点的算力值和/或设备的数量对第一层协同交互节点进行评价,获取评价值,计算公式如下:
其中,
表示评价值;
表示与第一层协同交互节点连接的设备的数量;
为根据第
个设备的设备类型查询设备类型-评分值对应表获得的值;
、
、
、
分别为预设的对
应类型、响应时间、算力值、数量的关系系数;
为根据响应时间查询响应时间-评分值获得
的值;
为算力值;
为根据设备的数量查询数量-评分值获得的值;
解析子任务,提取子任务的特征值;
基于特征值,计算子任务的需求值,计算公式如下;
其中,
表示子任务的需求值;
表示子任务的特征值数量;
表示第
个特征值对应
的需求值;
基于需求值与评价值,将子任务分配给第一层协同交互节点。
上述技术方案的工作原理及有益效果为:
在接到交互任务时,需要将交互任务分配到各个控制节点。此时,根据云计算系统分配的协同值,以及与控制节点连接的节点提供的置信度,确定各个控制节点的优先值,以优先值从大到小进行排序;根据协同值和置信度对控制节点进行表示,一定程度上反应控制节点在云计算系统的重要性;对于才接入的扩展节点可以分配初始协同值和置信度。以控制节点对于云计算系统的重要性确定第一层协同交互节点的范围,当确定了交互任务的分配范围后,首先将交互任务分为对应的子任务,然后需要根据各个控制节点的性能和子任务的需求,进行对应分配,实现合理分配,提高任务的执行速率;此外,对于其他节点,基于与第一层协同交互节点的连接,参加第一层协同交互节点分配的子任务的执行,例如,可以由第一层协同交互节点将子任务再次提取分配到其他节点执行。
在一个实施例中,基于通信拓扑的分布式协同交互系统,还包括总结模块,用于当交互任务结束后,根据交互任务完成情况,对参与交互任务的控制节点和扩展节点进行协同值修正;修正公式为:
其中,
表示修正后的控制节点或扩展节点的协同值,
表示修正前的控制节点或扩
展节点的协同值,
表示根据资金流转情况确定的修正因子,
表示修正幅度,
表示修正
幅度的修正值;
;N表示参与交互任务的控制节点或扩展节点的数
目;
表示第
个参与交互任务的控制节点或扩展节点处理的任务对应的需求值;
表示交互任务对应的需求值。
上述技术方案的工作原理及有益效果为:
当协同任务结束后,对任务完成情况进行量化,例如:当任务完成为准时时,
记为1,
对参与任务的节点进行协同值调高;当任务完成不及时,对应的修正因子
记为-1,对参与
任务的节点进行协同值降低;实现控制节点在云计算系统中的重要性的修正,保证在下次
任务执行时,挑选节点的合理性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。