CN108234572A - 一种多终端软件并行下载升级方法 - Google Patents
一种多终端软件并行下载升级方法 Download PDFInfo
- Publication number
- CN108234572A CN108234572A CN201611194303.7A CN201611194303A CN108234572A CN 108234572 A CN108234572 A CN 108234572A CN 201611194303 A CN201611194303 A CN 201611194303A CN 108234572 A CN108234572 A CN 108234572A
- Authority
- CN
- China
- Prior art keywords
- terminal
- software
- server
- seed
- client
- 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
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
-
- 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
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种多终端软件并行下载升级方法,该方法包括如下步骤:(1)新的客户端软件上传至管理服务器;(2)管理服务器判断是否启用终端作为“种子服务器”;(3)当上步的判断结果为需要启动“种子服务器”时,管理服务器在不同区域中选择已完成客户端软件下载的终端作为“种子服务器”;(4)各区域终端从其区域内的“种子服务器”上下载新的客户端软件。与传统的客户端软件升级方法相比,本方法显著降低了管理服务器的资源消耗,有效保证了业务的正常运行,同时极大提高了全网终端的整体升级速度,实现了全网终端客户端软件版本的一致性,降低了系统维护的复杂度及业务出现未知风险的可能性。
Description
技术领域
本发明申请的技术属于计算机网络通讯方法领域,特别是涉及在由多终端构成的网络环境中实现软件并行下载升级的方法。
背景技术
随着网络技术的不断发展,越来越多的用户开始通过移动网与互联网连接获取自己需要的信息。用户的客户端软件实现了与互联网之间多平台跨网络无缝沟通。
现有技术中的交互式网络通信主要包括:(1)B/S(Browse/Server,浏览器/服务器)方式;(2)C/S(client/server,客户端/服务器)网络;(3)P2P(peertopeer,对等)网络三种。上述三种网络通讯的本质均为一方为相对的一方提供服务。
对于B/S网络通讯是一种通过浏览器与服务器进行信息交互的网络,最为常见就是WEB服务;C/S网络是一种用户通过客户端侧安装的客户端软件与服务器进行交互信息沟通的网络传输方式;P2P同样也需要在用户端安装客户端软件与其他客户端/服务器进行信息交换。上述三种网络通讯方式中,C/S和P2P网络都需要在客户终端安装相应的客户端软件,通过客户端软件,终端用户能够在用户设备及服务器之间相互进行信息传送(包括文字信息、语音信息、图像信息)。这些客户端软件保证了用户设备、服务器之间数据传输的高速、稳定。但随着信息传送功能的增强及业务发展需求,客户端软件也相应需要进行版本升级。传统的客户端软件升级方式是在服务器上发布最新客户端软件版本,然后通知各个客户端开始从服务器下载并升级,但当全网络区域内的客户终端数目过大时,所有终端同时执行版本下载、升级操作,从服务器下载新版本软件会占用较大的服务器资源,严重时甚至影响服务器正常的业务运行,而且该方式还可能导致部分终端版本升级失败,从而导致全网络区域的终端软件版本不一致,带来难以预知的业务风险。采用何种网络数据传输方式来保证客户终端进行客户端软件下载升级对服务器的影响最小,传送效率最高是网络通讯发展的重要技术问题。
发明内容
本申请的技术方案就是为了解决上述问题,提出一种多网络区域多终端下的软件并行下载升级方法,该方法结合传统文件下载与P2P文件分发技术,实现快速、稳定、安全的多终端文件下载升级,系统判断接入服务器的下载负荷过大时,及时在完成下载的终端中选择、启用“种子服务器”,充当本区域终端的文件下载服务器,从而支撑全网终端快速完成文件下载,进而完成全网终端的版本快速升级。
实现上述发明目的的多终端软件并行下载升级方法采用如下技术方案:一种多终端软件并行下载升级方法,该方法包括如下步骤:(1)新的客户端软件上传至管理服务器;(2)管理服务器判断是否启用终端作为“种子服务器”;(3)当上步的判断结果为需要启动“种子服务器”时,管理服务器在不同区域中选择已完成客户端软件下载的终端作为“种子服务器”;(4)各区域终端从其区域内的“种子服务器”上下载新的客户端软件。上述方法中,核心是通过服务器对下载状态的监测判断、选择特定的终端作为“种子服务器”,从而使本区域内的其他终端再进行客户端软件下载升级时不再通过管理服务器进行数据传送,减少了管理服务器的数据交换负担,保证了服务器安全、稳定、高效的运行。
上述步骤(3)中,管理服务器判断是否启用终端作为“种子服务器”的条件是:(a)全网络区域进行客户端软件升级的终端是否超过终端总数的30%;(b)所有客户端下载带宽之和是否超过了管理服务器的物理带宽的50%;(c)下载客户端软件的终端是否处于不同的区域中;上3个条件满足任何一种情况时,启用“种子服务器”终端。一旦选择确定了该区域的“种子服务器”,则其数据传输的对象就局限在本区域内的终端,实现数据在区域内部的传输。实际上,服务器选择某个终端作为服务器是具备一定的标准和要求,这里服务器按照下述3个条件进行优先级排序选择:(i)各区域中网络下载速率最快的终端充当“种子服务器”;(ii)各区域中物理带宽负荷最轻的终端充当“种子服务器”;(iii)各区域中CPU负荷最轻的终端充当“种子服务器”。通过上述3个标准的“种子服务器”选择,可以保证作为“种子服务器”的终端在网络传输上具有最高的效率和稳定性,从而实现了其他各终端在客户端软件下载升级中的高效性能。由于“种子服务器”的选择和建立仅是在需要进行客户端软件下载升级中建立的区域服务器,因此,在各区域终端从其区域内的“种子服务器”上完成下载客户端软件后,管理平台关闭“种子服务器”的文件下载服务,原先作为“种子服务器”的终端将作为普通终端使用。
由于各区域终端所下载和升级的软件是从“种子服务器”获取的,很有可能会产生新安装的软件不能正常运行的情况,为此,各区域终端完成客户端软件下载后与管理服务器建立心跳连接并进行客户端软件验证过程;如果验证不通过,终端卸载本次升级下载的软件,并从备份目录中恢复操作前的软件版本;同时进行客户端软件验证过程,其具体是在终端与管理服务器建立心跳连接后,从服务器下载测试策略并执行,将测试策略执行结果上报服务器,服务器判断终端上报的结果是否正常,若测试策略执行结果正常,则终端本次升级操作正常完成,流程结束。上述验证、测试过程,保证了各终端虽然从不同“种子服务器”中下载升级了软件,但其最终的效果是同管理服务器软件下载升级是一致的。
采用多线程并行运行方式目前已经成为网络通讯的常用手段,这种方式可以大大提高数据传输的效率。为此,本技术方案中,终端从“种子服务器”下载客户端软件、终端验证客户端软件的正确性均采用平行方式,及各个区域中的终端与各自区域内的“种子服务器”是同时进行数据信息交换。
具体实施方式
为更清楚说明本发明技术方案,下面借助一种具体的实施方式进行介绍,首先是终端软件的下载和升级过程;其步骤是(1)管理员上传最新的客户端软件到管理服务器;(2)终端端在通过心跳链接从管理服务器中获取当前系统支持的最新客户端软件版本号;(3)终端进行版本号比对,发现系统存在新版本,发起客户端版本下载更新流程;(4)终端端将自己的系统类型、IP地址、准备下载的软件版本信息告知服务器;(5)服务器进行是否建立“种子服务器”的判断并确定各“种子服务器”的IP地址和下载口令告知各终端;(6)各终端向对应的“种子服务器”发起下载请求,并进行口令认证;(7)终端通过口令认证后,完成新版本下载;(8)下载完成后,终端校验软件是否有效;(9)完成校验后,终端安装新版本软件,完成版本升级操作。
终端版本验证的过程如下:(1)终端在完成新版本软件下载安装后,建立到服务器的心跳连接;(2)若心跳连接建立失败,终端检查与服务器的连通性,若连通性不存在问题,则再次尝试建立心跳连接,若仍然失败,则判定客户端新版本存在问题,则转入版本回退流程;(3)终端建立心跳连接后,从服务器下载测试策略并执行,将测试策略执行结果上报服务器;(4)服务器判断终端上报的结果是否正常,并将结果返回;(5)若测试策略执行结果正常,则终端本次升级操作正常完成,流程结束;(6)若测试策略执行结果异常,则客户端本次升级操作失败,转入版本回退流程。
终端版本回退流程如下:(1)终端卸载本次升级下载的新版本软件;(2)终端从备份目录中恢复升级操作前的软件版本;(3)软件版本恢复后,终端重新建立到服务器的心跳连接;(3)心跳建立后,终端上报当前系统版本号及版本回退记录及原因。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明实质内容上所作的任何修改、等同替换和简单改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种多终端软件并行下载升级方法,其特征在于,该方法包括如下步骤:(1)新的客户端软件上传至管理服务器;(2)管理服务器判断是否启用终端作为“种子服务器”;(3)当上步的判断结果为需要启动“种子服务器”时,管理服务器在不同区域中选择已完成客户端软件下载的终端作为“种子服务器”;(4)各区域终端从其区域内的“种子服务器”上下载新的客户端软件。
2.根据权利要求1所述的多终端软件并行下载升级方法,其特征在于,步骤(3)中,管理服务器判断是否启用终端作为“种子服务器”的条件是:(a)全网络区域进行客户端软件升级的终端是否超过终端总数的30%;(b)所有客户端下载带宽之和是否超过了管理服务器的物理带宽的50%;(c)下载客户端软件的终端是否处于不同的区域中;上述3个条件满足任何一种情况时,启用“种子服务器”终端。
3.根据权利要求1所述的多终端软件并行下载升级方法,其特征在于,步骤(2)中选择作为“种子服务器的”的终端条件为:(i)各区域中网络下载速率最快的终端充当“种子服务器”;(ii)各区域中物理带宽负荷最轻的终端充当“种子服务器”;(iii)各区域中CPU负荷最轻的终端充当“种子服务器”,上述3个条件按照(i)(ii)(iii)优先级顺序进行“种子服务器”的选择。
4.根据权利要求1所述的多终端软件并行下载升级方法,其特征在于,在各区域终端从其区域内的“种子服务器”上完成下载客户端软件后,管理平台关闭“种子服务器”的文件下载服务。
5.根据权利要求1所述的多终端软件并行下载升级方法,其特征在于,各区域终端完成客户端软件下载后与管理服务器建立心跳连接并进行客户端软件验证过程;如果验证不通过,终端卸载本次升级下载的软件,并从备份目录中恢复操作前的软件版本。
6.根据权利要求5所述的多终端软件并行下载升级方法,其特征在于,客户端软件验证是在终端与管理服务器建立心跳连接后,从服务器下载测试策略并执行,将测试策略执行结果上报服务器,服务器判断终端上报的结果是否正常,若测试策略执行结果正常,则终端本次升级操作正常完成,流程结束。
7.根据权利要求1、5或6所述的多终端软件并行下载升级方法,其特征在于,终端从“种子服务器”下载客户端软件、终端验证客户端软件的正确性均采用平行方式。
8.根据权利要求3所述的多终端软件并行下载升级方法,其特征在于,终端从“种子服务器”下载客户端软件时需要进行口令认证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611194303.7A CN108234572A (zh) | 2016-12-21 | 2016-12-21 | 一种多终端软件并行下载升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611194303.7A CN108234572A (zh) | 2016-12-21 | 2016-12-21 | 一种多终端软件并行下载升级方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108234572A true CN108234572A (zh) | 2018-06-29 |
Family
ID=62656797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611194303.7A Pending CN108234572A (zh) | 2016-12-21 | 2016-12-21 | 一种多终端软件并行下载升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108234572A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857414A (zh) * | 2019-01-22 | 2019-06-07 | 上海微小卫星工程中心 | 卫星软件扩散方法和系统 |
CN110489151A (zh) * | 2019-08-27 | 2019-11-22 | 深信服科技股份有限公司 | 一种终端升级方法及系统 |
CN110602232A (zh) * | 2019-09-20 | 2019-12-20 | 中国银行股份有限公司 | 基于对等网络思想的终端系统版本下载方法、装置及系统 |
CN111124465A (zh) * | 2019-11-28 | 2020-05-08 | 武汉虹信技术服务有限责任公司 | 一种跨网络c/s程序远程升级方法及系统 |
CN112887951A (zh) * | 2021-01-21 | 2021-06-01 | 读书郎教育科技有限公司 | 基于蓝牙的工厂实现Android终端预安装应用的系统及方法 |
CN113489610A (zh) * | 2021-06-30 | 2021-10-08 | 中国民航信息网络股份有限公司 | 一种离港前端升级方法、装置、电子设备及存储介质 |
WO2023092409A1 (zh) * | 2021-11-25 | 2023-06-01 | 西门子股份公司 | 边缘子设备的软件更新方法、系统、计算设备及存储介质 |
WO2023134260A1 (zh) * | 2022-01-14 | 2023-07-20 | 中兴通讯股份有限公司 | 软件更新方法、服务器及存储介质 |
-
2016
- 2016-12-21 CN CN201611194303.7A patent/CN108234572A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857414A (zh) * | 2019-01-22 | 2019-06-07 | 上海微小卫星工程中心 | 卫星软件扩散方法和系统 |
CN110489151A (zh) * | 2019-08-27 | 2019-11-22 | 深信服科技股份有限公司 | 一种终端升级方法及系统 |
CN110602232A (zh) * | 2019-09-20 | 2019-12-20 | 中国银行股份有限公司 | 基于对等网络思想的终端系统版本下载方法、装置及系统 |
CN111124465A (zh) * | 2019-11-28 | 2020-05-08 | 武汉虹信技术服务有限责任公司 | 一种跨网络c/s程序远程升级方法及系统 |
CN111124465B (zh) * | 2019-11-28 | 2023-06-20 | 武汉虹信技术服务有限责任公司 | 一种跨网络c/s程序远程升级方法及系统 |
CN112887951A (zh) * | 2021-01-21 | 2021-06-01 | 读书郎教育科技有限公司 | 基于蓝牙的工厂实现Android终端预安装应用的系统及方法 |
CN113489610A (zh) * | 2021-06-30 | 2021-10-08 | 中国民航信息网络股份有限公司 | 一种离港前端升级方法、装置、电子设备及存储介质 |
WO2023092409A1 (zh) * | 2021-11-25 | 2023-06-01 | 西门子股份公司 | 边缘子设备的软件更新方法、系统、计算设备及存储介质 |
WO2023134260A1 (zh) * | 2022-01-14 | 2023-07-20 | 中兴通讯股份有限公司 | 软件更新方法、服务器及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108234572A (zh) | 一种多终端软件并行下载升级方法 | |
US10003496B1 (en) | Network change management | |
CN106210114A (zh) | 一种多终端软件并行下载升级方法 | |
CN110493352A (zh) | 一种基于web中间件的统一网关服务系统及其服务方法 | |
US20220232095A1 (en) | Method and system for a network presence platform with intelligent routing | |
US20110276685A1 (en) | Cloud computing as a service for enterprise software and data provisioning | |
US20060047830A1 (en) | Pctel14100U method and system for automatic data transfer on a network-connected device | |
CN105933888B (zh) | 一种基于NFC的eSIM卡烧录方法及装置 | |
US20020052950A1 (en) | Distributed network monitoring and control system | |
CN102945175A (zh) | 一种基于云计算环境的终端软件在线升级系统及其方法 | |
US11929890B2 (en) | Microservices application network control plane | |
WO2020119328A1 (zh) | 数据传输方法、装置、设备及存储介质 | |
CN110166547A (zh) | 终端远程访问控制方法 | |
CN114616807B (zh) | 用于管理和控制通信网络的方法和系统 | |
CN118075057A (zh) | 基于tr069+mqtt方式管理fttr主从网关方法 | |
CN114268938A (zh) | 用户前置设备的纳管方法、装置、设备以及存储介质 | |
US11425172B2 (en) | Application security for service provider networks | |
CN115150162B (zh) | 一种根证书更新方法、装置 | |
CN110086831A (zh) | 用于网关的鉴权方法 | |
US20230284053A1 (en) | Integration of physical test environments with a cloud-native cellular core | |
CN102349065B (zh) | 设备辅助的服务安装 | |
CN106533716B (zh) | 一种北向接口的管理方法和系统 | |
CN102685109A (zh) | 一种三网融合下的游戏cp接入方法 | |
Canali et al. | Designing a private cdn with an off-sourced network infrastructure: model and case study | |
CN109784709A (zh) | 企业信息化协作应用方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180629 |