CN108958756A - 一种软件升级方法及系统 - Google Patents
一种软件升级方法及系统 Download PDFInfo
- Publication number
- CN108958756A CN108958756A CN201710364006.0A CN201710364006A CN108958756A CN 108958756 A CN108958756 A CN 108958756A CN 201710364006 A CN201710364006 A CN 201710364006A CN 108958756 A CN108958756 A CN 108958756A
- Authority
- CN
- China
- Prior art keywords
- parcel
- omc
- upgrade package
- software upgrade
- communication equipment
- 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.)
- Pending
Links
Classifications
-
- 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
Abstract
本发明公开了本发明实施例提供一种软件升级方法及系统,所述方法包括:操作维护设备OMC获取软件升级包,解析确定所述软件升级包包含N个小包;当N大于1,所述OMC通过JNative技术加载dll文件对所述软件升级包进行拆包处理,获得所述N个小包;所述OMC上传所述N个小包至文件传输协议FTP服务器并发送下载命令至通信设备;所述通信设备接收所述OMC发送的下载命令后,基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包。上述方法用以解决现有技术存在网络设备软件升级方式的可靠性低的技术问题,提高OMC升级通信设备软件版本的稳定性、可靠性和效率。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种软件升级方法及系统。
背景技术
随着科学技术的不断发展,LTE(长期演进,Long Term Evolution)无线技术已经得到了广泛的应用。在LTE通信网络中,eNodeB(基站,evolved NodeB)以及RRU(射频拉远单元,Radio Remote Unit)需要不定期的进行软件版本升级,以达到提供新功能和特性并修复以前版本问题的要求。
OMC(操作维护中心,Operation Maintance Center)升级软件升级包流程包括四部分:软件升级包导入、软件升级包下载、软件升级包同步、软件升级包激活。其中,软件升级包导入和软件升级包下载都是基于FTP(文件传输协议,File Transfer Protocol),只有在软件升级包导入到FTP服务器之后,通过向eNodeB和RRU下发下载、同步和激活命令,eNodeB和RRU将软件升级包从FTP服务器下载到本地,以达到升级设备版本的目的。
在现有技术中,OMC导入eNodeB和RRU通信设备软件升级包时,软件升级包作为一个整体文件解析,OMC读取其中需要的字段入库记录,最后上传到FTP服务器固定的目录下。在软件升级包下载过程中,软件升级包作为一个整体进行下载,eNodeB和RRU收到OMC的下载命令,建立文件传输任务进行软件升级包下载,OMC实时更新下载进度,直到下载完成为止。随着网络设备的演进,功能不断增加,网络设备升级的软件升级包也随着变大,网络设备数量不断增加,FTP服务器的并发连接数也随着增高,在软件升级包导入过程,FTP采用单线程上传文件,在网络带宽有限的条件下,对带宽的抢占优势小,导致上传速度慢。同时,一旦发生意外中断,就需要重新上传文件的全部数据,极大的影响了数据上传的效率,造成软件升级包导入效率低下。在软件升级包下载过程,软件升级包容量过大,且批量下载引起FTP高并发连接,软件升级包从FTP服务器传输到网络设备过程缓慢,下载超时或文件传输建立失败,导致软件升级包下载失败。所以,现有技术存在网络设备软件升级方式的可靠性低的技术问题。
发明内容
本发明实施例提供一种软件升级方法及系统,用以解决现有技术存在网络设备软件升级方式的可靠性低的技术问题,提高OMC升级通信设备软件版本的稳定性、可靠性和效率。
本发明实施例提供的具体技术方案如下:
第一方面,本发明实施例提供了一种软件升级方法,包括:
操作维护设备OMC获取软件升级包,解析确定所述软件升级包包含N个小包,N为正整数;
当N大于1,所述OMC通过JNative技术加载dll文件对所述软件升级包进行拆包处理,获得所述N个小包;
所述OMC上传所述N个小包至文件传输协议FTP服务器并发送下载命令至通信设备;
所述通信设备接收所述OMC发送的下载命令后,基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包。
可能的实施方式中,在所述OMC通过JNative技术加载dll文件对所述软件升级包进行拆包处理之前,所述方法还包括:
所述OMC判断本地工作目录下是否存储JNative文件;
如果否,所述OMC从webStart中下载所述JNative文件至本地工作目录,其中,所述JNative文件预先部署在所述OMC的webStart中。
可能的实施方式中,所述OMC上传所述N个小包至所述OMC中的FTP服务器,具体包括:
所述OMC获得所述软件升级包的名称;
所述OMC基于所述软件升级包的名称,确定所述N个小包中每一个小包的名称,所述N个小包中任意一个小包对应的名称标示小包所属的软件升级包;
所述OMC基于所述N个小包中每个小包的名称,将所述N个小包归为一类;
所述OMC将归为一类的所述N个小包上传至所述FTP服务器的预设文件夹中,其中,所述预设文件夹的名称与所述软件升级包的名称相同。
可能的实施方式中,所述OMC上传所述N个小包至所述OMC中的FTP服务器,具体包括:
所述OMC确定所述N个小包的上传顺序;
所述OMC基于所述上传顺序,依次上传所述N个小包,其中,在上传所述N个小包中的第i个小包时,申请用于上传所述第i个小包的FTP链路,通过所述FTP链路上传所述第i个小包,当所述第i个小包上传完后,释放所述FTP链路,i为小于或等于N的正整数。
可能的实施方式中,在所述OMC基于所述上传顺序,依次上传所述N个小包时,所述方法还包括:
在所述N个小包中的第j个小包上传失败时,所述OMC继续上传第j+1个小包,直至第N个小包上传完毕,j为小于或等于N的正整数;
所述OMC输出所述第j个小包上传失败的提示信息,用于提示用户需要手动上传所述第j个小包。
可能的实施方式中,在所述通信设备基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包时,所述方法还包括:
所述通信设备在完成对所述N个小包中第k个小包下载后,对所述第k个小包进行解压,获得解压后的第k个小包,k为小于或等于N的正整数;删除解压前的所述第k个小包。
可能的实施方式中,在所述通信设备从所述OMC的FTP服务器中下载所述N个小包之后,所述方法还包括:
所述OMC向所述通信设备发送同步所述软件升级包的同步命令;
所述通信设备接收所述OMC发送的同步所述软件升级包的同步命令,基于所述同步命令,同步所述软件升级包,反馈同步状态至所述OMC;
所述OMC基于所述同步状态,在确定所述通信设备中的所述软件升级包同步完成后,向所述通信设备发送激活所述软件升级包的激活命令;
所述通信设备接收所述OMC发送的激活所述软件升级包的激活命令,根据所述激活命令进行软件升级。
第二方面,本发明实施例提供了一种软件升级系统,包括:
操作维护设备OMC,用于获取软件升级包,解析确定所述软件升级包包含N个小包,N为正整数;当N大于1,通过JNative技术加载dll文件对所述软件升级包进行拆包处理,获得所述N个小包;上传所述N个小包至文件传输协议FTP服务器并发送下载命令至通信设备;
所述通信设备,用于接收所述OMC发送的下载命令后,基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包。
可能的实施方式中,所述OMC还用于:
在通过JNative技术加载dll文件对所述软件升级包进行拆包处理之前,判断本地工作目录下是否存储JNative文件;
如果否,所述OMC从webStart中下载所述JNative文件至本地工作目录,其中,所述JNative文件预先部署在所述OMC的webStart中。
可能的实施方式中,所述OMC还用于:
获得所述软件升级包的名称;
基于所述软件升级包的名称,确定所述N个小包中每一个小包的名称,所述N个小包中任意一个小包对应的名称标示小包所属的软件升级包;
基于所述N个小包中每个小包的名称,将所述N个小包归为一类;将归为一类的所述N个小包上传至所述FTP服务器的预设文件夹中,其中,所述预设文件夹的名称与所述软件升级包的名称相同。
可能的实施方式中,所述OMC还用于:
确定所述N个小包的上传顺序;
基于所述上传顺序,依次上传所述N个小包,其中,在上传所述N个小包中的第i个小包时,申请用于上传所述第i个小包的FTP链路,通过所述FTP链路上传所述第i个小包,当所述第i个小包上传完后,释放所述FTP链路,i为小于或等于N的正整数。
可能的实施方式中,所述OMC还用于:
在基于所述上传顺序,依次上传所述N个小包时,在所述N个小包中的第j个小包上传失败时,继续上传第j+1个小包,直至第N个小包上传完毕,j为小于或等于N的正整数;
输出所述第j个小包上传失败的提示信息,用于提示用户需要手动上传所述第j个小包。
可能的实施方式中,所述通信设备还用于:
在基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包时,所述通信设备在完成对所述N个小包中第k个小包下载后,对所述第k个小包进行解压,获得解压后的第k个小包,k为小于或等于N的正整数;删除解压前的所述第k个小包。
可能的实施方式中,在所述通信设备从所述OMC的FTP服务器中下载所述N个小包之后,所述OMC向所述通信设备发送同步所述软件升级包的同步命令;
所述通信设备接收所述OMC发送的同步所述软件升级包的同步命令,基于所述同步命令,同步所述软件升级包,反馈同步状态至所述OMC;
所述OMC基于所述同步状态,在确定所述通信设备中的所述软件升级包同步完成后,向所述通信设备发送激活所述软件升级包的激活命令;
所述通信设备接收所述OMC发送的激活所述软件升级包的激活命令,根据所述激活命令进行软件升级。
基于上述技术方案,本发明实施例中,当对eNodeB和RRU等通信设备进行软件版本升级时,因为软件升级包容量过大导致的版本升级失败率过高。为了解决这个问题,提出了软件升级包拆包导入的方案。拆包方案中使用JNative技术调用dll文件对软件升级包进行拆包处理,完成拆包后,将每个小包上传到FTP服务器上,待下载时候eNodeB和RRU获取,极大的提高了OMC升级通信设备软件版本的可靠性和稳定性。
附图说明
图1为本发明实施例一中软件升级方法的流程图;
图2为本发明实施例一中通信设备下载软件升级包过程示意图;
图3为本发明实施例二中软件升级系统的结构框图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例一
在本实施例中,如图1所示,软件升级方法的流程如下:
步骤101:操作维护设备OMC获取软件升级包,解析确定所述软件升级包包含N个小包,N为正整数;
步骤102:当N大于1,所述OMC通过JNative技术加载dll文件对所述软件升级包进行拆包处理,获得所述N个小包;
步骤103:所述OMC上传所述N个小包至文件传输协议FTP服务器并发送下载命令至通信设备;
步骤104:所述通信设备接收所述OMC发送的下载命令后,基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包;
步骤105:所述OMC向所述通信设备发送同步所述软件升级包的同步命令;
步骤106:所述通信设备接收所述OMC发送的同步所述软件升级包的同步命令,基于所述同步命令,同步所述软件升级包,反馈同步状态至所述OMC;
步骤107:所述OMC基于所述同步状态,在确定所述通信设备中的所述软件升级包同步完成后,向所述通信设备发送激活所述软件升级包的激活命令;
步骤108:所述通信设备接收所述OMC发送的激活所述软件升级包的激活命令,根据所述激活命令进行软件升级。
具体的,随着网络设备的演进,功能不断增加,eNodeB和RRU等通信设备的软件升级包也随着变大,通信设备数量不断增加,FTP服务器的并发连接数也随着增高,软件包导入过程,传统FTP采用单线程上传文件,在网络带宽有限的条件下,对带宽的抢占优势小,导致上传速度慢;同时,一旦发生意外中断,就需要重新上传文件的全部数据,极大的影响了数据上传的效率,造成软件包导入效率低下。
在本实施例中,通信设备可以是eNodeB或RRU等通信设备,还可以是其它通信设备,在此,本申请不做限定。当对eNodeB和RRU等通信设备进行软件版本升级时,OMC首先获取软件升级包的本地路径后,解析读取软件升级包的小包个数。当小包个数大于1时,开始对软件升级包进行拆包,进而对拆包后的小包进行上传。
OMC在进行拆包时,主要是通过JNative技术加载dll文件对所述软件升级包进行拆包处理。JNI是Java本地接口的简称,本地是相对于Java程序来说的,指直接运行在操作系统之上,与操作系统直接交互的程序。使用JNI技术可以提高Java程序的执行效率,并且可以扩展Java程序的功能。进而将拆分后的小包基于FTP协议上传至FTP服务器,OMC通过JNative文件中的解压缩方法获得各小包对应的参数,并将各小包的参数记录至OMC中。
当小包个数等于1时,OMC直接调用EJB(Enterprise JavaBean,远程调用的应用JavaBean)远程接口解析该软件升级包后获得该软件升级包的参数,将该参数记录至OMC中,然后,将该软件升级包基于FTP协议上传至FTP服务器。
在软件升级包对应的小包全部上传至FTP服务器后,OMC发送下载命令至通信设备,以使所述通信设备从FTP服务器中下载对应的小包,该下载命令携带指向该FTP服务器的地址信息,进而使通信设备根据下载命令向该FTP服务器下载软件升级包对应的小包。
OMC会实时监控下载进度,在确定通信设备下载完成软件升级包对应的小包后,OMC向通信设备发送同步所述软件升级包的同步命令,通信设备在接收到该同步命令后,对软件升级包进行同步,在同步完成后,反馈同步完成的响应信息至OMC,OMC在接收到该响应信息后,发送激活软件升级包的激活命令至通信设备,通信设备根据该激活命令进行软件激活,以实现软件升级。通过在OMC中进行拆包上传的方式,解决了设备软件升级包容量过大,软件升级包导入过程易出现中断情况,持续占用FTP连接数造成软件包导入效率低下,失败率过高的问题。
通信设备下载软件升级包的过程如图2所示,在软件升级包对应的小包全部上传至FTP服务器后,OMC确定下载任务启动,下发下载命令至通信设备eNodeB或RRU,该下载命令携带指向该FTP服务器的地址信息和小包的个数,通信设备eNodeB或RRU在接收到该下载命令后,反馈应答消息,确定处于下载状态,通信设备eNodeB或RRU基于该下载命令中的地址信息,建立多个文件传输任务,分批次从FTP上下载N个小包。在下载过程中,OMC启动下载监控,实时查询下载进度,通信设备eNodeB或RRU实时向OMC反馈下载进度,OMC根据通信设备eNodeB或RRU反馈的下载进度更新下载任务进度,在OMC查询到下载进度100%时,确定N个小包下载完成。
进一步,通信设备在本地创建与软件升级包相同名称的文件夹,下载的N个小包存储至该文件夹中。在OMC确定通信设备下载完成软件升级包对应的小包后,OMC向通信设备发送同步所述软件升级包的同步命令,通信设备在接收到该同步命令后,对软件升级包进行同步,在同步完成后,反馈同步完成的响应信息至OMC,OMC在接收到该响应信息后,发送激活软件升级包的激活命令至通信设备,通信设备根据该激活命令进行软件激活,以实现软件升级。
在具体实施过程中,在步骤:所述OMC通过JNative技术加载dll文件对所述软件升级包进行拆包处理之前,还包括如下步骤:
所述OMC判断本地工作目录下是否存储JNative文件;
如果否,所述OMC从webStart中下载所述JNative文件至本地工作目录,其中,所述JNative文件预先部署在所述OMC的webStart中。
具体的,在本实施例中,在OMC解析出软件升级包的小包个数大于1时,需要调用JNative文件的dll文件对软件升级包进行拆包处理,为了使得该技术简单易用,减少手动操作导致的错误率,可以预先将JNative.jar文件部署到OMC的webStart中。每次导入软件升级包时,首先判断OMC的本地工作目录下是否存储有JNative.jar,如果本地未存储,则从OMC的webStart中下载到Windows操作系统C盘OMC工作目录下。如果本地存储有该文件,则无需重复下载,直接调用即可。当然,OMC还可以通过其他方式下载获取该JNative.jar至OMC的本地工作目录,在此,本申请不作限定。其中,JNative.jar包含LmtBZipUtil.dll和JnativeCpp.dll,LmtBZipUtil.dll中包含解压缩软件包的方法。可以在软件升级包入库时,通过这些解压缩软件包方法中的任意一种或多种组合来解析获得软件升级包的参数信息,保存该参数信息至与该软件升级包对应的文件夹中。
在具体实施过程中,步骤:所述OMC上传所述N个小包至所述OMC中的FTP服务器,具体包括如下步骤:
所述OMC获得所述软件升级包的名称;
所述OMC基于所述软件升级包的名称,确定所述N个小包中每一个小包的名称,所述N个小包中任意一个小包对应的名称标示小包所属的软件升级包;
所述OMC基于所述N个小包中每个小包的名称,将所述N个小包归为一类;
所述OMC将归为一类的所述N个小包上传至所述FTP服务器的预设文件夹中,其中,所述预设文件夹的名称与所述软件升级包的名称相同。
具体的,在本实施例中,在上传N个小包时,OMC获得软件升级包的名称,并基于该软件升级包的名称,对拆分后的小包进行命名。基于N个小包中每个小包的名称,将该N个小包归为一类,将归为一类的N个小包上传至FTP服务器中与软件升级包的名称相同文件夹中。比如:软件升级包的名称为A,软件升级包A可拆分为3个小包,可以将3个小包分别命名为A1、A2、A3。由此,可以通过小包的名称确定A1、A2、A3这3个小包与A软件升级包对应。同时,在FTP服务器中创建一个名为A的文件夹,在上传A1、A2、A3这3个小包时,这3个小包均存储至A文件夹。通过这样的方式,可以有效避免导入软件升级包小包过多造成存储混淆的问题。
在具体实施过程中,步骤:所述OMC上传所述N个小包至所述OMC中的FTP服务器,具体还包括如下步骤:
所述OMC确定所述N个小包的上传顺序;
所述OMC基于所述上传顺序,依次上传所述N个小包,其中,在上传所述N个小包中的第i个小包时,申请用于上传所述第i个小包的FTP链路,通过所述FTP链路上传所述第i个小包,当所述第i个小包上传完后,释放所述FTP链路,i为小于或等于N的正整数;
其中,在所述OMC基于所述上传顺序,依次上传所述N个小包,所述N个小包中的第j个小包上传失败时,所述OMC继续上传第j+1个小包,直至第N个小包上传完毕,j为小于或等于N的正整数;
所述OMC输出所述第j个小包上传失败的提示信息,用于提示用户需要手动上传所述第j个小包。
具体的,在本实施例中,在上传N个小包之前,OMC可以对N个小包进行编号或排序,编号或排序的规则可根据实际情况进行设定,在此,本申请不作限制。基于小包的编号或者排序,可确定N个小包上传的顺序,基于该上传顺序依次上传该N个小包。具体的,在每上传一个小包之前,需要申请用于上传该小包的FTP链路,通过申请的FTP链路上传完该小包后,释放该FTP链路。采用上传一个小包申请一个FTP链路,上传完后及时释放FTP链路,通过这样的方式,不会过多占用FTP的连接数。并且,由于基于FTP协议传输文件时,传输包含多个小容量文件的文件的速度比传输一个同样容量的大文件的速度快。比如:文件A中包含A1、A2、A3,A1、A2、A3的容量均为1M,文件A的容量即为3M,文件B容量也为3M,传输文件A的速度比传输文件B的速度快。所以,通过上述拆包上传的方式,可以将软件升级包拆分为多个小容量的小包,传输多个小容量的小包比直接传输一个大容量的软件升级包的速度快,能够有效提高软件升级包的传输效率,进而缩短软件升级时间。
进一步,在本实施例中,在按上传顺序上传N个小包时,当遇到小包上传失败时,OMC会控制继续上传后续的小包,等整个上传动作结束,通过已上传到FTP服务器成功的小包和本地拆分的小包进行比较,获得上传失败的小包信息,进而输出该小包上传失败的提示信息,用于提示用户需要手动上传该小包,用户在获知该提示信息后,通过手动方式对上传失败的小包进行上传,有效节省了FTP连接数,也节省了整体小包的上传时间,进而缩短软件升级时间。
在本实施例中,在所述通信设备基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包时,所述方法还包括:
所述通信设备在完成对所述N个小包中第k个小包下载后,对所述第k个小包进行解压,获得解压后的第k个小包,k为小于或等于N的正整数;
删除解压前的所述第k个小包。
具体的,在本实施例中,在通信设备分批次从FTP服务器中下载N个小包时,每个小包下载成功后,通信设备对该小包进行解压缩处理,当下载第二个小包前,通信设备会删除掉上一个小包压缩文件,既节省了通信设备的磁盘空间,改善了因为磁盘空间导致的下载失败问题,而且释放了内存,从而提升了通过OMC升级通信设备的效率。
实施例二
请参考图3,基于与实施例一中软件升级方法同一发明构思,本实施例提供一种软件升级系统,包括:
操作维护设备OMC301,用于获取软件升级包,解析确定所述软件升级包包含N个小包,N为正整数;当N大于1,通过JNative技术加载dll文件对所述软件升级包进行拆包处理,获得所述N个小包;上传所述N个小包至文件传输协议FTP服务器并发送下载命令至通信设备;
所述通信设备302,用于接收所述OMC301发送的下载命令后,基于所述下载命令,从所述OMC301的FTP服务器中下载所述N个小包。
可能的实施方式中,所述OMC301还用于:
在通过JNative技术加载dll文件对所述软件升级包进行拆包处理之前,判断本地工作目录下是否存储JNative文件;
如果否,所述OMC301从webStart中下载所述JNative文件至本地工作目录,其中,所述JNative文件预先部署在所述OMC301的webStart中。
可能的实施方式中,所述OMC301还用于:
获得所述软件升级包的名称;
基于所述软件升级包的名称,确定所述N个小包中每一个小包的名称,所述N个小包中任意一个小包对应的名称标示小包所属的软件升级包;
基于所述N个小包中每个小包的名称,将所述N个小包归为一类;将归为一类的所述N个小包上传至所述FTP服务器的预设文件夹中,其中,所述预设文件夹的名称与所述软件升级包的名称相同。
可能的实施方式中,所述OMC301还用于:
确定所述N个小包的上传顺序;
基于所述上传顺序,依次上传所述N个小包,其中,在上传所述N个小包中的第i个小包时,申请用于上传所述第i个小包的FTP链路,通过所述FTP链路上传所述第i个小包,当所述第i个小包上传完后,释放所述FTP链路,i为小于或等于N的正整数。
可能的实施方式中,所述OMC301还用于:
在基于所述上传顺序,依次上传所述N个小包时,在所述N个小包中的第j个小包上传失败时,继续上传第j+1个小包,直至第N个小包上传完毕,j为小于或等于N的正整数;
输出所述第j个小包上传失败的提示信息,用于提示用户需要手动上传所述第j个小包。
可能的实施方式中,所述通信设备302还用于:
在基于所述下载命令,从所述OMC301的FTP服务器中下载所述N个小包时,所述通信设备302在完成对所述N个小包中第k个小包下载后,对所述第k个小包进行解压,获得解压后的第k个小包,k为小于或等于N的正整数;删除解压前的所述第k个小包。
可能的实施方式中,在所述通信设备302从所述OMC301的FTP服务器中下载所述N个小包之后,所述OMC301向所述通信设备302发送同步所述软件升级包的同步命令;
所述通信设备302接收所述OMC301发送的同步所述软件升级包的同步命令,基于所述同步命令,同步所述软件升级包,反馈同步状态至所述OMC301;
所述OMC301基于所述同步状态,在确定所述通信设备302中的所述软件升级包同步完成后,向所述通信设备302发送激活所述软件升级包的激活命令;
所述通信设备302接收所述OMC301发送的激活所述软件升级包的激活命令,根据所述激活命令进行软件升级。
本发明实施例中,当对eNodeB和RRU等通信设备进行软件版本升级时,因为软件升级包容量过大导致的版本升级失败率过高。为了解决这个问题,提出了软件升级包拆包导入的方案。拆包方案中使用JNative技术调用dll文件对软件升级包进行拆包处理,完成拆包后,将每个小包上传到FTP服务器上,待下载时候eNodeB和RRU获取,极大的提高了OMC升级通信设备软件版本的可靠性和稳定性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序命令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序命令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的命令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序命令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的命令产生包括命令装置的制造品,该命令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序命令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的命令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (14)
1.一种软件升级方法,其特征在于,包括:
操作维护设备OMC获取软件升级包,解析确定所述软件升级包包含N个小包,N为正整数;
当N大于1,所述OMC通过JNative技术加载dll文件对所述软件升级包进行拆包处理,获得所述N个小包;
所述OMC上传所述N个小包至文件传输协议FTP服务器并发送下载命令至通信设备;
所述通信设备接收所述OMC发送的下载命令后,基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包。
2.如权利要求1所述的方法,其特征在于,在所述OMC通过JNative技术加载dll文件对所述软件升级包进行拆包处理之前,所述方法还包括:
所述OMC判断本地工作目录下是否存储JNative文件;
如果否,所述OMC从webStart中下载所述JNative文件至本地工作目录,其中,所述JNative文件预先部署在所述OMC的webStart中。
3.如权利要求1所述的方法,其特征在于,所述OMC上传所述N个小包至所述OMC中的FTP服务器,具体包括:
所述OMC获得所述软件升级包的名称;
所述OMC基于所述软件升级包的名称,确定所述N个小包中每一个小包的名称,所述N个小包中任意一个小包对应的名称标示小包所属的软件升级包;
所述OMC基于所述N个小包中每个小包的名称,将所述N个小包归为一类;
所述OMC将归为一类的所述N个小包上传至所述FTP服务器的预设文件夹中,其中,所述预设文件夹的名称与所述软件升级包的名称相同。
4.如权利要求1所述的方法,其特征在于,所述OMC上传所述N个小包至所述OMC中的FTP服务器,具体包括:
所述OMC确定所述N个小包的上传顺序;
所述OMC基于所述上传顺序,依次上传所述N个小包,其中,在上传所述N个小包中的第i个小包时,申请用于上传所述第i个小包的FTP链路,通过所述FTP链路上传所述第i个小包,当所述第i个小包上传完后,释放所述FTP链路,i为小于或等于N的正整数。
5.如权利要求4所述的方法,其特征在于,在所述OMC基于所述上传顺序,依次上传所述N个小包时,所述方法还包括:
在所述N个小包中的第j个小包上传失败时,所述OMC继续上传第j+1个小包,直至第N个小包上传完毕,j为小于或等于N的正整数;
所述OMC输出所述第j个小包上传失败的提示信息,用于提示用户需要手动上传所述第j个小包。
6.如权利要求1所述的方法,其特征在于,在所述通信设备基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包时,所述方法还包括:
所述通信设备在完成对所述N个小包中第k个小包下载后,对所述第k个小包进行解压,获得解压后的第k个小包,k为小于或等于N的正整数;删除解压前的所述第k个小包。
7.如权利要求1-6中任一权利要求所述的方法,其特征在于,在所述通信设备从所述OMC的FTP服务器中下载所述N个小包之后,所述方法还包括:
所述OMC向所述通信设备发送同步所述软件升级包的同步命令;
所述通信设备接收所述OMC发送的同步所述软件升级包的同步命令,基于所述同步命令,同步所述软件升级包,反馈同步状态至所述OMC;
所述OMC基于所述同步状态,在确定所述通信设备中的所述软件升级包同步完成后,向所述通信设备发送激活所述软件升级包的激活命令;
所述通信设备接收所述OMC发送的激活所述软件升级包的激活命令,根据所述激活命令进行软件升级。
8.一种软件升级系统,其特征在于,包括:
操作维护设备OMC,用于获取软件升级包,解析确定所述软件升级包包含N个小包,N为正整数;当N大于1,通过JNative技术加载dll文件对所述软件升级包进行拆包处理,获得所述N个小包;上传所述N个小包至文件传输协议FTP服务器并发送下载命令至通信设备;
所述通信设备,用于接收所述OMC发送的下载命令后,基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包。
9.如权利要求8所述的系统,其特征在于,所述OMC还用于:
在通过JNative技术加载dll文件对所述软件升级包进行拆包处理之前,判断本地工作目录下是否存储JNative文件;
如果否,所述OMC从webStart中下载所述JNative文件至本地工作目录,其中,所述JNative文件预先部署在所述OMC的webStart中。
10.如权利要求8所述的系统,其特征在于,所述OMC还用于:
获得所述软件升级包的名称;
基于所述软件升级包的名称,确定所述N个小包中每一个小包的名称,所述N个小包中任意一个小包对应的名称标示小包所属的软件升级包;
基于所述N个小包中每个小包的名称,将所述N个小包归为一类;将归为一类的所述N个小包上传至所述FTP服务器的预设文件夹中,其中,所述预设文件夹的名称与所述软件升级包的名称相同。
11.如权利要求8所述的系统,其特征在于,所述OMC还用于:
确定所述N个小包的上传顺序;
基于所述上传顺序,依次上传所述N个小包,其中,在上传所述N个小包中的第i个小包时,申请用于上传所述第i个小包的FTP链路,通过所述FTP链路上传所述第i个小包,当所述第i个小包上传完后,释放所述FTP链路,i为小于或等于N的正整数。
12.如权利要求11所述的系统,其特征在于,所述OMC还用于:
在基于所述上传顺序,依次上传所述N个小包时,在所述N个小包中的第j个小包上传失败时,继续上传第j+1个小包,直至第N个小包上传完毕,j为小于或等于N的正整数;
输出所述第j个小包上传失败的提示信息,用于提示用户需要手动上传所述第j个小包。
13.如权利要求8所述的系统,其特征在于,所述通信设备还用于:
在基于所述下载命令,从所述OMC的FTP服务器中下载所述N个小包时,所述通信设备在完成对所述N个小包中第k个小包下载后,对所述第k个小包进行解压,获得解压后的第k个小包,k为小于或等于N的正整数;删除解压前的所述第k个小包。
14.如权利要求8-13中任一权利要求所述的系统,其特征在于,在所述通信设备从所述OMC的FTP服务器中下载所述N个小包之后,所述OMC向所述通信设备发送同步所述软件升级包的同步命令;
所述通信设备接收所述OMC发送的同步所述软件升级包的同步命令,基于所述同步命令,同步所述软件升级包,反馈同步状态至所述OMC;
所述OMC基于所述同步状态,在确定所述通信设备中的所述软件升级包同步完成后,向所述通信设备发送激活所述软件升级包的激活命令;
所述通信设备接收所述OMC发送的激活所述软件升级包的激活命令,根据所述激活命令进行软件升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710364006.0A CN108958756A (zh) | 2017-05-22 | 2017-05-22 | 一种软件升级方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710364006.0A CN108958756A (zh) | 2017-05-22 | 2017-05-22 | 一种软件升级方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108958756A true CN108958756A (zh) | 2018-12-07 |
Family
ID=64461578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710364006.0A Pending CN108958756A (zh) | 2017-05-22 | 2017-05-22 | 一种软件升级方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108958756A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110602191A (zh) * | 2019-08-30 | 2019-12-20 | 科大智能电气技术有限公司 | 一种文件传输系统及方法 |
CN111722861A (zh) * | 2020-06-17 | 2020-09-29 | 中国第一汽车股份有限公司 | 一种应用程序升级方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694622A (zh) * | 2009-09-29 | 2010-04-14 | 中兴通讯股份有限公司 | 一种多设备组合装置的固件远程升级方法及系统 |
CN102075918A (zh) * | 2011-01-13 | 2011-05-25 | 大唐移动通信设备有限公司 | 一种基站射频单元系统更新方法及其装置 |
WO2012159575A1 (zh) * | 2011-05-24 | 2012-11-29 | 中国银联股份有限公司 | 一种双活系统间动态数据同步的方法 |
CN104077164A (zh) * | 2014-07-08 | 2014-10-01 | 北京九天利建信息技术有限公司 | 一种北斗通信系统中北斗终端设备软件升级方法 |
CN105138356A (zh) * | 2015-08-11 | 2015-12-09 | 大唐移动通信设备有限公司 | 通信设备软件升级方法及操作维护装置 |
-
2017
- 2017-05-22 CN CN201710364006.0A patent/CN108958756A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694622A (zh) * | 2009-09-29 | 2010-04-14 | 中兴通讯股份有限公司 | 一种多设备组合装置的固件远程升级方法及系统 |
CN102075918A (zh) * | 2011-01-13 | 2011-05-25 | 大唐移动通信设备有限公司 | 一种基站射频单元系统更新方法及其装置 |
WO2012159575A1 (zh) * | 2011-05-24 | 2012-11-29 | 中国银联股份有限公司 | 一种双活系统间动态数据同步的方法 |
CN104077164A (zh) * | 2014-07-08 | 2014-10-01 | 北京九天利建信息技术有限公司 | 一种北斗通信系统中北斗终端设备软件升级方法 |
CN105138356A (zh) * | 2015-08-11 | 2015-12-09 | 大唐移动通信设备有限公司 | 通信设备软件升级方法及操作维护装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110602191A (zh) * | 2019-08-30 | 2019-12-20 | 科大智能电气技术有限公司 | 一种文件传输系统及方法 |
CN111722861A (zh) * | 2020-06-17 | 2020-09-29 | 中国第一汽车股份有限公司 | 一种应用程序升级方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20080037452A1 (en) | Method Supplying Content to a Device | |
EP2866142A1 (en) | Upgrade package generation method and device, dynamic file differential upgrade method and terminal | |
CN108322496A (zh) | 镜像文件分发方法及系统、计算机可读存储介质、电子设备 | |
CN103019757A (zh) | 一种在多台客户端间同步软件的方法、装置及系统 | |
CN103220342B (zh) | 一种移动终端设备群组远程同步更新程序的方法 | |
CN107547629A (zh) | 客户端静态资源下载的方法、装置、电子设备和可读介质 | |
CN110247951B (zh) | 一种文件传输控制方法、装置、设备及存储介质 | |
CN101656739B (zh) | 组件更新方法、系统及设备 | |
CN104852971B (zh) | 一种插件式协议装置及基于插件式协议的数据通信方法 | |
CN105635216A (zh) | 分布式应用的升级方法、设备和分布式系统 | |
CN104699499B (zh) | 一种异构终端软件升级方法 | |
CN108958756A (zh) | 一种软件升级方法及系统 | |
CN103077061A (zh) | 一种应用软件在安卓设备的安装方法和系统 | |
CN109426521A (zh) | 一种无线终端版本升级系统及方法 | |
CN105530630B (zh) | 一种ota升级方法和设备 | |
CN102026228B (zh) | 通信网络性能数据的统计方法和设备 | |
CN104092777A (zh) | 客户端的布局设定与服务器同步存储的方法及其系统 | |
CN105656643B (zh) | 一种基于网络配置协议进行兼容管理的方法及设备 | |
WO2015117522A1 (zh) | 参数配置的数据处理方法、装置及参数配置方法、装置 | |
CN101895575A (zh) | 基站版本下载方法及装置和系统 | |
CN101312579A (zh) | 无线通讯设备软件包自适应加载的方法 | |
US11206574B2 (en) | Method and apparatus for data communication between MU and RU using multi-channel compression algorithm | |
CN112866985A (zh) | 流量控制方法、资源下载方法、装置、设备和存储介质 | |
CN109639842B (zh) | Nb-iot设备软件升级系统及方法 | |
WO2020119732A1 (zh) | 一种通信设备组网的调测方法及装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181207 |
|
RJ01 | Rejection of invention patent application after publication |