节点的版本升级方法、装置和系统的制作方法

文档序号:9455694阅读:297来源:国知局
节点的版本升级方法、装置和系统的制作方法
【技术领域】
[0001]本发明涉及互联网技术领域,特别涉及一种节点的版本升级方法、装置和系统。
【背景技术】
[0002]一个大型的网络系统通常会有成千上万个网络节点组成。在该网络系统的运行过程中,当需要对该网络系统进行版本升级时,就需要对这成千上万个网络节点同时进行升级。
[0003]网络系统的成千上万个网络节点中有一个预设的中心节点,其它网络节点为该中心节点的下属节点。当需要进行版本升级时,中心节点向各个下属节点下发版本升级指令;各个下属节点接收到版本升级指令后执行版本升级,并反馈升级结果至中心节点。
[0004]在上述方案中,中心节点需要控制各个下属节点进行升级,耗用了中心节点的大量资源。

【发明内容】

[0005]本发明实施例提供了一种节点的版本升级方法、装置和系统,用于解决现有技术中需要耗用中心节点的大量资源的问题。所述技术方案如下:
[0006]第一方面,提供了一种节点的版本升级方法,所述方法包括:
[0007]第一节点接收N个节点中已升级的第二节点发送的版本升级指令,所述版本升级指令为所述第二节点向i个待升级的邻居节点发送的指令,I ( i〈N_l,N>2 ;
[0008]所述第一节点根据所述版本升级指令获取升级文件;
[0009]所述第一节点根据所述升级文件执行版本升级。
[0010]在第一方面的第一种可能的实现方式中,所述第一节点接收N个节点中已升级的第二节点发送的版本升级指令之前,所述方法还包括:
[0011]接收所述第二节点发送的邻居确认请求;
[0012]根据所述邻居确认请求检测所述第二节点是否升级成功;
[0013]反馈检测结果至所述第二节点,所述检测结果用于指示所述第二节点根据所述检测结果判定是否发送所述版本升级指令。
[0014]结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述邻居确认请求检测所述第二节点是否升级成功,包括:
[0015]根据预设测试项测试与所述第二节点之间的通信是否正常;
[0016]所述预设测试项包括:对所述第二节点中所述第一节点所依赖的旧版本功能进行测试的测试项,和/或,对所述第二节点中需要依赖所述第一节点的旧版本功能进行测试的测试项。
[0017]结合第一方面的第一种可能的实现方式,在第三种可能的实现方式中,所述根据所述邻居确认请求检测所述第二节点是否升级成功之前,所述方法还包括:
[0018]检测所述第二节点是否为可信任节点;
[0019]若是可信任节点,则执行所述根据所述邻居确认请求检测所述第二节点是否升级成功的操作。
[0020]结合第一方面、第一方面的第一种可能的实现方式、第一方面的第二种可能的实现方式或者第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述第一节点根据所述版本升级指令获取升级文件之前,所述方法还包括:
[0021]检测所述第二节点是否为可信任节点;
[0022]若是可信任节点,则执行所述根据所述版本升级指令获取升级文件的操作。
[0023]第二方面,提供了一种节点的版本升级方法,所述方法包括:
[0024]第二节点获取升级文件;
[0025]所述第二节点根据所述升级文件执行版本升级;
[0026]在升级完毕后,所述第二节点向N个节点中的i个待升级的邻居节点发送版本升级指令,所述版本升级指令用于指示所述i个待升级的邻居节点执行版本升级,I ( i〈N_l,
N>2o
[0027]在第二方面的第一种可能的实现方式中,所述第二节点向N个节点中的i个待升级的邻居节点发送版本升级指令之前,所述方法还包括:
[0028]向j个邻居节点发送邻居确认请求,所述邻居确认请求用于指示所述j个邻居节点检测所述第二节点是否升级成功,并反馈检测结果;1 < j < N ;
[0029]接收所述检测结果,根据所述检测结果判定是否发送所述版本升级指令;
[0030]若判定结果为发送所述版本升级指令,则执行所述向N个节点中的i个待升级的邻居节点发送版本升级指令的操作。
[0031]结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述检测结果判定是否发送所述版本升级指令,包括:
[0032]若j = 1,则在所述检测结果表示所述第二节点升级成功时,判定为发送所述版本升级指令;
[0033]若j>l,则统计表示所述第二节点升级成功的检测结果的个数,检测所述个数与所述j的比值是否达到预设阈值;若达到所述预设阈值,则判定为发送所述版本升级指令。
[0034]结合第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述向j个邻居节点发送邻居确认请求之前,所述方法还包括:
[0035]检测升级后自身是否存在异常;
[0036]若不存在异常,则执行所述向j个邻居节点发送邻居确认请求的操作。
[0037]第三方面,提供了一种节点的版本升级装置,应用于第一节点中,所述装置包括:
[0038]指令接收模块,用于接收N个节点中已升级的第二节点发送的版本升级指令,所述版本升级指令为所述第二节点向i个待升级的邻居节点发送的指令,I ( i〈N-l,N>2 ;
[0039]文件获取模块,用于根据所述指令接收模块接收到的所述版本升级指令获取升级文件;
[0040]版本升级模块,用于根据所述文件获取模块获取到的所述升级文件执行版本升级。
[0041]在第三方面的第一种可能的实现方式中,所述装置还包括:
[0042]请求接收模块,用于在所述指令接收模块接收所述第二节点发送的所述版本升级指令之前,接收所述第二节点发送的邻居确认请求;
[0043]升级检测模块,用于根据所述请求接收模块接收到的所述邻居确认请求检测所述第二节点是否升级成功;
[0044]结果反馈模块,用于反馈所述升级检测模块的检测结果至所述第二节点,所述检测结果用于指示所述第二节点根据所述检测结果判定是否发送所述版本升级指令。
[0045]结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,
[0046]所述升级检测模块,还用于根据预设测试项测试与所述第二节点之间的通信是否正常;
[0047]所述预设测试项包括:对所述第二节点中所述第一节点所依赖的旧版本功能进行测试的测试项,和/或,对所述第二节点中需要依赖所述第一节点的旧版本功能进行测试的测试项。
[0048]结合第三方面的第一种可能的实现方式,在第三种可能的实现方式中,所述装置还包括:
[0049]第一检测模块,用于在所述升级检测模块根据所述邻居确认请求检测所述第二节点是否升级成功之前,检测所述第二节点是否为可信任节点;
[0050]所述升级检测模块,还用于在所述第一检测模块的检测结果为所述第二节点是可信任节点时,执行所述根据所述邻居确认请求检测所述第二节点是否升级成功的操作。
[0051]结合第三方面、第三方面的第一种可能的实现方式、第三方面的第二种可能的实现方式或者第三方面的第三种可能的实现方式,在第四种可能的实现方式中,所述装置还包括:
[0052]第二检测模块,用于在所述文件获取模块根据所述版本升级指令获取升级文件之前,检测所述第二节点是否为可信任节点;
[0053]所述文件获取模块,用于在所述第二检测模块的检测结果为所述第二节点是可信任节点时,则执行所述根据所述版本升级指令获取升级文件的操作。
[0054]第四方面,提供了一种节点的版本升级装置,应用于第二节点中,所述装置包括:
[0055]文件获取模块,用于获取升级文件;
[0056]版本升级模块,用于根据所述文件获取模块获取到的所述升级文件执行版本升级;
[0057]指令发送模块,用于在所述版本升级模块升级完毕后,向N个节点中的i个待升级的邻居节点发送版本升级指令,所述版本升级指令用于指示所述i个待升级的邻居节点执行版本升级,I彡i〈N_l,N>2。
[0058]在第四方面的第一种可能的实现方式中,所述装置还包括:
[0059]请求发送模块,用于在所述指令发送模块向N个节点中的i个待升级的邻居节点发送版本升级指令之前,向j个邻居节点发送邻居确认请求,所述邻居确认请求用于指示所述j个邻居节点检测所述第二节点是否升级成功,并反馈检测结果;1 < j < N ;
[0060]结果接收模块,用于接收所述检测结果;
[0061]判定模块,用于根据所述结果接收模块接收到的所述检测结果判定是否发送所述版本升级指令;
[0062]所述指令发送模块,还用于在所述判定模块的判定结果为发送所述版本升级指令时,执行所述向N个节点中的i个待升级的邻居节点发送版本升级指令的操作。
[0063]结合第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述判定丰吴块,包括:
[0064]第一判定单元,用于在j = I,且所述结果接收模块接收到的所述检测结果表示所述第二节点升级成功时,判定为发送所述版本升级指令;
[0065]第二判定单元,用于在j>l时,统计表示所述第二节点升级成功的检测结果的个数,检测所述个数与所述j的比值是否达到预设阈值;若达到所述预设阈值,则判定为发送所述版本升级指令。
[0066]结合第四方面的第一种可能的实现方式或者第四方面的第二种可能的实现方式,所述装置还包括:
[0067]异常检测模块,用于在所述请求发送模块向j个邻居节点发送邻居确认请求之前,检测升级后自身是否存在异常;
[0068]所述请求发送模块,还用于在所述异常检测模块的检测结果为不存在异常时,执行所述向j个邻居节点发送邻居确认请求的操作。
[0069]第五方面,提供了一种节点的版本升级系统,所述系统包括第一节点和第二节占.V,
[0070]所述第二节点,用于获取升级文件;根据所述升级文件执行版本升级;在升级完毕后,向N个节点中的i个待升级的邻居节点发送版本升级指令,所述版本升级指令用于指示所述i个待升级的邻居节点执行版本升级,I ( i〈N-l,N>2 ;
[0071]所述第一节点,用于接收N个节点中已升级的所述第二节点发送的所述版本升级指令;根据所述版本升级指令获取升级文件;根据所述升级文件执行版本升级。
[0072]本发明实施例提供的技术方案带来的有益效果是:
[0073]通过接收N个节点中已升级的邻居节点发送的版本升级指令,根据版本升级指令执行版本升级,并在升级完毕后,向i个待升级的邻居节点继续发送版本升级指令,进而通过逐点传播的方式升级N个节点中的各个节点;解决了现有技术需要耗用中心节点的大量资源的问题。达到了可以降低单个节点所需耗用的资源的效果。另外,通过逐点传播的方式来升级N个节点中的各个节点,也避免了现有技术中中心节点批量升级各个下属节点时升级可靠性以及升级稳定性较差的问题;达到了可以保证升级的可靠性以及稳定性的效果。
【附图说明】
[0074]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0075]图1是本发明各个实施例提供的节点的版本升级方法所涉及的实施环境的示意图。
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1