CN112118137A - 固件升级方法、装置、计算机设备和可读存储介质 - Google Patents
固件升级方法、装置、计算机设备和可读存储介质 Download PDFInfo
- Publication number
- CN112118137A CN112118137A CN202010983862.6A CN202010983862A CN112118137A CN 112118137 A CN112118137 A CN 112118137A CN 202010983862 A CN202010983862 A CN 202010983862A CN 112118137 A CN112118137 A CN 112118137A
- Authority
- CN
- China
- Prior art keywords
- communication
- upgrade
- upgrading
- control unit
- main control
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
Abstract
本申请的实施例提供了一种固件升级方法、装置、计算机设备和可读存储介质,涉及通信设备维护技术领域,固件升级方法包括:接收主控单元发送的通信升级包;根据通信升级包的认证码对通信升级包的完整性进行验证,其中,通信升级包的认证码是主控单元利用密码散列函数对通信升级包进行计算得到的;在通信升级包通过完整性验证的情况下进入恢复模式,断开与主控单元的通信连接;按照恢复模式配置的升级指令,运行通信升级包进行升级;在预设升级时长后,建立与主控单元的通信连接,主控单元和通信单元在预设升级时长内均升级完成,通过上述步骤能够便捷地实现固件升级。
Description
技术领域
本申请涉及通信设备维护技术领域,具体而言,涉及一种固件升级方法、装置、计算机设备和可读存储介质。
背景技术
随着通信技术的发展,不论是在医院,单位,工厂,小区还是农村等区域,无线网络的接入已经十分普及,而负责处理无线网络的接入的设备大多由用于实现信号的发送与接收的通信单元以及用于控制通信单元的主控单元作为基础设备构成。而通信技术的更新换代速度之快,需要对应的固件也进行相应版本的升级来适配通信技术的更新。而在现有技术中,并不能直接对通信单元进行远程操作升级,仅能基于通信单元给定的更新模式由人工到现场进行升级。不仅如此,现有技术中,主控单元和通信单元也是分别进行升级的,这也产生了由于没有升级到相互适配的版本进而导致两者之间无法正常通信的问题,现有的固件升级方案十分的麻烦。
有鉴于此,如何提供一种便捷地固件升级方案,是本领域技术人员需要解决的。
发明内容
本申请提供了一种固件升级方法、装置、计算机设备和可读存储介质。
本申请的实施例可以这样实现:
第一方面,本申请实施例提供一种固件升级方法,应用于客户前置设备的通信单元,客户前置设备还包括与通信单元通信连接的主控单元;
方法包括:
接收主控单元发送的通信升级包;
根据通信升级包的认证码对通信升级包的完整性进行验证,其中,通信升级包的认证码是主控单元利用密码散列函数对通信升级包进行计算得到的;
在通信升级包通过完整性验证的情况下进入恢复模式,断开与主控单元的通信连接;
按照恢复模式配置的升级指令,运行通信升级包进行升级;
在预设升级时长后,建立与主控单元的通信连接,主控单元和通信单元在预设升级时长内均升级完成。
在可选的实施方式中,客户前置设备存储有通信单元的通信字节序,通信升级包包括网络字节序;
在根据通信升级包的认证码对通信升级包的完整性进行验证的步骤之前,方法还包括:
获取通信升级包的网络字节序;
判断网络字节序与通信字节序是否相同;
若是,则执行根据通信升级包的认证码对通信升级包的完整性进行验证的步骤;
若否,则将网络字节序调整为通信字节序。
在可选的实施方式中,通信单元包括升级地址和升级端口;
接收主控单元发送的通信升级包的步骤,包括:
实时监听主控单元是否发出升级信号,其中,升级信号用于触发通信单元接收主控单元发送的通信升级包;
在监听到主控单元发出升级信号的情况下,通过升级地址和升级端口接收主控单元发送的通信升级包。
在可选的实施方式中,主控单元和通信单元之间基于网际互连协议通道的套接字进行数据传输,通信升级包多个通信升级子包;
接收主控单元发送的通信升级包的步骤,包括:
基于网际互连协议通道的套接字连续接收主控单元发送的多个通信升级子包,直至将每个通信升级子包接收完毕。
在可选的实施方式中,通信升级包包括升级服务和升级脚本;
按照恢复模式配置的升级指令,运行通信升级包进行升级的步骤,包括:
按照恢复模式配置的升级指令解压通信升级包,得到升级服务和升级脚本;
执行升级服务,其中,升级服务用于根据升级脚本对通信单元进行升级。
在可选的实施方式中,根据通信升级包的认证码对通信升级包的完整性进行验证的步骤,包括:
判断第一认证码与第二认证码是否一致,其中,第一认证码为主控单元配置的通信升级包的认证码,第二认证码为通信单元接收到的通信升级包的认证码;
若是,则判定通信升级包为完整;
若否,则发出通信升级包报错提示。
第二方面,本申请实施例提供一种固件升级装置,应用于客户前置设备的通信单元,客户前置设备还包括与通信单元通信连接的主控单元;
装置包括:
接收模块,用于接收主控单元发送的通信升级包;
验证模块,用于根据通信升级包的认证码对通信升级包的完整性进行验证,其中,通信升级包的认证码是主控单元利用密码散列函数对通信升级包进行计算得到的;
升级模块,用于在通信升级包通过完整性验证的情况下进入恢复模式,断开与主控单元的通信连接;按照恢复模式配置的升级指令,运行通信升级包进行升级;在预设升级时长后,建立与主控单元的通信连接,主控单元和通信单元在预设升级时长内均升级完成。
在可选的实施方式中,客户前置设备存储有通信单元的通信字节序,通信升级包包括网络字节序;
验证模块还用于:
获取通信升级包的网络字节序;判断网络字节序与通信字节序是否相同;若是,则执行根据通信升级包的认证码对通信升级包的完整性进行验证的步骤;若否,则将网络字节序调整为通信字节序。
第三方面,本申请实施例提供一种计算机设备,计算机设备包括处理器及存储有计算机指令的非易失性存储器,计算机指令被处理器执行时,计算机设备执行前述实施方式中任意一项的固件升级方法。
第四方面,本申请实施例提供一种可读存储介质,可读存储介质包括计算机程序,计算机程序运行时控制可读存储介质所在计算机设备执行前述实施方式中任意一项的固件升级方法。
本申请实施例的有益效果包括,例如:本申请实施例提供一种固件升级方法、装置、计算机设备和可读存储介质,通过接收主控单元发送的通信升级包;再根据通信升级包的认证码对通信升级包的完整性进行验证,其中,通信升级包的认证码是主控单元利用密码散列函数对通信升级包进行计算得到的;然后在通信升级包通过完整性验证的情况下进入恢复模式,断开与主控单元的通信连接;进而按照恢复模式配置的升级指令,运行通信升级包进行升级;最终在预设升级时长后,建立与主控单元的通信连接,主控单元和通信单元在预设升级时长内均升级完成,能够便捷地实现固件的升级。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的固件升级系统的交互示意图;
图2为本申请实施例提供的固件升级方法的步骤流程示意图;
图3为本申请实施例提供的固件升级装置的结构示意框图;
图4为本申请实施例提供的计算机设备的结构示意框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本申请的实施例中的特征可以相互结合。
随着通信技术的发展,不论是在医院,单位,工厂,小区还是农村等区域,无线网络的应用已经十分的广泛,不论是用户的移动终端,还是用于进行生产的设备设施,都已经与无线网络有着密不可分的联系。而用于负责处理无线网络的设备可以是CPE(CustomerPremise Equipment,简称客户前置设备),客户前置设备是一种接收移动信号并以无线WIFI信号转发出来的移动信号接入设备,它也是一种将高速4G或者5G信号转换成WiFi信号的设备。CPE大多由用于实现信号的发送与接收的通信单元以及用于控制通信单元的主控单元作为基础设备构成。而通信技术的更新换代速度之快,需要对应的固件也进行相应版本的升级来适配通信技术的更新。而在现有技术中,并不能直接对通信单元进行远程操作升级,仅能基于通信单元给定的更新模式由人工到现场进行升级。不仅如此,现有技术中,主控单元和通信单元也是分别进行升级的,这也产生了由于没有升级到相互适配的版本进而导致两者之间无法正常通信的问题,现有的固件升级方案十分的麻烦。
请参考图1,图1为本申请实施例提供的固件升级系统的交互示意图,本申请实施例提供的固件升级系统可以包括客户前置设备10的通信单元11以及与通信单元11通信连接的主控单元12。在本申请实施例的其他实施方式中,固件升级系统也可以由更多或者更少的部件构成,在此不做限定。
为了解决前述提出的技术问题,请结合参考图2,图2为本申请实施例提供的固件升级方法的步骤流程示意图。该固件升级方法由图1中的通信单元11执行实施。下面对该固件升级方法进行详细的介绍。
步骤201,接收主控单元12发送的通信升级包。
其中,通信升级包为主控单元12通过解压外部升级包得到的,外部升级包括主控升级包和通信升级包,主控单元12利用主控升级包完成升级。
步骤202,根据通信升级包的认证码对通信升级包的完整性进行验证。
其中,通信升级包的认证码是主控单元12利用密码散列函数对通信升级包进行计算得到的。
步骤203,在通信升级包通过完整性验证的情况下进入恢复模式,断开与主控单元12的通信连接。
步骤204,按照恢复模式配置的升级指令,运行通信升级包进行升级。
步骤205,在预设升级时长后,建立与主控单元12的通信连接,主控单元12和通信单元11在预设升级时长内均升级完成。
在本申请实施例中,通信单元11可以说是SDX55(Snapdragon X55,简称骁龙X55)芯片,主控单元12可以是IPQ(Independent Project Qualification处理器,简称高通路由芯片处理器)。应当理解的是,如前所描述的,IPQ的升级模式可以是根据sysupgrade(系统升级)脚本实现升级,而SDX55芯片的升级模式可以为recovery(恢复)模式实现升级,即作为主控单元12的IPQ能够接收外部的升级包进行升级,而作为通信单元11的SDX55芯片无法根据外部发送的升级包进行升级。
基于此,可以先由主控设备接收外部升级包并进行解压,得到主控升级包和通信升级包,应当理解是,由于主控升级包和通信升级包是打包在同一外部升级包中的,因此两个版本之间是适配的,即主控单元12根据主控升级包升级更新后与根据该通信升级包升级更新后得到的通信单元11之间的版本是适配的,两者之间不会存在因为版本不兼容而导致的通信故障问题,实现了一次性对两个固件进行升级的目的。
在主控单元12解压外部升级包得到通信升级包后,可以将该通信升级包发送至通信单元11,为了保证升级的顺利进行,在进行升级之前,可以对通信升级包进行完整性检测,以避免由于通信升级包本身的数据缺失、不完整等问题导致通信单元11在升级过程中报错直接死机的问题。
在进行了完整性检验后,通信单元11便可以进入恢复模式(即进入recovery模式),在进入该模式后,可以按照恢复模式预先配置的升级指令,运行通信升级包进行升级,在本申请实施例中,SDX55芯片的升级过程一般为3分钟,而IPQ的升级过程一般为5分钟,而在通信单元11进入恢复模式后会断开与主控单元12的通信连接,可以将预设升级时长设置为5分钟,以确保在预设升级时长后主控单元12和通信单元11在预设升级时长内均升级完成,以便两者之间重新建立通信连接。
在此基础上,客户前置设备10存储有通信单元11的通信字节序,通信升级包包括网络字节序。作为一种可替换的实施例,在前述步骤202执行之前,本申请实施例还提供以下的具体实施方式。
步骤206,获取通信升级包的网络字节序。
步骤207,判断网络字节序与通信字节序是否相同。
若是,则执行步骤202。
若否,则执行步骤208。
步骤208,将网络字节序调整为通信字节序。
在本申请实施例中,通信升级包在主控单元12发送之间,其采用网络字节序为主控字节序,这与通信单元11能够正常识别的通信字节序不一样,其原因在于两者对应的系统平台不一样,例如IPQ采用开源openwrt(嵌入式的Linux发行版)系统,而SDX55采用开源yocto(开源社区)系统,基于此,可以先判断网络字节序与通信字节序是否相同,在相同的情况下,可以继续执行后续操作,在不相同的情况下,可以将通信升级包的网络字节序改成通信单元11能够正常识别的通信字节序。通过上述步骤,能够巧妙地解决不同平台系统传输时,通信升级包能被正确解析的问题。
在此基础上,通信单元11包括升级地址和升级端口。为了能够更加清楚地表达本方案的内容,前述步骤201可以有以下的具体实施方式。
子步骤201-1,实时监听主控单元12是否发出升级信号。
其中,升级信号用于触发通信单元11接收主控单元12发送的通信升级包。
子步骤201-2,在监听到主控单元12发出升级信号的情况下,通过升级地址和升级端口接收主控单元12发送的通信升级包。
在本申请实施例中,通信单元11有预先配置的升级地址和升级端口来专门服务升级相关操作,通信单元11对主控单元12进行实时监听,在监听到主控单元12发出升级信号后,便可以利用专门服务升级相关事项的升级地址和升级端口接收主控单元12发送的通信升级包。通过上述步骤,提高了进行通信单元11进行升级时的效率,避免出现由于与其他业务端口共用导致升级无法进行的问题。
在前述基础上,主控单元12和通信单元11之间基于网际互连协议通道的套接字进行数据传输,通信升级包多个通信升级子包。作为一种可替换的具体实施方式,前述步骤201还可以有以下的具体实施方式。
子步骤201-3,基于网际互连协议通道的套接字连续接收主控单元12发送的多个通信升级子包,直至将每个通信升级子包接收完毕。
在现有技术中,为了保证通信升级包能够正确的被传输,会将组成通信升级包的多个通信升级子包依次由主控单元12发送至通信单元11,并且是每发送一个通信升级子包,主控单元12均需要等待通信单元11反馈是否成功后,才能进行下一个通信升级子包的传输,直至所有通信升级子包的传输完成,效率十分低下。
本申请实施例的主控单元12和通信单元11之间可以是基于网际互连协议通道的套接字进行数据传输,即基于IP channel的socket进行通信,采用这种方案由于对应的TCP本身就是一个可靠的流协议,因此仅需执行先前述根据通信升级包的认证码对通信升级包的完整性进行验证的步骤,便能够保证通信升级包正确的被传输,即可以一次性将所有的通信升级子包发送至通信单元11,极大的提高了通信升级包的传输效率。
在此基础上,通信升级包包括升级服务和升级脚本。前述步骤204可以由以下详细的步骤实现。
子步骤204-1,按照恢复模式配置的升级指令解压通信升级包,得到升级服务和升级脚本。
子步骤204-2,执行升级服务。
其中,升级服务用于根据升级脚本对通信单元11进行升级。
在通信单元11进入recovery模式后,IPQ与X55便断开通信连接,在recovery模式下,通信单元11可以执行升级包中的升级服务update-binary,update-binary会按照升级包中的脚本updater-script逐步的写文件或者写镜像以完成通信单元11的升级。
除了上述步骤,为了能够更加清楚地描述本方案,前述步骤202可以由以下的具体实施方式实现。
子步骤202-1,判断第一认证码与第二认证码是否一致。
其中,第一认证码为主控单元12配置的通信升级包的认证码,第二认证码为通信单元11接收到的通信升级包的认证码。
若是,则执行子步骤202-2。
若否,则执行子步骤202-3。
子步骤202-2,判定通信升级包为完整。
子步骤202-3,发出通信升级包报错提示。
在本申请实施例中,验证通信升级包是否完整可以是利用文件md5(Message-Digest Algorithm,简称密码散列函数)方法来进行验证,可以IPQ发送通信升级包前,先计算通信升级包的md5值(即第一认证码),并传给通信单元11,在通信单元11升级包传输完成后,通信单元11可以计算通信升级包的md5(即第二认证码),与之前IPQ传入的md5值比较,相同就说明校验通过。
本申请实施例提供一种固件升级装置110,应用于客户前置设备10的通信单元11,客户前置设备10还包括与通信单元11通信连接的主控单元12,请参考图3,固件升级装置110包括:
接收模块1101,用于接收主控单元12发送的通信升级包。
验证模块1102,用于根据通信升级包的认证码对通信升级包的完整性进行验证,其中,通信升级包的认证码是主控单元12利用密码散列函数对通信升级包进行计算得到的。
升级模块1103,用于在通信升级包通过完整性验证的情况下进入恢复模式,断开与主控单元12的通信连接;按照恢复模式配置的升级指令,运行通信升级包进行升级;在预设升级时长后,建立与主控单元12的通信连接,主控单元12和通信单元11在预设升级时长内均升级完成。
进一步地,客户前置设备10存储有通信单元11的通信字节序,通信升级包包括网络字节序;
验证模块1102还用于:
获取通信升级包的网络字节序;判断网络字节序与通信字节序是否相同;若是,则执行根据通信升级包的认证码对通信升级包的完整性进行验证的步骤;若否,则将网络字节序调整为通信字节序。
进一步地,通信单元11包括升级地址和升级端口,接收模块1101具体用于:
实时监听主控单元12是否发出升级信号,其中,升级信号用于触发通信单元11接收主控单元12发送的通信升级包;在监听到主控单元12发出升级信号的情况下,通过升级地址和升级端口接收主控单元12发送的通信升级包。
进一步地,主控单元12和通信单元11之间基于网际互连协议通道的套接字进行数据传输,通信升级包多个通信升级子包,接收模块1101具体用于:
基于网际互连协议通道的套接字连续接收主控单元12发送的多个通信升级子包,直至将每个通信升级子包接收完毕。
进一步地,通信升级包包括升级服务和升级脚本,升级模块1103具体用于:
按照恢复模式配置的升级指令解压通信升级包,得到升级服务和升级脚本;执行升级服务,其中,升级服务用于根据升级脚本对通信单元11进行升级。
进一步地,验证模块1102具体用于:
判断第一认证码与第二认证码是否一致,其中,第一认证码为主控单元12配置的通信升级包的认证码,第二认证码为通信单元11接收到的通信升级包的认证码;若是,则判定通信升级包为完整;若否,则发出通信升级包报错提示。
在一个实施例中,提供了一种计算机设备100,包括存储器111、处理器112和固件升级装置110,该存储器111存储有计算机程序,该处理器112执行计算机程序时实现以下步骤:
接收所述主控单元12发送的通信升级包;根据所述通信升级包的认证码对所述通信升级包的完整性进行验证,其中,所述通信升级包的认证码是所述主控单元12利用密码散列函数对所述通信升级包进行计算得到的;在所述通信升级包通过完整性验证的情况下进入恢复模式,断开与所述主控单元12的通信连接;按照所述恢复模式配置的升级指令,运行所述通信升级包进行升级;在预设升级时长后,建立与所述主控单元12的通信连接,所述主控单元12和所述通信单元11在所述预设升级时长内均升级完成。
在一个实施例中,处理器112执行计算机程序时还实现以下步骤:
获取所述通信升级包的网络字节序;判断所述网络字节序与所述通信字节序是否相同;若是,则执行所述根据所述通信升级包的认证码对所述通信升级包的完整性进行验证的步骤;若否,则将所述网络字节序调整为所述通信字节序。
在一个实施例中,处理器112执行计算机程序时还实现以下步骤:
实时监听所述主控单元12是否发出升级信号,其中,所述升级信号用于触发所述通信单元11接收所述主控单元12发送的通信升级包;在监听到所述主控单元12发出升级信号的情况下,通过所述升级地址和所述升级端口接收所述主控单元12发送的通信升级包。
在一个实施例中,处理器112执行计算机程序时还实现以下步骤:
基于所述网际互连协议通道的套接字连续接收所述主控单元12发送的所述多个通信升级子包,直至将每个所述通信升级子包接收完毕。
在一个实施例中,处理器112执行计算机程序时还实现以下步骤:
按照所述恢复模式配置的升级指令解压所述通信升级包,得到所述升级服务和所述升级脚本;执行所述升级服务,其中,所述升级服务用于根据所述升级脚本对所述通信单元11进行升级。
在一个实施例中,处理器112执行计算机程序时还实现以下步骤:
判断第一认证码与第二认证码是否一致,其中,所述第一认证码为所述主控单元12配置的通信升级包的认证码,所述第二认证码为所述通信单元11接收到的通信升级包的认证码;若是,则判定所述通信升级包为完整;若否,则发出所述通信升级包报错提示。
通过上述设置能够便捷地实现主控单元12和通信单元11同时完成固件升级。
在一个实施例中,如图4所示,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收所述主控单元12发送的通信升级包;根据所述通信升级包的认证码对所述通信升级包的完整性进行验证,其中,所述通信升级包的认证码是所述主控单元12利用密码散列函数对所述通信升级包进行计算得到的;在所述通信升级包通过完整性验证的情况下进入恢复模式,断开与所述主控单元12的通信连接;按照所述恢复模式配置的升级指令,运行所述通信升级包进行升级;在预设升级时长后,建立与所述主控单元12的通信连接,所述主控单元12和所述通信单元11在所述预设升级时长内均升级完成。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取所述通信升级包的网络字节序;判断所述网络字节序与所述通信字节序是否相同;若是,则执行所述根据所述通信升级包的认证码对所述通信升级包的完整性进行验证的步骤;若否,则将所述网络字节序调整为所述通信字节序。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
实时监听所述主控单元12是否发出升级信号,其中,所述升级信号用于触发所述通信单元11接收所述主控单元12发送的通信升级包;在监听到所述主控单元12发出升级信号的情况下,通过所述升级地址和所述升级端口接收所述主控单元12发送的通信升级包。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
基于所述网际互连协议通道的套接字连续接收所述主控单元12发送的所述多个通信升级子包,直至将每个所述通信升级子包接收完毕。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
按照所述恢复模式配置的升级指令解压所述通信升级包,得到所述升级服务和所述升级脚本;执行所述升级服务,其中,所述升级服务用于根据所述升级脚本对所述通信单元11进行升级。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
判断第一认证码与第二认证码是否一致,其中,所述第一认证码为所述主控单元12配置的通信升级包的认证码,所述第二认证码为所述通信单元11接收到的通信升级包的认证码;若是,则判定所述通信升级包为完整;若否,则发出所述通信升级包报错提示。
通过上述设置能够便捷地实现主控单元12和通信单元11同时完成固件升级。
综上所述,本申请实施例提供了一种固件升级方法、装置、计算机设备和可读存储介质,通过接收主控单元发送的通信升级包;再根据通信升级包的认证码对通信升级包的完整性进行验证,其中,通信升级包的认证码是主控单元利用密码散列函数对通信升级包进行计算得到的;然后在通信升级包通过完整性验证的情况下进入恢复模式,断开与主控单元的通信连接;进而按照恢复模式配置的升级指令,运行通信升级包进行升级;最终在预设升级时长后,建立与主控单元的通信连接,主控单元和通信单元在预设升级时长内均升级完成,能够便捷地实现固件的升级。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种固件升级方法,其特征在于,应用于客户前置设备的通信单元,所述客户前置设备还包括与所述通信单元通信连接的主控单元;所述方法包括:
接收所述主控单元发送的通信升级包;
根据所述通信升级包的认证码对所述通信升级包的完整性进行验证,其中,所述通信升级包的认证码是所述主控单元利用密码散列函数对所述通信升级包进行计算得到的;
在所述通信升级包通过完整性验证的情况下进入恢复模式,断开与所述主控单元的通信连接;
按照所述恢复模式配置的升级指令,运行所述通信升级包进行升级;
在预设升级时长后,建立与所述主控单元的通信连接,所述主控单元和所述通信单元在所述预设升级时长内均升级完成。
2.根据权利要求1所述的方法,其特征在于,所述客户前置设备存储有所述通信单元的通信字节序,所述通信升级包包括网络字节序;在所述根据所述通信升级包的认证码对所述通信升级包的完整性进行验证的步骤之前,所述方法还包括:
获取所述通信升级包的网络字节序;
判断所述网络字节序与所述通信字节序是否相同;
若是,则执行所述根据所述通信升级包的认证码对所述通信升级包的完整性进行验证的步骤;
若否,则将所述网络字节序调整为所述通信字节序。
3.根据权利要求1所述的方法,其特征在于,所述通信单元包括升级地址和升级端口;所述接收所述主控单元发送的通信升级包的步骤,包括:
实时监听所述主控单元是否发出升级信号,其中,所述升级信号用于触发所述通信单元接收所述主控单元发送的通信升级包;
在监听到所述主控单元发出升级信号的情况下,通过所述升级地址和所述升级端口接收所述主控单元发送的通信升级包。
4.根据权利要求1所述的方法,其特征在于,所述主控单元和所述通信单元之间基于网际互连协议通道的套接字进行数据传输,所述通信升级包多个通信升级子包;所述接收所述主控单元发送的通信升级包的步骤,包括:
基于所述网际互连协议通道的套接字连续接收所述主控单元发送的所述多个通信升级子包,直至将每个所述通信升级子包接收完毕。
5.根据权利要求1所述的方法,其特征在于,所述通信升级包包括升级服务和升级脚本;所述按照所述恢复模式配置的升级指令,运行所述通信升级包进行升级的步骤,包括:
按照所述恢复模式配置的升级指令解压所述通信升级包,得到所述升级服务和所述升级脚本;
执行所述升级服务,其中,所述升级服务用于根据所述升级脚本对所述通信单元进行升级。
6.根据权利要求1所述的方法,其特征在于,所述根据所述通信升级包的认证码对所述通信升级包的完整性进行验证的步骤,包括:
判断第一认证码与第二认证码是否一致,其中,所述第一认证码为所述主控单元配置的通信升级包的认证码,所述第二认证码为所述通信单元接收到的通信升级包的认证码;
若是,则判定所述通信升级包为完整;
若否,则发出所述通信升级包报错提示。
7.一种固件升级装置,其特征在于,应用于客户前置设备的通信单元,所述客户前置设备还包括与所述通信单元通信连接的主控单元;所述装置包括:
接收模块,用于接收所述主控单元发送的通信升级包;
验证模块,用于根据所述通信升级包的认证码对所述通信升级包的完整性进行验证,其中,所述通信升级包的认证码是所述主控单元利用密码散列函数对所述通信升级包进行计算得到的;
升级模块,用于在所述通信升级包通过完整性验证的情况下进入恢复模式,断开与所述主控单元的通信连接;按照所述恢复模式配置的升级指令,运行所述通信升级包进行升级;在预设升级时长后,建立与所述主控单元的通信连接,所述主控单元和所述通信单元在所述预设升级时长内均升级完成。
8.根据权利要求7所述的装置,其特征在于,所述客户前置设备存储有所述通信单元的通信字节序,所述通信升级包包括网络字节序;所述验证模块还用于:
获取所述通信升级包的网络字节序;判断所述网络字节序与所述通信字节序是否相同;若是,则执行所述根据所述通信升级包的认证码对所述通信升级包的完整性进行验证的步骤;若否,则将所述网络字节序调整为所述通信字节序。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器及存储有计算机指令的非易失性存储器,所述计算机指令被所述处理器执行时,所述计算机设备执行权利要求1-6中任意一项所述的固件升级方法。
10.一种可读存储介质,其特征在于,所述可读存储介质包括计算机程序,所述计算机程序运行时控制所述可读存储介质所在计算机设备执行权利要求1-6中任意一项所述的固件升级方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010983862.6A CN112118137B (zh) | 2020-09-17 | 2020-09-17 | 固件升级方法、装置、计算机设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010983862.6A CN112118137B (zh) | 2020-09-17 | 2020-09-17 | 固件升级方法、装置、计算机设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112118137A true CN112118137A (zh) | 2020-12-22 |
CN112118137B CN112118137B (zh) | 2023-04-28 |
Family
ID=73801256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010983862.6A Active CN112118137B (zh) | 2020-09-17 | 2020-09-17 | 固件升级方法、装置、计算机设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112118137B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114143197A (zh) * | 2021-11-29 | 2022-03-04 | 武汉天喻信息产业股份有限公司 | 物联网设备ota升级方法、装置、设备及可读存储介质 |
CN114640584A (zh) * | 2022-02-14 | 2022-06-17 | 西安广和通无线软件有限公司 | 模块升级方法和系统 |
CN115314385A (zh) * | 2022-07-28 | 2022-11-08 | 深圳市思达仪表有限公司 | 组网模块的固件升级方法、装置、计算机设备及介质 |
US20240070328A1 (en) * | 2022-08-25 | 2024-02-29 | Dell Products L.P. | System and method for hardware management through operation update |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104331312A (zh) * | 2014-11-24 | 2015-02-04 | 东软熙康健康科技有限公司 | 一种固件升级方法及嵌入式设备 |
CN105138358A (zh) * | 2015-08-13 | 2015-12-09 | 深圳市中兴物联科技有限公司 | 固件升级装置和方法 |
US20160299753A1 (en) * | 2015-04-09 | 2016-10-13 | Rex Poway Tseng | Firmware upgrading method for bluetooth electronic scales |
CN110311964A (zh) * | 2019-06-20 | 2019-10-08 | 厦门四信通信科技有限公司 | 套接字ota升级方法、装置、系统、用户终端和存储介质 |
CN111131861A (zh) * | 2019-12-31 | 2020-05-08 | 深圳Tcl新技术有限公司 | 恢复分区的升级方法、终端和存储介质 |
-
2020
- 2020-09-17 CN CN202010983862.6A patent/CN112118137B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104331312A (zh) * | 2014-11-24 | 2015-02-04 | 东软熙康健康科技有限公司 | 一种固件升级方法及嵌入式设备 |
US20160299753A1 (en) * | 2015-04-09 | 2016-10-13 | Rex Poway Tseng | Firmware upgrading method for bluetooth electronic scales |
CN105138358A (zh) * | 2015-08-13 | 2015-12-09 | 深圳市中兴物联科技有限公司 | 固件升级装置和方法 |
CN110311964A (zh) * | 2019-06-20 | 2019-10-08 | 厦门四信通信科技有限公司 | 套接字ota升级方法、装置、系统、用户终端和存储介质 |
CN111131861A (zh) * | 2019-12-31 | 2020-05-08 | 深圳Tcl新技术有限公司 | 恢复分区的升级方法、终端和存储介质 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114143197A (zh) * | 2021-11-29 | 2022-03-04 | 武汉天喻信息产业股份有限公司 | 物联网设备ota升级方法、装置、设备及可读存储介质 |
CN114143197B (zh) * | 2021-11-29 | 2024-04-02 | 武汉天喻信息产业股份有限公司 | 物联网设备ota升级方法、装置、设备及可读存储介质 |
CN114640584A (zh) * | 2022-02-14 | 2022-06-17 | 西安广和通无线软件有限公司 | 模块升级方法和系统 |
CN114640584B (zh) * | 2022-02-14 | 2023-11-24 | 西安广和通无线软件有限公司 | 模块升级方法和系统 |
CN115314385A (zh) * | 2022-07-28 | 2022-11-08 | 深圳市思达仪表有限公司 | 组网模块的固件升级方法、装置、计算机设备及介质 |
CN115314385B (zh) * | 2022-07-28 | 2024-05-24 | 深圳市思达仪表有限公司 | 组网模块的固件升级方法、装置、计算机设备及介质 |
US20240070328A1 (en) * | 2022-08-25 | 2024-02-29 | Dell Products L.P. | System and method for hardware management through operation update |
Also Published As
Publication number | Publication date |
---|---|
CN112118137B (zh) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112118137A (zh) | 固件升级方法、装置、计算机设备和可读存储介质 | |
CN110621011A (zh) | 一种基于蓝牙设备端的ota固件升级方法及系统 | |
CN106031050B (zh) | 一种信息处理方法及nfc终端 | |
US20170163478A1 (en) | Method,electronic device and system for updating client configuration in key-value pair database | |
US8732694B2 (en) | Method and system for performing services in server and client of client/server architecture | |
CN105511903A (zh) | 一种音频设备的升级方法和装置 | |
CN104348578A (zh) | 数据处理的方法及装置 | |
CN109471779A (zh) | 板卡状态监控方法、微控制单元、服务器及存储介质 | |
CN113765712A (zh) | 服务器管理方法、装置、电子设备及可读存储介质 | |
CN108920962A (zh) | 固件下载验签方法、固件发布方法、移动终端及服务器 | |
CN116418791A (zh) | 固件升级方法、固件升级系统、服务器及存储介质 | |
CN110134419A (zh) | 一种双面柜的系统升级方法、装置、设备及存储介质 | |
US10979287B2 (en) | Method and apparatus for receiving a solution when configuration function verification fails in a terminal | |
CN110928562B (zh) | 一种用于Android盒子的软件升级方法 | |
KR20190041732A (ko) | 백업 장치 관리 시스템 및 방법 | |
CN106412971B (zh) | 一种异常处理方法及装置 | |
CN114579166A (zh) | 组件模块升级方法、组件模块和财务机器人 | |
CN115373927B (zh) | 产品测试方法、装置、电子设备和计算机可读介质 | |
CN115480794A (zh) | 一种应用程序更新方法、装置、电子设备以及存储介质 | |
CN116248618B (zh) | 信息传输装置、信息传输线路故障检测方法及设备 | |
US8351782B1 (en) | Polarity inversion detection for an optical circuit switch | |
JP6018038B2 (ja) | 通信装置、通信方法及び通信装置の制御プログラム | |
US11652715B1 (en) | Method for detecting network mis-cabling | |
CN110737456B (zh) | 一种无线耳机的在线升级方法及耳机设备 | |
US20210075878A1 (en) | Wireless network device with directional communication functionality |
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 |