一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

边缘网络设备不同部位版本升级的方法、设备及介质与流程

2022-11-16 09:00:27 来源:中国专利 TAG:


1.本发明涉及边缘网络设备版本升级技术领域,尤其涉及边缘网络设备不同部位版本升级的方法、设备及介质,用于同步或连续升级同一设备中不同部位模块的版本程序。


背景技术:

2.边缘网络设备(edge device)主要指安装在边缘网络上的交换机、路由器、路由交换机、iad以及各种man/wan设备,比如酒店管理系统中的房卡机。
3.基于场景的不同或者其他原因,需要定期对边缘网络设备进行版本程序的更新升级。
4.还是以酒店的房卡机为例,根据设备不同的硬件或者功能,房卡机会同时存在多个主从部位模块,比如主设备模块、发卡机部位模块和收卡部位模块。由于主从部位模块的版本程序之间存在兼容性问题和优先级问题,目前常规的带有自动版本算法和加密算法的第三方工具难以实现对同一设备上的不同部位模块进行同步或连续升级,使得在同一设备的多个不同部位模块都需要升级时,版本程序的更新步骤复杂,更新效率低,而过多的人为参与,就可能会因操作不当、非法程序、恶意病毒、错误版本程序干扰和程序源代码的泄露等问题,给国家、企业、用户以及个人造成巨大的经济和安全上的损失。


技术实现要素:

5.本发明的一个优势在于提供一种边缘网络设备不同部位版本升级的方法、设备及介质,能够实现同一设备上不同部位模块的多个版本程序的同步或连续更新升级,同时主程序和次要程序之间也不会存在相互干扰的兼容问题的影响,有效简化了同一设备不同部位模块的版本程序的升级,多个版本程序的更新效率高。
6.本发明的一个优势在于提供一种边缘网络设备不同部位版本升级的方法、设备及介质,在多个不同部位模块进行同步或连续升级的过程中,通过对程序版本下载地址进行单重或多重不可逆加密和相对应的解密验证,确保不同部位模块进行了对的,且对应的版本程序升级,充分发挥了服务端、对象存储、边缘网络平台和边缘网络设备之间统一管理控制的特点,能够有效提高设备版本程序升级的安全性,从而杜绝非法程序、病毒程序或者错误版本对设备进行干扰和影响。
7.为达到本发明以上至少一个优势,第一方面,本发明提供一种边缘网络设备不同部位版本升级的方法,用于同步或连续升级同一设备中不同部位模块的版本程序,依次包括以下步骤:
8.s100,基于自定义要素对应设备的不同部位模块形成具有预定主从顺序,且自动排序的版本号;
9.s200,基于设备自动上报的设备心跳和设备信息,与具有预定主从顺序,且自动排序的版本号进行版本差异分析运算,判断边缘网络设备是否在最新发布版本的设备列表范围内,以及是否达到升级标准,在同时满足以上两个条件时,自动匹配与不同部位模块兼容
的升级程序;
10.s300,基于预定主从顺序,依次自动安装匹配好的对应不同部位模块的升级程序,并在程序全部升级完成后重新启动程序;
11.s400,再次获取初始化数据,并上报设备心跳和设备信息。
12.根据本发明一实施例,在步骤s100中,所述版本号采用递增式命名规则,并配置有设备名称、设备运行的平台、设备部位模块的名称、顺序优先级和递增式的具体版本号,相邻之间使用
“‑”
号进行分隔,所述版本号一旦生成,不能删除和回退。
13.根据本发明一实施例,在步骤s200和步骤s300之间还依次包括步骤:
14.s210,封装自动匹配的对应不同部位模块的升级程序,并上传至对象存储,服务端获取程序版本下载地址,其中所述对象存储预先开启有允许跨域规则;
15.s220,在服务端对封装好的升级程序的程序版本下载地址进行单重或多重不可逆加密,生成第一字符串,给第一字符串添加报文header,并发送给设备;
16.s230,设备收到服务端的报文请求后,对请求报文参数进行相对应的解密,生成第二字符串,比对所述第一字符串和所述第二字符串进行验证,若相同,则进行步骤s300,若不相同,则不予处理或上报给服务端进行报警。
17.根据本发明一实施例,在步骤s210中,在对象存储获取accesskeyid和secret,然后通过osssign接口进行加密。
18.根据本发明一实施例,在步骤s220中,对封装好的升级程序的程序版本下载地址首先进行哈希函数-md5算法加密,然后再进行rsa加密,生成所述第一字符串。
19.根据本发明一实施例,在步骤s210中,封装自动匹配的对应不同部位模块的升级程序,指的是:服务端基于预定主从顺序,自动对不同部位模块的升级程序组成字符串进行封装,形成用于上传至对象存储的数组摘要报文。
20.根据本发明一实施例,在步骤s200中,所述版本差异分析运算中的自动排序,具体为:
21.分隔不同部位模块的版本号形成版本名称和版本号,用于分段进行比较,按照下标的顺序进行排序;对于字符串,则按照acsii码顺序进行差异分析,排在后面为优先级高,小写英文字母比大写英文字母优先级高。
22.根据本发明一实施例,在步骤s300中,在被自动匹配了升级程序的不同部位模块中,若部分或全部部位模块的升级失败,则自动回滚该数组内的所有的部位模块的版本程序。
23.第二方面,本发明提供了一种计算机设备,包括:至少一个处理器;以及存储器,其中所述存储器存储有可在所述处理器上运行的计算机程序,所述计算机程序由所述处理器执行时,实现上述边缘网络设备不同部位版本升级的方法的步骤。
24.第三方面,本发明还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有被计算机或处理器执行时实现如上述方法步骤的计算机程序。
25.本发明的这些和其它目的、特点和优势,通过下述的详细说明,得以充分体现。
附图说明
26.图1示出了本技术边缘网络设备不同部位版本升级的方法的流程示意图。
27.图2示出了本技术中边缘网络设备终端部署示意图。
28.图3示出了本技术边缘网络设备架构示意图。
29.图4示出了本技术边缘网络设备不同部位版本升级的方法的原理框架示意图。
30.图5示出了本技术带有边缘网络设备不同部位版本升级的方法的计算机设备的结构示意图。
具体实施方式
31.以下描述用于揭露本发明以使本领域技术人员能够实现本发明。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。在以下描述中界定的本发明的基本原理可以应用于其他实施方案、变形方案、改进方案、等同方案以及没有背离本发明的精神和范围的其他技术方案。
32.本领域技术人员应理解的是,在说明书的揭露中,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系是基于附图所示的方位或位置关系,其仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此,上述术语不能理解为对本发明的限制。
33.可以理解的是,术语“一”应理解为“至少一”或“一个或多个”,即在一个实施例中,一个元件的数量可以为一个,而在另外的实施例中,该元件的数量可以为多个,术语“一”不能理解为对数量的限制。
34.边缘网络设备根据不同的硬件或者功能,会同时存在多个主从部位模块。以酒店设备房卡机为例,就同时存在设备主程序和次要程序,其中设备主程序为房卡机设备主体上的程序,次要程序包括发卡部位模块上的程序和收卡部位模块上的程序。对于边缘网络设备的版本程序升级,一般情况下,是对每个部位模块按照常规手段进行依次升级,升级操作复杂,升级效率低,如何实现对多个主从部位模块进行同步升级或者连续升级,以极大的简化边缘网络设备的升级操作,并极大的提高多个部位模块的版本程序的升级效率,是本技术主要解决的问题之一。
35.值得注意的是,前文中提到的“同步升级或者连续升级”指的是在一个较短的时间范围内实现对多个部位模块的版本程序的同时升级,具有一定的连续性,升级所需的时间基本等同于一个部位模块的升级时间,以此与常规版本程序的升级形成明显的区别,进而极大的简化具有多个部位模块的边缘网络设备的版本程序的升级操作,提高多个部位模块的版本程序的升级效率。
36.参考图1至图4,依本发明一较佳实施例的一种边缘网络设备不同部位版本升级的方法将在以下被详细地阐述,其中所述边缘网络设备不同部位版本升级的方法被用于同步或连续升级同一设备中不同部位模块的版本程序,依次包括以下步骤:
37.s100,基于自定义要素对应设备的不同部位模块形成具有预定主从顺序,且自动排序的版本号;还是以酒店设备中的房卡机为例,不同部位模块包括设备主体模块、发卡部位模块和收卡部位模块,其中设备主体模块为主程序,发卡部位模块和收卡部位模块为次要程序,从而形成以设备主体模块为主,发卡部位模块和收卡部位模块为从的主从顺序,在均需要升级时,以主程序为优先升级的程序,多个次要程序之间再预设好优先级,进而形成
具有预定排列次序的升级次序,类似于ppt中图片的层级配置。
38.此外,在一些实施例中,版本号的命名规则采用递增式命名规则,并配置有包括产品或者设备名称(比如房卡机)、设备运行的平台(比如windows)、设备部位模块的名称、顺序优先级和递增式的具体版本号,相邻之间使用
“‑”
号进行分隔,同时,版本号一旦生成,不能删除和回退,同时也不能修改内容来替换发布安装程序,任何修改必须创建新的版本进行重新发布。
39.版本号包括版本名称部分和版本号部分,其中版本名称部分为递增式的具体版本号之前的名称,版本号不稳为递增式的具体版本号。版本名称部分必须为英文字母,并且不能包含特殊数字和特殊符号,而版本号部分必须为非负数的阿拉伯数字,并且不得包含前导零,同时,阿拉伯数字必须递增,不得与旧版本号一致或递减。
40.还需要说明的是,预定主从顺序指的是不同部位模块的版本程序在安装时的先后顺序,自动排序指的是某一个具体的部位模块的版本号的命名上的递增式排序,以便于辨别该部位模块的版本程序是否是最新的版本程序,是否需要升级。
41.s200,基于设备自动上报的设备心跳和设备信息,以确保设备的在线,并获取设备的当前状态、程序版本和固件版本,与具有预定主从顺序,且自动排序的版本号进行版本差异分析运算,判断边缘网络设备是否在最新发布版本的设备列表范围内,以及是否达到升级标准,在同时满足以上两个条件时,自动匹配与不同部位模块兼容的升级程序;
42.版本号由几个部分组成:大版本、次要版本和小版本。在通过版本差异分析运算时,应当符合一对一的判断标准,即大版本和大版本比较、次要版本和次要版本比较、小版本和小版本比较。所以核心算法应该是分离版本好的各部分的组成,由此根据算法产生版本差异分析的结果。
43.如果大版本2》大版本1返回通过;
44.如果大版本2《大版本1返回不通过;
45.除此以外则返回继续。
46.例如:zhqt_android_normal_public_all_type_v1.2.1
47.在一个实施例中,所述版本差异分析运算中的自动排序,具体为:
48.版本首先会被进行分隔,分隔策略是版本名称和版本号分开,形成分隔的边界,这样分隔的目的为了能分段进行比较。比较优先级按照下标的顺序自然进行排列,第一位为最高的优先级,以此降低。
49.如果是字符串和字符串比较,那么按照acsii码顺序进行差异分析,排在后面为优先级高,小写英文字母比大写英文字母优先级高。
50.例如:
51.lumous《lumous
52.0》lumous
53.1》0
54.所以在执行版本差异分析前,程序必须定义好版本号的组成部分。
55.s300,基于预定主从顺序,依次自动安装匹配好的对应不同部位模块的升级程序,并在程序全部升级完成后重新启动程序;
56.在一个实施例中,在被自动匹配了升级程序的不同部位模块中,若部分或全部部
位模块的升级失败,则自动回滚该数组内的所有的部位模块的版本程序
57.s400,再次获取初始化数据,并通过互联网通信协议定时上报设备心跳和设备信息。
58.在一个实施例中,在步骤s200和步骤s300之间还依次包括步骤:
59.s210,封装自动匹配的对应不同部位模块的升级程序,并上传至对象存储,服务端获取程序版本下载地址,其中所述对象存储预先开启有允许跨域规则;
60.s220,在服务端对封装好的升级程序的程序版本下载地址进行单重或多重不可逆加密,生成第一字符串,给第一字符串添加报文header,形成附带有验证码的加密报文,并发送给设备;
61.s230,边缘网络平台把服务端的消息通过http/2通道推送到设备终端,设备收到服务端的报文请求后,对请求报文参数进行相对应的解密,生成第二字符串,比对所述第一字符串和所述第二字符串进行验证,确认设备获取到的程序资源和校验码是否与服务端发送的程序资源和校验码一致或相同,若相同,则认为服务端发送正常请求,程序版本合法,直接进行步骤s300,将程序传递给对边缘网络设备的控制部位,根据安装顺序针对不同部位模块进行版本程序的更新,若不相同,则判断为恶意请求,不予处理或上报给服务端进行报警。
62.也就是说,在版本控制中对程序进行加密和对版本的正确性进行校验,只有校验正确的程序才能加载至边缘网络设备进行程序的更新,并且可以对边缘网络设备在多部位模块、不同程序、不同版本按照预定主从顺序进行控制,不会因非法程序、病毒程序或者错误版本而对边缘网络设备进行干扰和影响。
63.优选地,在步骤s210中,在对象存储获取accesskeyid和secret,然后通过osssign接口进行加密。
64.优选地,在步骤s220中,对封装好的升级程序的程序版本下载地址首先进行哈希函数-md5算法加密,然后再进行rsa加密,进行双重不可逆加密,以提高待升级版本程序的安全等级,生成所述第一字符串。哈希(hash)也称为散列,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,这个输出值就是散列值。md5信息摘要算法是一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。
65.优选地,在步骤s210中,封装自动匹配的对应不同部位模块的升级程序,指的是:服务端基于预定主从顺序,自动对不同部位模块的升级程序组成字符串进行封装,形成用于上传至对象存储的数组摘要报文。
66.第二方面,本发明提供了一种计算机设备,结合图5,包括:至少一个处理器;以及存储器,其中所述存储器存储有可在所述处理器上运行的计算机程序,所述计算机程序由所述处理器执行时,实现上述边缘网络设备不同部位版本升级的方法的步骤。
67.第三方面,本发明还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有被计算机或处理器执行时实现如上述方法步骤的计算机程序。
68.在本技术提供的智能终端和计算机可读存储介质的实施例中,可以包含上述任一方法步骤实施例的全部技术特征,说明书拓展和解释内容与上述方法的各实施例基本相同,在此不做再赘述。
69.本技术实施例还提供一种计算机程序产品,其中所述计算机程序产品包括计算机程序代码,且当计算机程序代码在计算机上运行时,使得计算机能够执行如上各种可能的实施方式中的方法。
70.本技术实施例还提供一种芯片,包括存储器和处理器,其中所述存储器用于存储计算机程序,而所述处理器用于从存储器中调用并运行计算机程序,使得安装有芯片的设备能够执行如上各种可能的实施方式中的方法。
71.可以理解,上述场景仅是作为示例,并不构成对于本技术实施例提供的技术方案的应用场景的限定,本技术的技术方案还可应用于其他场景。例如,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
72.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
73.本技术实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
74.本技术实施例设备中的单元可以根据实际需要进行合并、划分和删减。
75.在本技术中,对于相同或相似的术语概念、技术方案和/或应用场景描述,一般只在第一次出现时进行详细描述,后面再重复出现时,为了简洁,一般未再重复阐述,在理解本技术技术方案等内容时,对于在后未详细描述的相同或相似的术语概念、技术方案和/或应用场景描述等,可以参考其之前的相关详细描述。
76.在本技术中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
77.本技术技术方案的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本技术记载的范围。
78.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,ipad,计算机,服务器,被控终端,或者网络设备等)执行本技术每个实施例的方法。
79.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络,或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、存储盘、磁带)、光介质(例如,dvd),或者半导体介质(例如固态存储盘solid state disk(ssd))等。
80.本领域的技术人员应理解,上述描述及附图中所示的本发明的实施例只作为举例而并不限制本发明。本发明的优势已经完整并有效地实现。本发明的功能及结构原理已在实施例中展示和说明,在没有背离所述原理下,本发明的实施方式可以有任何变形或修改。
81.需要说明的是,本发明中用语“第一、第二”仅用于描述目的,不表示任何顺序,不能理解为指示或者暗示相对重要性,可将这些用语解释为名称。
82.本领域的技术人员应理解,上述描述及附图中所示的本发明的实施例只作为举例而并不限制本发明。本发明的优势已经完整并有效地实现。本发明的功能及结构原理已在实施例中展示和说明,在没有背离所述原理下,本发明的实施方式可以有任何变形或修改。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献