WO2017097210A1 - 软件升级方法、装置及系统 - Google Patents

软件升级方法、装置及系统 Download PDF

Info

Publication number
WO2017097210A1
WO2017097210A1 PCT/CN2016/108939 CN2016108939W WO2017097210A1 WO 2017097210 A1 WO2017097210 A1 WO 2017097210A1 CN 2016108939 W CN2016108939 W CN 2016108939W WO 2017097210 A1 WO2017097210 A1 WO 2017097210A1
Authority
WO
WIPO (PCT)
Prior art keywords
upgrade
terminal
data
software
upgrade data
Prior art date
Application number
PCT/CN2016/108939
Other languages
English (en)
French (fr)
Inventor
胡勇光
刘成刚
陈洲
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2017097210A1 publication Critical patent/WO2017097210A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments

Definitions

  • the present disclosure relates to the field of communications, for example, to a software upgrade method, apparatus, and system.
  • OTT Over The Top
  • IPTV Internet Protocol Television
  • C/S client and server
  • Network set-top boxes are basically Android systems, and the system upgrade packages are relatively large, generally having more than 150 megabytes. The user's bandwidth is occupied for a long time during the download process, which affects the user's viewing of TV programs;
  • a single upgrade server faces a large number of set-top box clients. Due to the processing capacity of the Central Processing Unit (CPU), memory size, network bandwidth, etc., the number of services that can be provided to the set-top box is very limited, plus the set-top box. The usage scenarios are all in a relatively concentrated period of time, which results in a long time required for all set-top boxes to complete the software upgrade, resulting in a long upgrade cycle.
  • CPU Central Processing Unit
  • the present disclosure provides a software upgrade method, device, and system, which can reduce the time and upgrade period in which the set-top box software upgrade occupies user bandwidth.
  • the present disclosure provides a software upgrade method, including: sending a software upgrade request to an upgrade server of a set top box; and obtaining response information corresponding to the software upgrade request returned by the upgrade server, where the response information carries the acquired Upgrading the address information of the first terminal of the data; and sending a request for acquiring the upgrade data to the first terminal according to the address information; and acquiring the upgrade data, and performing software upgrade according to the obtained upgrade data .
  • the obtaining the upgrade data includes: acquiring, according to the specified address information, partial upgrade data from the plurality of first terminals according to a specified order, where multiple parts obtained from the multiple first terminals are upgraded The data constitutes all upgrade data.
  • the method further includes: the number of terminals currently connected to the first terminal acquiring the partial upgrade data exceeds a preset threshold. And receiving, by the first terminal, the set top box list information, where the set top box list information includes: address information of one or more third terminals, where the third terminal has obtained the partial upgrade from the first terminal Data; acquiring the partial upgrade data from the third terminal according to the address information of the third terminal.
  • the specified ordering includes: random ordering or sequential ordering.
  • the present disclosure further provides a software upgrade method, including: receiving a software upgrade request sent by a second terminal; and returning, to the second terminal, response information corresponding to the software upgrade request, where the response information carries Acquiring the address information of the first terminal of the upgrade data, the second terminal sending a request for acquiring the upgrade data to the first terminal according to the address information, acquiring the upgrade data, according to the obtained Upgrade data for software upgrades.
  • the present disclosure further provides a software upgrade apparatus, including: a sending module, configured to send a software upgrade request to an upgrade server of the set top box; and the first obtaining module is configured to acquire, corresponding to the software upgrade request, returned by the upgrade server The response information, wherein the response information carries the address information of the first terminal that has acquired the upgrade data; and the second obtaining module is configured to: send, according to the address information, the sending, to the first terminal, the information for obtaining The request for upgrading the data, obtaining the upgrade data, and performing software upgrade according to the obtained upgrade data.
  • a software upgrade apparatus including: a sending module, configured to send a software upgrade request to an upgrade server of the set top box; and the first obtaining module is configured to acquire, corresponding to the software upgrade request, returned by the upgrade server The response information, wherein the response information carries the address information of the first terminal that has acquired the upgrade data; and the second obtaining module is configured to: send, according to the address information, the sending, to the first terminal, the information for obtaining The request
  • the second acquiring module includes: acquiring a sub-module, configured to separately acquire partial upgrade data from the plurality of the first terminals according to the specified order, wherein, from the plurality of first The plurality of partial upgrade data acquired by the terminal constitutes all upgrade data.
  • the present disclosure also provides a software upgrade apparatus, including: a receiving module, configured to receive a second end a software upgrade request sent by the terminal; and a returning module, configured to return, to the second terminal, response information corresponding to the software upgrade request, where the response information carries address information of the first terminal that has obtained the upgrade data
  • the second terminal acquires a request for acquiring the upgrade data to the first terminal according to the address information, acquires the upgrade data, and performs software upgrade according to the obtained upgrade data.
  • the present disclosure also provides a software upgrade system, including: an upgrade server, a first terminal, and a second terminal, wherein the upgrade server is configured to receive a software upgrade request sent by the second terminal, and to the second terminal Sending response information corresponding to the software upgrade request, where the response information carries address information of the first terminal that has acquired the upgrade data; and the second terminal is configured to send the information according to the address information.
  • a terminal sends a request for acquiring the upgrade data, acquires the upgrade data, and performs software upgrade according to the obtained upgrade data.
  • the system further includes: a third terminal, where the third terminal is configured to: when the number of terminals currently connected to the first terminal acquiring partial upgrade data exceeds a preset threshold, to the second terminal The partial upgrade data is provided.
  • the present disclosure also provides a non-transitory computer readable storage medium storing computer executable instructions arranged to perform the method.
  • the present disclosure also provides a terminal, including:
  • At least one processor At least one processor
  • the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to cause the at least one processor to perform the following method:
  • the upgrade server Obtaining, by the upgrade server, the response information corresponding to the software upgrade request, where the response information carries the address information of the first terminal that has obtained the upgrade data;
  • the present disclosure also provides a terminal, including:
  • At least one processor At least one processor
  • the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to cause the at least one processor to perform the following method:
  • the response information corresponding to the software upgrade request where the response information carries the address information of the first terminal that has obtained the upgrade data, and the second terminal uses the address information according to the address information.
  • the first terminal sends a request for the acquired upgrade data, obtains the upgrade data, and performs software upgrade according to the obtained upgrade data.
  • the software upgrade request is sent to the upgrade server of the set-top box, and the response information corresponding to the software upgrade request returned by the upgrade server is obtained, where the response information carries the address information of the first terminal that has obtained the upgrade data.
  • FIG. 1 is a flowchart 1 of a software upgrade method according to an embodiment of the present invention.
  • FIG. 2 is a structural block diagram 1 of a software upgrade system according to an embodiment of the present invention.
  • FIG. 3 is a second flowchart of a software upgrade method according to an embodiment of the present invention.
  • FIG. 4 is a third flowchart of a software upgrade method according to an embodiment of the present invention.
  • FIG. 5 is a structural block diagram of a second acquisition module 66 of the software upgrade apparatus according to an embodiment of the present invention.
  • FIG. 6 is a structural block diagram 1 of a software upgrading apparatus according to an embodiment of the present invention.
  • FIG. 7 is a structural block diagram 2 of a software upgrading apparatus according to an embodiment of the present invention.
  • FIG. 8 is a structural block diagram 2 of a software upgrade system according to an embodiment of the present invention.
  • FIG. 9 is a structural block diagram 3 of a software upgrade system according to an embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of a terminal according to an embodiment of the present invention.
  • FIG. 1 is a flowchart 1 of a software upgrade method according to an embodiment of the present invention.
  • step 210 a software upgrade request is sent to the upgrade server of the set top box.
  • step 220 the response information corresponding to the software upgrade request returned by the upgrade server is obtained, where the response information carries the address information of the first terminal that has obtained the upgrade data.
  • step 230 the request for the acquired upgrade data is sent to the first terminal according to the address information, the upgrade data is acquired, and the software upgrade is performed according to the obtained upgrade data.
  • the software upgrade request is sent to the upgrade server of the set-top box; and the response information corresponding to the software upgrade request returned by the upgrade server is obtained, where the response information carries the acquired information.
  • the address information of the first terminal of the data is upgraded; the request for acquiring the upgrade data is sent to the first terminal according to the address information, the upgrade data is acquired, and the software upgrade is performed according to the obtained upgrade data.
  • acquiring the upgrade data includes: acquiring partial upgrade data from the plurality of first terminals according to the specified order according to the address information, where the multiple upgrade data is obtained from the multiple first terminals. Multiple partial upgrade data constitutes all upgrade data.
  • sending, to the first terminal, the request for acquiring the upgrade data the method further includes: receiving, by the first terminal, the set top box list information fed back by the first terminal, where the number of the terminals that are connected to the first terminal to obtain the partial upgrade data exceeds a preset threshold, where the set top box list is
  • the information includes: obtaining address information of the one or more third terminals of the partial upgrade data from the first terminal; and acquiring the partial upgrade data from the third terminal according to the address information of the third terminal.
  • the specified ordering may include: random ordering or sequential ordering. When the specified sorting is random sorting, the partial upgrade data in which the partial upgrade data has been acquired the least in the set top box list information may be preferentially obtained.
  • FIG. 2 is a structural block diagram of a software upgrade system according to an embodiment of the present invention.
  • the software upgrade process is described in detail below with reference to FIG. 2 .
  • the set-top box upgrade image download may be one or more upgrade servers deployed in the network, and all the terminal set-top boxes (that is, the first terminal, the second terminal, or the third terminal in this embodiment) are all set around the server.
  • the terminal set-top box download speed is slow or even the server crashes.
  • the set-top box in the network can play the role of an upgrade server, and multiple set-top boxes have an equal relationship.
  • each set-top box can obtain services from other set-top boxes and provide services to other set-top boxes. It is an emerging resource sharing technology that enables set-top boxes to be connected to other set-top boxes for file downloading, free from a single upgrade. Server limitations. That is, the upgrade server deployed in the network no longer needs to provide the download service full-time. The original upgrade file is placed on the upgrade server. When the set-top box requests the upgrade file, the server can record the download status of each set-top box, and subsequent set-top boxes need to be used. When downloading the upgrade file, the server can provide other set-top box Internet Protocol (IP) addresses and ports that have the image to the set-top box requesting the upgrade file.
  • IP Internet Protocol
  • the set-top box requesting the upgrade file can communicate with other set-top boxes and download files. That is, the server may not need to send the upgrade file once it has sent the upgrade file, because other set-top boxes can be obtained from the set-top box that owns the file.
  • the first terminal, the second terminal, and the third terminal of the set top box can change roles with each other as each phase changes.
  • the set top box terminal when the set top box terminal has no software upgrade data and sends a request to the server, the set top box terminal is the second terminal; when the second terminal obtains software upgrade data from another set top box terminal and provides upgrade data download service for other set top box terminals, the set top box terminal a first terminal; and when another set top box terminal reaches a preset threshold due to the set top box terminal to which the software upgrade data is downloaded, the set top box terminal sends the first terminal address information of the software upgrade data to the download that needs to be downloaded.
  • the set-top box is for downloading, and the first terminal becomes the third terminal.
  • a mechanism of no interface and background speed limit downloading may be adopted. Can be downloaded during the process No prompts are popped up, and each time a small block of data is downloaded, it sleeps for a period of time to smoothly control the downloaded bandwidth, so that the user has no perception of the process of downloading the image.
  • FIG. 3 is a flowchart 2 of a software upgrade method according to an embodiment of the present invention.
  • the software upgrade process is described in detail below with reference to FIG. 3.
  • the upgrade data in this embodiment may be partial upgrade data, and the partial upgrade data is a file block of equal length, and the block length may be determined according to the situation, such as 32 KB.
  • the set-top box When it downloads a file block, it can also upload the file block it has downloaded for other set-top boxes, so that the more set-top boxes that join the session, the faster the download speed. Once the set-top box has obtained the entire file, it can pause for a while and upload file blocks for other set-top boxes.
  • Figure 3 shows the steps for software upgrade when the version found in the set-top box system needs to be updated.
  • step 410 the set top box 1 requests the upgrade server to download the file.
  • step 420 the server returns the set top box information that has downloaded all the upgrade data and the set top box information (including at least the IP address and port number) that has downloaded the partial upgrade data block to the currently requested set top box 1.
  • step 430 the set top box 1 parses the information returned by the server to obtain a downloadable list.
  • step 440 when the block data A has not been acquired by the set top box in the set top box system, the set top box 1 downloads the block data A to the upgrade server.
  • step 450 the set top box 2 in the connection list downloads the chunked data C.
  • step 460 the set top box 1 shares the downloaded blocks into the upgrade server.
  • step 470 the set top box 1 simultaneously provides service to the set top box 3 for downloading the partition A.
  • step 480 the set top box 2 requests the set top box 3 to download the blocked data that the set top box 3 has acquired.
  • step 490 the set top box 1 downloads the chunked data B from the set top box 3.
  • step 4100 all the block data of the set top box 1 is downloaded, and the integrity check is performed to ensure that the file download is successful.
  • the verification method includes but is not limited to the message-digest algorithm 5 (MD5). check.
  • step 4110 the set top box 1 provides data download services to other set top boxes.
  • step 4120 when all the set top boxes in the set top box system are upgraded, the set top box 1 announces to stop downloading the service.
  • FIG. 4 is a flowchart 3 of the software upgrade method according to the embodiment of the present invention.
  • step 510 when the software version is updated, the software upgrade request sent by the second terminal is received.
  • step 520 the response information corresponding to the software upgrade request is returned to the second terminal, where the response information carries the address information of the first terminal that has obtained the upgrade data, and the second terminal
  • the address information acquisition sends a request for acquiring the upgrade data to the first terminal, acquires the upgrade data, and performs software upgrade according to the obtained upgrade data.
  • the second terminal Receiving, by the step, the software upgrade request sent by the second terminal when the software version is updated; and returning the response information corresponding to the software upgrade request to the second terminal, where the response information carries the acquired Upgrading the address information of the first terminal of the data, the second terminal sending a request for acquiring the upgrade data to the first terminal according to the address information, acquiring the upgrade data, according to the obtained Upgrade data for software upgrades.
  • the embodiment of the present invention provides two technical solutions: sequential ordering and random ordering.
  • a software upgrade method for the set top box to sequentially download and download the block data is also provided.
  • all the set top boxes logically form an interconnected state.
  • the set-top box and the set-top box are connected to each other, and download and upload services are provided between each other.
  • step A the set top box 1 requests the upgrade server to download the image file, and the server returns the set top box information that is currently downloading the upgrade file, and the information includes at least the IP address of the set top box, the port, and the file partition owned by the set top box;
  • step B the set top box 1 searches for the set top box 2 that provides the block data according to the information in block order, and connects to the set top box 2 to download the corresponding block data, if there is no machine yet.
  • the top box 2 provides this partition and then downloads it from the upgrade server;
  • step C after the set top box 1 downloads the block on the set top box 2, it reports the block information owned by the set top box to the server, and provides a download service for convenient downloading to other set top boxes;
  • step D requesting to download other blocks that have not been downloaded to other set top boxes or upgrade servers
  • step E the steps C and D are sequentially cycled until all the blocks are downloaded;
  • step F after the upgrade data is downloaded, the integrity check is performed on the entire upgrade file to ensure that the file download is normal, and the verification method includes but is not limited to MD5;
  • step G the download service of this file is provided externally;
  • step H after a certain period of time, the external service is stopped, and the download is completed.
  • a software upgrade method for downloading block data according to a random order of a set top box is provided.
  • the set top box adopts a method of randomly downloading and downloading blocks, and each time a block is downloaded, the block information owned by the set is reported to the server, and The corresponding download service is provided externally, and the implementation steps are as follows:
  • the set top box requests the upgrade server to download the image file, and the server returns the set top box information of the upgrade file currently being downloaded, and the information includes at least the IP address of the set top box, the port, and all the files that have been downloaded;
  • the set-top box calculates, according to the block data distribution information, that the current set-top box has not been downloaded, and has the least number of block data in the entire network, and connects the set-top box that owns the block data to download, if the block is in all the set-top boxes. If the Chinese version does not exist, download it from the upgrade server;
  • the set-top box After the set-top box downloads the block on the set-top box, it reports to the server the block information it has, and provides the download service to facilitate the download of other set-top boxes; at the same time, the server returns the latest block data distribution information in the network, and the set-top box downloads other blocks;
  • the integrity check is performed on the entire upgrade file to ensure that the file download is normal.
  • the verification method includes but is not limited to the MD5 checksum.
  • the method according to the embodiment can be implemented by means of software plus a general hardware platform, and of course, can also be hard. Pieces.
  • the technical solution of the present disclosure can be embodied in the form of a software product stored in a storage medium (such as Read-Only Memory (ROM), random access memory (Random). Access Memory (RAM), disk, and optical disk include one or more instructions for causing a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to perform the method described in the embodiments of the present disclosure.
  • ROM Read-Only Memory
  • RAM random access memory
  • disk and optical disk
  • a terminal device which may be a mobile phone, a computer, a server, or a network device, etc.
  • a software upgrade apparatus is further provided, which is used to implement the foregoing embodiment and the optional implementation manners, and is not described herein again.
  • the term “module” may implement software, hardware, or a combination of both software and hardware for a predetermined function.
  • FIG. 5 is a structural block diagram of a software upgrading apparatus according to an embodiment of the present invention. As shown in FIG. 5, the apparatus includes the following modules: a sending module 62, a first obtaining module 64, and a second acquiring module 66.
  • the sending module 62 is arranged to send a software upgrade request to the upgrade server of the set top box.
  • the first obtaining module 64 is connected to the sending module 62, and is configured to obtain the response information corresponding to the software upgrade request returned by the upgrade server, where the response information may indicate whether there is a first terminal that has obtained the upgrade data.
  • the response information is address information of the first terminal.
  • the second obtaining module 66 is connected to the first obtaining module 64, and is configured to send a request for acquiring the upgrade data to the first terminal according to the address information, and obtain the upgrade data, according to the obtained Upgrade data for software upgrades.
  • the sending module 62 sends a software upgrade request to the upgrade server of the set top box by using the integrated function of the module, and the first obtaining module 64 obtains the response information corresponding to the software upgrade request returned by the upgrade server, where the response information carries Acquiring the address information of the first terminal of the upgrade data, the second obtaining module 66 sends a request for acquiring the upgrade data to the first terminal according to the address information, and acquiring the upgrade data, according to the obtained Upgrade data for software upgrades.
  • the above technical solution reduces the problem that the user experience of the set-top box system software upgrade is long and the user experience is poor, and the operation and maintenance of the operator is difficult.
  • the download can be downloaded more, and the dependence on the performance and bandwidth of the upgrade server can be eliminated. Upgrade the upgrade performance caused by server performance factors and shorten the upgrade time of the set-top box.
  • the second obtaining module 66 includes: an obtaining submodule 662.
  • the obtaining submodule 662 is configured to divide from the plurality of the first terminals according to the specified order according to the address information.
  • the partial upgrade data is not acquired, and the plurality of partial upgrade data acquired from the plurality of first terminals constitute all upgrade data.
  • a software upgrade device is further provided, corresponding to the steps 510-520, as shown in the block diagram of the software upgrade device of the embodiment of the present invention, the device includes the following modules: a receiving module 82 and Return to module 84.
  • the receiving module 82 is configured to receive a software upgrade request sent by the second terminal.
  • the returning module 84 is connected to the receiving module 82, and is configured to return the response information corresponding to the software upgrade request to the second terminal, where the response information carries the address information of the first terminal that has obtained the upgrade data,
  • the second terminal sends a request for the upgrade data to the first terminal according to the address information, acquires the upgrade data, and performs software upgrade according to the obtained upgrade data.
  • the receiving module 82 receives the software upgrade request sent by the second terminal by using the integrated function of the module; the returning module 84 returns the response information corresponding to the software upgrade request to the second terminal, where the response information carries The address information of the first terminal that has obtained the upgrade data, the second terminal sends a request for acquiring the upgrade data to the first terminal according to the address information, and obtains the upgrade data, according to the obtained location. Upgrade data for software upgrades.
  • the above technical solution reduces the problem that the user experience of the set-top box system software upgrade is long and the user experience is poor, and the operation and maintenance of the operator is difficult.
  • the download can be downloaded more, and the dependence on the performance and bandwidth of the upgrade server can be eliminated. Upgrade the upgrade performance caused by server performance factors and shorten the upgrade time of the set-top box.
  • the above modules may be implemented by software or hardware.
  • the above modules may be located in one or more storage media in the form of software modules.
  • the above modules may all be located in the same processor; alternatively, the modules may be located in multiple processors.
  • FIG. 8 is a structural block diagram 2 of a software upgrade system according to an embodiment of the present invention.
  • the system includes: an upgrade server 94, a first terminal 92, and Second terminal 96.
  • the upgrade server 94 is configured to receive the software upgrade request sent by the second terminal 96, and send the response information corresponding to the software upgrade request to the second terminal 96, where the response information carries the acquired upgrade data.
  • the second terminal 96 is configured to send a request for acquiring the upgrade data to the first terminal 92 according to the address information, acquire the upgrade data, and perform software upgrade according to the acquired upgrade data.
  • FIG. 9 is a structural block diagram of a software upgrade system according to an embodiment of the present invention.
  • the system is also shown to include a third terminal 98.
  • the third terminal 98 is configured to provide the partial upgrade data to the second terminal when the number of terminals currently connected to the first terminal 92 acquiring partial upgrade data exceeds a preset threshold.
  • system further includes a fourth terminal, configured to request the second terminal 96 to obtain the upgrade when the second terminal 96 acquires the upgrade data from the first terminal 92. data.
  • a software upgrade method for a download service is started after the set top box downloads the full upgrade data, and the implementation steps are as follows:
  • the set top box 1 requests the upgrade server to download the upgrade data, and the server returns the information of the set top box 2 that currently has all the upgrade data, and the information includes at least the IP and port of the set top box 2;
  • the set top box 1 is connected to the corresponding set top box 2 according to the information, and downloads all the upgrade data in the set top box 2. If the current number of connections of the set top box 2 exceeds a preset threshold, the next set top box 2 can be tried until a set top box 2 capable of providing service is found. If there is no set-top box 2 available for download, you can download the upgrade data from the upgrade server;
  • the set-top box 1 After all the upgrade data is downloaded, the set-top box 1 performs integrity check on the entire file to ensure that the file download is normal.
  • the verification method includes but is not limited to MD5. After the verification is passed, the installation of the upgrade data package is performed, and the feedback to the server has been downloaded. The completed status, while opening the download service;
  • the set top box 1 provides the download service of all the upgrade data to other external set top boxes for downloading;
  • the set top box 1 stops the external download service.
  • a software upgrade method for a set top box to record download information of a set top box from which a partial data block has been downloaded.
  • Each time the set-top box downloads a partial data block it can not report to the server part of the data block information it has, and the information is recorded by the server or set-top box that provides the download. It is assumed that each set-top box can only allow two set-top boxes to download parts from it at the same time.
  • the data is divided so that when the set top box 1 is connected to the set top box 2 to start querying and downloading a partial data block, if the current number of sets of the set top box 2 is less than 2, the set top box 1 can start downloading part of the data block from the set top box 2.
  • set top box 2 If the current number of connections of the set top box 2 is equal to 2, the set top box 2 returns a list of set top boxes containing the partial data blocks that have been downloaded from the set top box 2 or are being downloaded, so that the set top box 1 acquires other set top box information having the partial data block. . Cycle down in turn, set-top box 1 can In order to obtain more and more set-top box information with this part of the data block, there are more and more set-top boxes for downloading services.
  • the implementation steps are as follows:
  • step A the set top box 1 requests the upgrade server to download a partial data block, and the server returns the set top box information from which the partial data block was previously downloaded, including at least the IP address of the set top box, the port, and the part of the data owned by the set top box.
  • step B the set top box 1 is connected to the described set top box 2 in the list according to the information returned by the upgrade server, to query whether the partial data block can be downloaded from the set top box 2, and if the set top box 2 can provide the download service, then Downloading the corresponding partial data block from the set top box 2; if the set top box 2 is currently providing the download service to the set top box of the preset threshold, the download service can no longer be provided to the set top box 1, and the set top box 2 returns a download or download from it.
  • the set-top box list information the set-top box 1 selects the set-top box from the list to download the corresponding partial data block, and if no part of the set-top box provides the partial data block, the download is performed from the upgrade server;
  • step C after the set top box 1 downloads a partial data block, the set top box or the upgrade server that provides the download service records the information and provides the download to the subsequent other set top boxes;
  • step D according to the set top box list information in step B, the set top box 1 then requests to download other partial data blocks that have not yet been downloaded to other set top boxes or upgrade servers;
  • step E steps B, C, and D are sequentially cycled until all partial data blocks are downloaded
  • step F after all the data blocks are downloaded, the set top box 1 performs integrity check on the entire upgrade file to ensure that the file download is normal, wherein the verification method includes but is not limited to MD5;
  • step G the set top box 1 provides a download service for this file externally.
  • the embodiment of the present invention reduces the problem that the user experience of the set-top box system software upgrade is long and the upgrade period is long, and the user experience is poor, and the operation and maintenance of the operator is difficult.
  • the multi-point download can be performed to get rid of the performance and bandwidth of the upgrade server.
  • Dependency reduce the upgrade problem caused by upgrading server performance factors, shorten the upgrade time of the set-top box; download the background, download only small files at a time, the upgrade process will not affect the user's viewing of TV programs, improve user experience .
  • the present disclosure also provides a non-transitory computer readable storage medium storing computer executable instructions arranged to perform the method of any of the embodiments described.
  • the terminal includes:
  • At least one processor 110, one processor 110 in FIG. 10; and a memory (Memory) 111 may further include a communication interface 112 and a bus 113.
  • the processor 110, the communication interface 112, and the memory 111 can complete communication with each other through the bus 113.
  • Communication interface 112 can be used for information transfer.
  • the processor 110 can call the logic instructions in the memory 111 to perform the following methods:
  • logic instructions in the memory 111 can be implemented in the form of a software functional unit and sold or used as a stand-alone product, and can be stored in a computer readable storage medium.
  • the memory 111 is a computer readable storage medium and can be used to store a software program, a computer executable program, a program instruction or a module corresponding to the method in the embodiment of the present disclosure.
  • the processor 110 performs functional applications and data processing by running software programs, instructions or modules stored in the memory 111.
  • the memory 111 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function; the storage data area may store data created according to use of the terminal device, and the like. Further, the memory 111 may include a high speed random access memory, and may also include a nonvolatile memory.
  • the present disclosure further provides a terminal having the same hardware structure as the terminal in FIG. 10, which is different from the terminal in FIG. 10 in that the processor included in the terminal calls a logic instruction in the memory. To perform the following method:
  • the response information corresponding to the software upgrade request where the response information is used to indicate the address information of the first terminal that has obtained the upgrade data
  • the second terminal acquires the location information according to the address information.
  • the upgrade data acquired by the first terminal is obtained, the upgrade data is obtained, and the software upgrade is performed according to the upgrade data.
  • the technical solution of the present disclosure may be embodied in the form of a software product, and the computer software product is stored Stored in a storage medium, including one or more instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in the embodiments of the present disclosure.
  • a computer device which may be a personal computer, server, or network device, etc.
  • the foregoing storage medium may be a non-transitory storage medium, including: a U disk, a mobile hard disk, a ROM, a RAM, a magnetic disk, or an optical disk, and the like, and may be a temporary storage medium.
  • modules or steps of the present disclosure may be implemented in a general-purpose computing device, which may be centralized on a single computing device or distributed over a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device for execution by the computing device and, in some cases, may be performed in a different order than herein.
  • the steps shown or described are either made separately into a plurality of integrated circuit modules, or a plurality of modules or steps are fabricated as a single integrated circuit module.
  • the software upgrade method, device and system provided by the disclosure reduce the problem that the user experience of the set-top box system software upgrade is long and the user experience is poor, and the operation and maintenance of the operator is difficult.
  • the upgrade process can be quickly completed on the set-top box terminal.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本公开提供了一种软件升级方法、装置及系统,所述方法包括:向机顶盒的升级服务器发送软件升级请求;获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息;以及根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求;以及获取所述升级数据,根据获取到的所述升级数据进行软件升级。

Description

软件升级方法、装置及系统 技术领域
本公开涉及通信领域,例如,涉及一种软件升级方法、装置及系统。
背景技术
随着移动互联网的迅猛发展和通过互联网向用户提供应用服务(Over The Top,OTT)和交互式网络电视(Internet Protocol Television,IPTV)机顶盒的大规模面世,越来越多的家庭和个人使用网络机顶盒收看电视节目,网络机顶盒在市场上占用率的增加,也给机顶盒的维护带来更多的压力和挑战,主流的软件升级方式都是客户机和服务器(Client/Server,C/S)架构的,机顶盒终端开机后向服务器查询是否有版本更新,发现有更新,就从升级服务器下载新版本,相关技术中软件升级系统中,一个服务器同时为多个机顶盒提供镜像下载服务。另外由于用户使用机顶盒的时间段都比较集中,所以容易出现大量机顶盒同时向服务器请求升级的情况,占用大量带宽,影响其它业务,对用户体验和运营商运维都带来一定程度的困扰。综上所述,机顶盒软件升级过程中存在以下问题:
网络机顶盒基本上都是安卓系统,系统升级包都比较大,一般都有150多兆,下载过程中长时间占用用户的带宽,给用户收看电视节目带来影响;以及
单一升级服务器面对众多的机顶盒客户端,由于中央处理器(Central Processing Unit,CPU)的处理能力,内存大小,网络带宽等限制,可同时给机顶盒提供服务的数量非常有限,再加上机顶盒的使用场景,都是在较集中的时间段,导致所有机顶盒都完成软件升级需要的时间比较久,从而导致升级周期长。
针对在相关技术中,机顶盒软件升级占用用户带宽时间长和升级周期长的问题,尚未提出有效的解决方案。
发明内容
本公开提供了一种软件升级方法、装置及系统,可以减少机顶盒软件升级占用用户带宽的时间和升级周期。
本公开提供了一种软件升级方法,包括:向机顶盒的升级服务器发送软件升级请求;获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息;以及根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求;以及,获取所述升级数据,根据获取到的升级数据进行软件升级。
可选的,获取所述升级数据,包括:根据所述地址信息按照指定排序从多个所述第一终端分别获取部分升级数据,其中,从所述多个第一终端获取的多个部分升级数据组成全部升级数据。
可选的,向所述第一终端发送用于获取所述升级数据的请求之后,所述方法还包括:当前连接到所述第一终端获取所述部分升级数据的终端的数量超过预设阈值时,接收所述第一终端反馈的机顶盒列表信息,其中,该机顶盒列表信息包括:一个或多个第三终端的地址信息,所述第三终端已从所述第一终端获取所述部分升级数据;根据所述第三终端的地址信息从所述第三终端获取所述部分升级数据。
可选的,所述指定排序包括:随机排序或顺序排序。
本公开还提供了一种软件升级方法,包括:接收第二终端发送的软件升级请求;以及向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
本公开还提供了一种软件升级装置,包括:发送模块,设置为向机顶盒的升级服务器发送软件升级请求;第一获取模块,设置为获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息;以及第二获取模块,设置为根据所述地址信息获取向所述第一终端发送用于获取的所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
可选的,所述第二获取模块,包括:获取子模块,设置为根据所述地址信息按照指定排序从多个所述第一终端分别获取部分升级数据,其中,从所述多个第一终端获取的多个部分升级数据组成全部升级数据。
本公开还提供了一种软件升级装置,包括:接收模块,设置为接收第二终 端发送的软件升级请求;以及返回模块,设置为向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息获取向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
本公开还提供了一种软件升级系统,包括:升级服务器,第一终端以及第二终端,其中,所述升级服务器,设置为接收第二终端发送的软件升级请求,并向所述第二终端发送与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息;以及所述第二终端,设置为根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
可选的,所述系统还包括:第三终端,所述第三终端设置为在当前连接到所述第一终端获取部分升级数据的终端的数量超过预设阈值时,向所述第二终端提供所述部分升级数据。
本公开还提供了一种非暂态计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行所述的方法。
本公开还提供了一种终端,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行以下方法:
向机顶盒的升级服务器发送软件升级请求;
获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息;
根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求;以及
获取所述升级数据,根据获取到的所述升级数据进行软件升级。
本公开还提供了一种终端,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行以下方法:
接收第二终端发送的软件升级请求;以及
向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息向所述第一终端发送用于获取的所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
通过本公开,向机顶盒的升级服务器发送软件升级请求;获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息携带有已获取升级数据的第一终端的地址信息;根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。采用上述技术方案,减少了机顶盒系统软件升级占用带宽时间长和升级周期长导致的用户体验差和运营商运维困难的问题,可以在机顶盒终端上快速完成升级过程。
附图说明
此处所说明的附图用来提供对本公开的理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
图1是本发明实施例的软件升级方法的流程图一;
图2是本发明实施例的软件升级系统的结构框图一;
图3是本发明实施例的软件升级方法的流程图二;
图4是本发明实施例的软件升级方法的流程图三;
图5是本发明实施例的软件升级装置第二获取模块66的结构框图;
图6是本发明实施例的软件升级装置的结构框图一;
图7是本发明实施例的软件升级装置的结构框图二;
图8是本发明实施例的软件升级系统的结构框图二;
图9是本发明实施例的软件升级系统的结构框图三;以及
图10是本发明实施例的终端的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本公开。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本公开的说明书和权利要求书及所述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在本实施例中提供了软件升级方法,图1是本发明实施例的软件升级方法的流程图一。
在步骤210中,向机顶盒的升级服务器发送软件升级请求。
在步骤220中,获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息。
在步骤230中,根据所述地址信息向所述第一终端发送用于获取的所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
通过所述步骤,当软件新版本升级时,向机顶盒的升级服务器发送软件升级请求;获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息;根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。采用上述技术方案,减少了机顶盒系统软件升级占用带宽时间长和升级周期长导致的用户体验差和运营商运维困难的问题,可以多点下载,摆脱对升级服务器性能和带宽的依赖,减少由于升级服务器性能因素带来的升级问题,缩短机顶盒的升级时间。
在一个可选的实施例中,获取所述升级数据,包括:根据所述地址信息按照指定排序从多个所述第一终端分别获取部分升级数据,其中,从所述多个第一终端获取的多个部分升级数据组成全部升级数据。
在一个可选的实施例中,向所述第一终端发送用于获取所述升级数据的请 求之后,所述方法还包括:当前连接到所述第一终端获取所述部分升级数据的终端的数量超过预设阈值时,接收所述第一终端反馈的机顶盒列表信息,其中,该机顶盒列表信息包括:从所述第一终端获取所述部分升级数据的一个或多个第三终端的地址信息;根据所述第三终端的地址信息从所述第三终端获取所述部分升级数据。该指定排序可以包括:随机排序或顺序排序。当指定排序为随机排序时,可以优先获取所述机顶盒列表信息中所述部分升级数据已获取量最少的该部分升级数据。
基于上述实施例所提供的技术方案,以下结合一示例对上述技术方案进行说明,图2是本发明实施例的软件升级系统的结构框图一,下面结合图2来详细描述软件升级过程。机顶盒升级镜像下载可以是在网络中部署一台或者多台升级服务器,所有的终端机顶盒(即本实施例中的第一终端、第二终端或者第三终端)都是围绕着服务器设置的。当数据信息量大且下载用户数目剧增时就会导致终端机顶盒下载速度缓慢甚至服务器崩溃,在本实施例中,网络中的机顶盒可以扮演升级服务器的角色,多个机顶盒之间是平等的关系,如图2所示,每个机顶盒既可以从其它机顶盒获取服务,也要向其它机顶盒提供服务,是一种新兴的资源共享技术,可以使机顶盒连接到其它机顶盒进行文件下载,摆脱了单一升级服务器的限制。即网络中部署的升级服务器不再需要全职提供下载服务了,最原始的升级文件是放在升级服务器上,当机顶盒来请求升级文件时,服务器可以记录每个机顶盒的下载情况,后续其它机顶盒需要下载该升级文件时,服务器可以向请求升级文件的机顶盒提供其它拥有该镜像的机顶盒网络互连协议(Internet Protocol,IP)地址和端口,请求升级文件的机顶盒可以与其它机顶盒通讯并下载文件。也就是,服务器发送一次升级文件就可能不用再次发送了,因为其他机顶盒都可以从拥有该文件的机顶盒中获得。实施例中机顶盒第一终端、第二终端和第三终端随着每个阶段的变化都可以互相的转变角色。例如,当机顶盒终端没有软件升级数据而向服务器发出请求时,机顶盒终端为第二终端;当第二终端从别的机顶盒终端获取软件升级数据并为其他机顶盒终端提供升级数据下载服务时,机顶盒终端为第一终端;以及当别的机顶盒终端由于向其下载软件升级数据的机顶盒终端达到预设的一个阈值时,该机顶盒终端就会将已获取软件升级数据的第一终端地址信息给需要下载的机顶盒供其下载,此时第一终端就成为了第三终端。另外为了使得下载镜像的过程不对用户观看电视带来影响,可以采用无界面,后台限速下载的机制。下载过程中可以 不弹出任何提示,通过每下载一个小分块数据就休眠一段时间来平滑控制下载的带宽,让用户对下载镜像的过程无感知。
在本实施例中提供了一种软件升级方法,图3是本发明实施例的软件升级方法的流程图二,下面结合图3来详细描述软件升级过程。为了方便说明,把参与一个特定文件下载的所有机顶盒的集合称为一个会话。在一个会话中,本实施例中升级数据可以为部分升级数据,且部分升级数据为等长度的文件块,块长度可以根据情况确定,比如32KB。当一个机顶盒开始加入一个会话时,它没有文件块。但是随着时间的推移,它将累积到越来越多的文件块。当它下载文件块时,也可以为其他机顶盒上传它已经下载好的文件块,这样只要加入会话的机顶盒越多,下载速度也就越快。机顶盒一旦获得了整个文件,可以暂停一段时间,为其它机顶盒上传文件块。
图3为机顶盒系统中发现版本需要更新时,软件升级的步骤。
在步骤410中,机顶盒1向升级服务器请求下载文件。
在步骤420中,服务器把已经下载了全部升级数据的机顶盒信息和已经下载完部分升级数据块的机顶盒信息(至少包括IP地址和端口号)返回给当前请求的机顶盒1。
在步骤430中,机顶盒1解析服务器返回的信息获取可下载列表。
在步骤440中,当分块数据A在机顶盒系统中还没有被哪个机顶盒所获取,机顶盒1则要向升级服务器处下载分块数据A。
在步骤450中,连接列表中的机顶盒2下载分块数据C。
在步骤460中,机顶盒1向升级服务器共享已经下载好的分块。
在步骤470中,机顶盒1同时给机顶盒3提供服务供其下载分块A。
在步骤480中,机顶盒2向机顶盒3请求下载机顶盒3已获取的分块数据。
在步骤490中,机顶盒1从机顶盒3下载分块数据B。
在步骤4100中,机顶盒1所有分块数据下载完成,执行完整性校验,确保文件下载成功,其中,校验方法包括但不限于信息-摘要算法第五版(Message-Digest Algorithm 5,MD5)校验。
在步骤4110中,机顶盒1给其他机顶盒提供数据下载服务。
在步骤4120中,当机顶盒系统中所有机顶盒升级完毕,机顶盒1宣告停止下载服务。
在本实施例中提供了一种软件升级方法,图4是本发明实施例的软件升级方法的流程图三。
在步骤510中,当软件版本更新时,接收第二终端发送的软件升级请求。
在步骤520中,向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息获取向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
通过所述步骤,当软件版本更新时,接收第二终端发送的软件升级请求;以及向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息向获取所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取得到的所述升级数据进行软件升级。通过上述技术方案,减少了机顶盒系统软件升级占用带宽时间长和升级周期长导致的用户体验差和运营商运维困难的问题,可以在机顶盒终端上快速完成升级过程。
在本发明实施中,针对下载分块数据的排序,本发明实施例提供了两种技术方案:顺序排序和随机排序。
在本示例中还提供了一种机顶盒按照顺序排序下载分块数据的软件升级方法,在一个文件的下载会话里,所有的机顶盒在逻辑上形成一个互相连接的状态。机顶盒与升级服务器之间,机顶盒与机顶盒都是相互连接,相互之间都提供下载和上传服务。
机顶盒按分块数据顺序排序下载时,每下载完一个分块,就向服务器报告其拥有的分块信息,并对外提供对应的下载服务,实施步骤如下:
在步骤A中,机顶盒1向升级服务器请求下载镜像文件,服务器返回当前正在下载升级文件的机顶盒信息,这个信息至少包括机顶盒的IP,端口,以及所拥有的文件分块;
在步骤B中,机顶盒1根据这些信息,按照分块的顺序查找提供这个分块数据的机顶盒2,并连接到机顶盒2中下载对应的分块数据,如果还没有任何机 顶盒2提供了这个分块,则就从升级服务器上下载;
在步骤C中,机顶盒1下载完一个机顶盒2上的分块以后,向服务器报告其拥有的分块信息,同时提供下载服务,方便提供给其它机顶盒下载;
在步骤D中,向其它机顶盒或者升级服务器请求下载其它还未下载的分块;
在步骤E中,依次循环C、D步骤,直到所有分块都下载完;
在步骤F中,升级数据下载完,对整个升级文件执行完整性校验,确保文件下载正常,其中,校验方法包括但不限于MD5;
在步骤G中,对外提供这个文件的下载服务;以及
在步骤H中,超过一定的时间以后,停止对外的服务,本次下载完成。
在本示例中提供了一种机顶盒按照随机排序下载分块数据的软件升级方法,机顶盒采用随机排序下载分块的方法,每下载完一个分块,就向服务器报告其拥有的分块信息,并对外提供对应的下载服务,实施步骤如下:
机顶盒向升级服务器请求下载镜像文件,服务器返回当前正在下载的升级文件的机顶盒信息,这个信息至少包括机顶盒的IP,端口,以及所有已经下载好的文件分块;
机顶盒根据分块数据分布信息,计算出当前机顶盒还未下载,而且在整个网络中的拥有数是最少的分块数据,连接拥有这个分块数据的机顶盒进行下载,如果这个分块在所有的机顶盒中都还不存在,就从升级服务器上下载;
机顶盒下载完一个机顶盒上的分块以后,向服务器报告其拥有的分块信息,并提供下载服务,方便其它机顶盒下载;同时服务器返回网络中最新的分块数据分布信息,机顶盒下载其它分块;
依次循环上述步骤,直到所有分块都下载完;
升级数据下载完,对整个升级文件执行完整性校验,确保文件下载正常,其中,校验方法包括但不限于MD5校验;
对外提供升级文件的下载服务;以及
超过一定的时间以后,停止对外的服务,本次下载完成。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据所述实施例的方法可借助软件加通用硬件平台的方式来实现,当然也可以通过硬 件。基于这样的理解,本公开的技术方案本质上可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟、光盘)中,包括一个或多个指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本公开实施例所述的方法。
在本实施例中还提供了一种软件升级装置,对应所述步骤210-230,该装置用于实现上述实施例及可选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件,硬件,或软件和硬件两者的组合。
图5是本发明实施例的软件升级装置的结构框图,如图5所示,该装置包括如下模块:发送模块62、第一获取模块64以及第二获取模块66。
发送模块62设置为向机顶盒的升级服务器发送软件升级请求。
第一获取模块64,与发送模块62连接,设置为获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,所述响应信息可以指示是否存在已获取升级数据的第一终端,当存在已获取升级数据的第一终端时,该响应信息为所述第一终端的地址信息。
第二获取模块66,与第一获取模块64连接,设置为根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
通过所述模块的综合作用,发送模块62向机顶盒的升级服务器发送软件升级请求,第一获取模块64获取所述升级服务器返回的与所述软件升级请求对应的响应信息,响应信息中携带有已获取升级数据的第一终端的地址信息,第二获取模块66根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。采用上述技术方案,减少了机顶盒系统软件升级占用带宽时间长和升级周期长导致的用户体验差和运营商运维困难的问题,可以多点下载,摆脱对升级服务器性能和带宽的依赖,减少由于升级服务器性能因素带来的升级问题,缩短机顶盒的升级时间。
在一个可选的软件升级装置中,第二获取模块66,包括:获取子模块662。获取子模块662设置为根据所述地址信息按照指定排序从多个所述第一终端分 别获取部分升级数据,其中,从所述多个第一终端获取的多个部分升级数据组成全部升级数据。
在本实施例中还提供了一种软件升级装置,对应所述步骤510-520,如图7本发明实施例的软件升级装置的结构框图二所示,该装置包括如下模块:接收模块82和返回模块84。
接收模块82设置为接收第二终端发送的软件升级请求。
返回模块84,与接收模块82连接,设置为向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息向所述第一终端发送用于获取的升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
通过所述模块的综合作用,接收模块82接收第二终端发送的软件升级请求;返回模块84向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。采用上述技术方案,减少了机顶盒系统软件升级占用带宽时间长和升级周期长导致的用户体验差和运营商运维困难的问题,可以多点下载,摆脱对升级服务器性能和带宽的依赖,减少由于升级服务器性能因素带来的升级问题,缩短机顶盒的升级时间。
上述模块是可以通过软件或硬件来实现的,对于软件实现方式,上述模块可以以软件模块的形式位于一个或多个存储介质中。对于硬件实现方式,上述模块可以均位于同一处理器中;或者,所述模块可以分别位于多个处理器中。
在本实施例中,还提供了一种软件升级系统,图8是本发明实施例的软件升级系统的结构框图二,如图8所示,该系统包括:升级服务器94,第一终端92以及第二终端96。其中,升级服务器94,设置为接收第二终端96发送的软件升级请求,并向第二终端96发送与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端92的地址信息。第二终端96,设置为根据所述地址信息向第一终端92发送用于获取所述升级数据的请求,获取所述升级数据,根据获取的所述升级数据进行软件升级。
在一个可选示例中,如图9本发明实施例的软件升级系统的结构框图三所 示所述系统还包括第三终端98。该第三终端98设置为在当前连接到第一终端92获取部分升级数据的终端的数量超过预设阈值时,向所述第二终端提供所述部分升级数据。
在一个可选示例中,所述系统还包括第四终端,该第四终端,设置为在第二终端96从第一终端92获取所述升级数据时,向第二终端96请求获取所述升级数据。
在本发明可选实施例中提供了一种机顶盒下载完全部升级数据后才开始提供下载服务的软件升级方法,实施步骤如下:
机顶盒1向升级服务器请求下载升级数据,服务器返回当前已经拥有这个全部升级数据的机顶盒2的信息,这个信息至少包括机顶盒2的IP,端口;
机顶盒1根据这些信息,连接到对应的机顶盒2,下载机顶盒2中的全部升级数据,如果机顶盒2当前的连接数超过预设阈值,可以尝试下一个机顶盒2,直到找到一个可以提供服务的机顶盒2,如果没有可供下载的机顶盒2,可以从升级服务器上下载升级数据;
全部升级数据下载完,机顶盒1对整个文件执行完整性校验,确保文件下载正常,其中,校验方法包括但不限于MD5,校验通过后执行升级数据包的安装,并向服务器反馈已经下载完成的状态,同时开启下载服务;
机顶盒1对外提供这个全部升级数据的下载服务,供其它机顶盒下载;以及
超过一定的时间以后,机顶盒1停止对外的下载服务。
在本发明可选实施例中还提供了一种机顶盒记录从其下载过部分数据分块的机顶盒下载信息的软件升级方法。机顶盒每下载完一个部分数据分块,可以不向服务器报告其拥有的部分数据分块信息,由提供下载的服务器或者机顶盒记录这个信息,假设每个机顶盒只能允许同时2个机顶盒从它下载部分数据分块,这样当机顶盒1连接到机顶盒2开始查询下载一个部分数据分块时,如果机顶盒2当前连接数小于2,那么机顶盒1就可以从机顶盒2开始下载部分数据分块。如果机顶盒2当前连接数等于2,机顶盒2返回一个包含了之前已经从机顶盒2下载过或者正在下载这个部分数据分块的机顶盒列表,这样机顶盒1就获取到其它拥有这个部分数据分块的机顶盒信息。依次循环下去,机顶盒1可 以获取到越来越多拥有这个部分数据分块的机顶盒信息,可为其提供下载服务的机顶盒也越来越多。实施步骤如下:
在步骤A中,机顶盒1向升级服务器请求下载部分数据分块,服务器返回之前从它这里下载过部分数据分块的机顶盒信息,这个信息至少包括机顶盒的IP,端口,以及所拥有的部分数据分块情况;
在步骤B中,机顶盒1根据升级服务器返回的信息,连接到列表中的所描述的机顶盒2,查询是否可以从该机顶盒2中下载该部分数据分块,如果机顶盒2可以提供下载服务,那就从机顶盒2中下载对应的部分数据分块;如果机顶盒2当前正在向预设阈值的机顶盒提供的下载服务,无法再向机顶盒1提供下载服务,机顶盒2就返回一个从它这里下载过或者正在下载的机顶盒列表信息,机顶盒1再从这个列表里选择机顶盒去下载对应的部分数据分块,如果最终没有任何机顶盒提供了这个部分数据分块,则就从升级服务器上下载;
在步骤C中,机顶盒1下载完一个部分数据分块以后,提供下载服务的机顶盒或者升级服务器就记录这个信息,提供给后续其它机顶盒下载;
在步骤D中,根据步骤B中的机顶盒列表信息,机顶盒1接着向其它机顶盒或者升级服务器请求下载其它还未下载的部分数据分块;
在步骤E中,依次循环步骤B、C、D,直到所有部分数据分块都下载完;
在步骤F中,全部数据分块下载完,机顶盒1对整个升级文件执行完整性校验,确保文件下载正常,其中,校验方法包括但不限于MD5;以及
在步骤G中,机顶盒1对外提供这个文件的下载服务。
综上所述,本发明实施例减少了机顶盒系统软件升级占用带宽时间长和升级周期长导致的用户体验差和运营商运维困难的问题,可以多点下载,摆脱对升级服务器性能和带宽的依赖,减少由于升级服务器性能因素带来的升级问题,缩短机顶盒的升级时间;后台下载,每次只下载小块的文件分块,升级过程不会对用户收看电视节目带来影响,提升用户体验。
本公开还提供了一种非暂态计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行所述任一实施例中的方法。
本公开还提供了一种终端的硬件结构示意图。参见图10,该终端包括:
至少一个处理器(Processor)110,图10中以一个处理器110为例;和存储器 (Memory)111,还可以包括通信接口(Communications Interface)112和总线113。其中,处理器110、通信接口112、存储器111可以通过总线113完成相互间的通信。通信接口112可以用于信息传输。处理器110可以调用存储器111中的逻辑指令,以执行下述方法:
向机顶盒的升级服务器发送软件升级请求;
获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息用于指示已获取升级数据的第一终端的地址信息;以及
根据所述地址信息获取所述第一终端已获取的升级数据,获取所述升级数据,根据所述升级数据进行软件升级。
此外,所述的存储器111中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器111作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器110通过运行存储在存储器111中的软件程序、指令或模块,从而执行功能应用以及数据处理。
存储器111可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器111可以包括高速随机存取存储器,还可以包括非易失性存储器。
本公开还提供一种终端,该终端与图10中的终端具有相同的硬件结构,与图10中的终端的不同点在于:本实施例中终端所包含的处理器调用存储器中的逻辑指令,以执行下述方法:
接收第二终端发送的软件升级请求;以及
向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息用于指示已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息获取所述第一终端已获取的升级数据,获取所述升级数据,根据所述升级数据进行软件升级。
本公开的技术方案可以以软件产品的形式体现出来,该计算机软件产品存 储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
显然,本领域的技术人员应该明白,所述的本公开的模块或步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在一些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成多个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。
工业实用性
本公开提供的软件升级方法、装置及系统,减少了机顶盒系统软件升级占用带宽时间长和升级周期长导致的用户体验差和运营商运维困难的问题,可以在机顶盒终端上快速完成升级过程。

Claims (11)

  1. 一种软件升级方法,包括:
    向机顶盒的升级服务器发送软件升级请求;
    获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息;
    根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求;以及
    获取所述升级数据,根据获取到的所述升级数据进行软件升级。
  2. 根据权利要求1所述的方法,其中,获取所述升级数据,包括:根据所述地址信息按照指定排序从多个所述第一终端分别获取部分升级数据,其中,从所述多个第一终端获取的多个部分升级数据组成全部升级数据。
  3. 根据权利要求2所述的方法,向所述第一终端发送用于获取所述升级数据的请求之后,所述方法还包括:
    当前连接到所述第一终端获取所述部分升级数据的终端的数量超过预设阈值时,接收所述第一终端反馈的机顶盒列表信息,其中,该机顶盒列表信息包括一个或多个第三终端的地址信息,所述第三终端已从所述第一终端获取所述部分升级数据;
    根据所述第三终端的地址信息从所述第三终端获取所述部分升级数据。
  4. 根据权利要求2或3所述的方法,其中,所述指定排序包括:随机排序或顺序排序。
  5. 一种软件升级方法,包括:
    接收第二终端发送的软件升级请求;以及
    向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述 地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
  6. 一种软件升级装置,包括:
    发送模块,设置为向机顶盒的升级服务器发送软件升级请求;
    第一获取模块,设置为获取所述升级服务器返回的与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息;以及
    第二获取模块,设置为根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
  7. 根据权利要求6所述的装置,其中,所述第二获取模块,包括:
    获取子模块,设置为根据所述地址信息按照指定排序从多个所述第一终端分别获取部分升级数据,其中,从所述多个第一终端获取的多个部分升级数据组成全部升级数据。
  8. 一种软件升级装置,包括:
    接收模块,设置为接收第二终端发送的软件升级请求;以及
    返回模块,设置为向所述第二终端返回与所述软件升级请求对应的响应信息,其中,该响应信息中携带有已获取升级数据的第一终端的地址信息,所述第二终端根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
  9. 一种软件升级系统,包括:升级服务器,第一终端以及第二终端,其中,
    所述升级服务器,设置为接收第二终端发送的软件升级请求,并向所述第二终端发送与所述软件升级请求对应的响应信息,其中,该响应信息中携带有 已获取升级数据的第一终端的地址信息;以及
    所述第二终端,设置为根据所述地址信息向所述第一终端发送用于获取所述升级数据的请求,获取所述升级数据,根据获取到的所述升级数据进行软件升级。
  10. 根据权利要求9所述的系统,所述系统还包括:第三终端,其中,所述第三终端设置为在当前连接到所述第一终端获取部分升级数据的终端的数量超过预设阈值时,向所述第二终端提供所述部分升级数据。
  11. 一种非暂态计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行权利要求1-5中任一项的方法。
PCT/CN2016/108939 2015-12-07 2016-12-07 软件升级方法、装置及系统 WO2017097210A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510890426.3A CN106850720A (zh) 2015-12-07 2015-12-07 软件升级方法、装置及系统
CN201510890426.3 2015-12-07

Publications (1)

Publication Number Publication Date
WO2017097210A1 true WO2017097210A1 (zh) 2017-06-15

Family

ID=59013732

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/108939 WO2017097210A1 (zh) 2015-12-07 2016-12-07 软件升级方法、装置及系统

Country Status (2)

Country Link
CN (1) CN106850720A (zh)
WO (1) WO2017097210A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113067730A (zh) * 2021-03-18 2021-07-02 上海挚想科技有限公司 一种物联网终端设备的升级方法、系统及介质
CN113377396A (zh) * 2021-05-21 2021-09-10 珠海格力电器股份有限公司 一种升级方法、装置、电子设备及存储介质
CN113660117A (zh) * 2021-08-03 2021-11-16 西安万像电子科技有限公司 加快终端设备内容投放的方法及装置、内容投放系统
CN114449554A (zh) * 2022-01-28 2022-05-06 深圳Tcl新技术有限公司 一种设备升级方法、装置、设备及存储介质
CN113660117B (zh) * 2021-08-03 2024-06-11 西安万像电子科技有限公司 加快终端设备内容投放的方法及装置、内容投放系统

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109218359A (zh) * 2017-07-03 2019-01-15 深圳市中兴微电子技术有限公司 一种物联网设备软件更新的方法及服务器端
CN109547983B (zh) * 2017-08-11 2024-05-28 浙江绍兴苏泊尔生活电器有限公司 烹饪器具及其控制方法和系统、服务器
CN113051544A (zh) * 2019-12-26 2021-06-29 瑞昱半导体股份有限公司 外部设备及其验证更新方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141303A (zh) * 2007-09-24 2008-03-12 华为技术有限公司 一种网络管理系统中的客户端升级方法、服务器、客户端
CN101710934A (zh) * 2009-11-25 2010-05-19 中兴通讯股份有限公司 一种机顶盒版本升级的方法及系统
CN101778097A (zh) * 2009-11-25 2010-07-14 中兴通讯股份有限公司 网络升级方法和系统、实现网络升级的主服务端
CN101795203A (zh) * 2009-02-03 2010-08-04 华为软件技术有限公司 软件升级数据包的下载方法和装置
US20110131413A1 (en) * 2009-11-30 2011-06-02 Electronics And Telecommunications Research Institute Apparatus and method for dynamic update of software-based iptv conditional access system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102387165B (zh) * 2010-08-27 2014-11-05 腾讯科技(深圳)有限公司 软件升级系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141303A (zh) * 2007-09-24 2008-03-12 华为技术有限公司 一种网络管理系统中的客户端升级方法、服务器、客户端
CN101795203A (zh) * 2009-02-03 2010-08-04 华为软件技术有限公司 软件升级数据包的下载方法和装置
CN101710934A (zh) * 2009-11-25 2010-05-19 中兴通讯股份有限公司 一种机顶盒版本升级的方法及系统
CN101778097A (zh) * 2009-11-25 2010-07-14 中兴通讯股份有限公司 网络升级方法和系统、实现网络升级的主服务端
US20110131413A1 (en) * 2009-11-30 2011-06-02 Electronics And Telecommunications Research Institute Apparatus and method for dynamic update of software-based iptv conditional access system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113067730A (zh) * 2021-03-18 2021-07-02 上海挚想科技有限公司 一种物联网终端设备的升级方法、系统及介质
CN113377396A (zh) * 2021-05-21 2021-09-10 珠海格力电器股份有限公司 一种升级方法、装置、电子设备及存储介质
CN113377396B (zh) * 2021-05-21 2022-07-12 珠海格力电器股份有限公司 一种升级方法、装置、电子设备及存储介质
CN113660117A (zh) * 2021-08-03 2021-11-16 西安万像电子科技有限公司 加快终端设备内容投放的方法及装置、内容投放系统
CN113660117B (zh) * 2021-08-03 2024-06-11 西安万像电子科技有限公司 加快终端设备内容投放的方法及装置、内容投放系统
CN114449554A (zh) * 2022-01-28 2022-05-06 深圳Tcl新技术有限公司 一种设备升级方法、装置、设备及存储介质
CN114449554B (zh) * 2022-01-28 2024-01-19 深圳Tcl新技术有限公司 一种设备升级方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN106850720A (zh) 2017-06-13

Similar Documents

Publication Publication Date Title
WO2017097210A1 (zh) 软件升级方法、装置及系统
JP7014887B2 (ja) Pduタイプ設定方法、ueポリシー設定方法、および関連エンティティ
TWI743405B (zh) 語音播報方法、智慧型播報裝置、編碼有電腦程式指令的一個或多個非暫時性電腦儲存媒體以及智慧型播報設備
CA2912740C (en) Method, terminal, server, and system for multiple terminals to share virtual sim card
CN108566290B (zh) 服务配置管理方法、系统、存储介质和服务器
WO2017107542A1 (zh) 视频节目获取方法、设备及系统
WO2019056913A1 (zh) 一种容器登录方法、装置及存储介质
US11126590B2 (en) Data processing method and device
WO2018236567A1 (en) SYSTEMS, METHODS AND APPARATUS FOR DOWNLOADING DOCKER IMAGES
CN110636340B (zh) 视频文件的上传方法、存储设备、终端设备及存储介质
CN110247985B (zh) 一种资源下载方法、装置、电子设备及介质
US11218541B2 (en) Data storage method, storage server, and storage medium and system
WO2015143794A1 (zh) 制作、升级方法及服务器、终端、升级系统和存储介质
WO2015165395A1 (en) Video playback method and apparatus
WO2011085625A1 (zh) 一种软件安装包下载方法、系统及客户端
WO2014094468A1 (zh) 实现浏览器数据同步的系统、方法及浏览器客户端
CN109561054B (zh) 一种数据传输方法、控制器及接入设备
WO2012163176A1 (zh) 配置机顶盒的方法、装置及系统
CN106713004B (zh) 一种路由器适配方法及系统
US20160246517A1 (en) Methods for policy-based data tiering using a cloud architecture and devices thereof
WO2020001488A1 (zh) 文件下载方法及装置、客户端和计算机可读存储介质
CN112804289B (zh) 一种资源同步方法、装置、设备及存储介质
CN103685496A (zh) 一种文件数据的传输方法和设备
WO2018000997A1 (zh) 升级服务器、机顶盒、机顶盒升级文件下发方法及系统
WO2014101461A1 (zh) 图片下载方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16872401

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16872401

Country of ref document: EP

Kind code of ref document: A1