CN1300719C - Comptuer software updating method - Google Patents

Comptuer software updating method Download PDF

Info

Publication number
CN1300719C
CN1300719C CN 03153945 CN03153945A CN1300719C CN 1300719 C CN1300719 C CN 1300719C CN 03153945 CN03153945 CN 03153945 CN 03153945 A CN03153945 A CN 03153945A CN 1300719 C CN1300719 C CN 1300719C
Authority
CN
Grant status
Grant
Patent type
Prior art keywords
data
upgrade
software
server
client
Prior art date
Application number
CN 03153945
Other languages
Chinese (zh)
Other versions
CN1584865A (en )
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
Grant date

Links

Abstract

本发明公开一种计算机软件升级的方法,用于升级安装在局域网中多台计算机上的软件,该方法包括以下步骤:a)服务端从升级服务器下载软件升级所需数据并升级本服务端上所述软件;b)所述服务端向局域网广播一个通知信息以指示局域网中客户端有最新的软件升级数据;c)客户端获取该通知信息,判断需要升级后向所述服务端回送响应信息;d)所述服务端与客户端组成多播组,由所述服务端向客户端多播软件升级数据;e)所述客户端获取所述软件升级数据并升级所述软件。 The present invention discloses a method of computer software upgrade, the upgrade installation for multiple computers on the LAN software, the method comprising the steps of: a) the server upgrade data and upgrade required on this server from the server to download the software upgrade said software; b) a notification to the server LAN local area network broadcast information to indicate the latest client software upgrade data; c) client obtains the notification information, determines the need to upgrade to the service response information sent back end ; D) the composition and client service multicast group, the multicast client data from said software upgrade server; E) said client acquiring said software upgrade data and upgrade the software. 由于本发明通过多播的方式在局域网中传送软件升级数据,传送速率快,升级效率高。 Since the present invention transmits data in the LAN software update by way of multicasting, the transmission rate, high efficiency upgrades.

Description

计算机软件升级的方法 Computer software upgrade method

技术领域 FIELD

本发明涉及计算机软件升级的方法,尤指一种局域网中计算机软件升级的方法。 The present invention relates to a computer software upgrade, particularly to a method for local area network computer software upgrades.

背景技术 Background technique

计算机软件是结合计算机硬件执行一定功能的程序。 Computer software programs combined with computer hardware to perform certain functions. 对于计算机软件提供商来说,需要不断更新升级计算机软件以提供给用户更多的功能。 For computer software providers, you need to constantly update computer software to provide more functionality to the user. 而随着互联网的发展,计算机软件升级逐渐发展到通过服务器/客户端的方式实现远程升级。 With the development of the Internet, computer software upgrade gradually developed to remotely upgrade server through the client's way /. 所谓服务器/客户端的方式是指计算机软件提供商将最新版本的计算机软件升级数据存放在服务器上,客户端的用户通过互联网采用HTTP(超链接传输协议)或FTP(文件传输协议)的方式直接从服务器上下载所需的升级数据。 The so-called server / client mode refers to computer software provider of the latest version of the computer software upgrade data stored on the server, the client user using HTTP (Hyper link Transfer Protocol) or FTP (File Transfer Protocol) is via the Internet directly from the server the upgrade download the required data.

上述计算机软件升级的方法存在如下的缺点:由于现在很多的计算机都是处于一个局域网内部,如一个公司的网络,统一通过局域网中路由器出口连接上国际互联网,而一套相同的计算机软件安装在一个局域网内的多台计算机上的情况很普遍。 There is the disadvantage of the method computer software upgrade: Now that many computers are in a local area network inside, such as a company's network, unified by a local area network router outlet connections on the Internet, and a set of software installed on the same computer situation on multiple computers within the LAN is widespread. 因此,该局域网中每一份计算机软件都有网上升级的需求,而采用上述的方法升级软件时,所述局域网中的各个需要升级软件的用户仍只能分别与服务器交互以得到最新的软件升级数据,对于多份相同的计算机软件,需重复从升级服务器上下载相同的升级数据。 Therefore, every computer in the LAN software has online upgrade requirements, and upgrade the software using the above method, each user of the local area network only need to upgrade the software still interacting with each server to get the latest software upgrade data, computer software and more for the same parts, the need to download the same data from the upgrade server upgrade. 在升级用户较多时,如多个用户同时连接升级服务器下载数据,这些重复下载的数据会占据网络出口带宽,造成网络的拥塞,增加升级服务器的负担,并使其他正常的网络操作受到影响,如浏览网页、发送电子邮件等等,而且重复下载,升级效率较低,造成网络资源的极大浪费。 When upgrade more users, such as multiple simultaneous users to upgrade the server to download data, duplicate download these data will occupy network bandwidth of exports, resulting in network congestion, increase the burden on the server upgrade, and other normal network operations are affected, such as browse the web, send e-mail and so on, and repeat the download, upgrade the efficiency is low, causing a great waste of network resources.

发明内容 SUMMARY

本发明是为了解决局域网用户在升级同一计算机软件时重复下载,造成网络资源浪费的问题。 The present invention is to solve the LAN users download when upgrading repeat the same computer software, resulting in waste of network resources issues.

为了解决上述问题,本发明提出了一种计算机软件升级的方法,该方法包括以下步骤:a)服务端从升级服务器下载软件升级所需数据并升级本服务端上所述软件;b)所述服务端向子网广播一个通知信息以指示局域网中客户端有最新的软件升级数据;c)客户端获取所述通知信息,判断需要升级后向所述服务端回送响应信息;d)所述服务端与客户端组成多播组,由所述服务端向客户端多播软件升级数据;e)所述客户端获取所述软件升级数据并升级所述软件。 To solve the above problems, the present invention proposes a method of computer software upgrade, the method comprising the steps of: a) the server software upgrade from the upgrade server to download the required data and upgrade software on the end of the present service; b) the a service end notification to the LAN subnet broadcast information to indicate the latest client software upgrade data; c) the client obtains the notification information, determines the need to upgrade the server to send back the response information; D) the service and the client multicast group consisting of, by the server to the client multicast software upgrade data; E) said client acquiring said software upgrade data and upgrade the software.

最好,步骤b)所述通知信息包括软件版本号、多播地址及端口号。 Preferably, step b) said notification information includes software version number, the multicast address and port number.

最好,所述步骤c)还包括判断的步骤:c1)接收该通知信息的客户端获取所述软件版本号,并与本地软件版本号比较;c2)根据比较结果确定是否向所述服务端回送响应信息,若比较结果为本地软件版本号低于所述软件版本号,则回送响应信息,否则,不回送响应信息。 Preferably, said step c) further comprises the step of determining: c1) receiving the notification information acquisition client software version of the number and compared with the local software version number; C2) determining whether the server according to the comparison result echo response messages, and if the result is lower than the local software version number of the software version number, then send back a response, otherwise, do not send a response back to the information.

最好,步骤c)所述响应信息包括有客户端的IP地址。 Preferably, step c) said response information includes a client IP address.

最好,所述步骤d)包括以下步骤: Preferably, said step d) comprises the steps of:

d1)服务端获取响应的客户端的IP地址,并与所述IP地址的客户端组成多播组;d2)采用所述多播地址及端口号,向所述IP地址的客户端多播软件升级数据。 d1) server IP address acquisition response to the client, and the client IP address of the multicast group consisting of; D2) using the multicast address and port number to the IP address of the multicast client software upgrade data.

最好,步骤d)还包括对待多播的软件升级数据进行预处理,所述步骤d2)进一步包括以下步骤:d21)将所有软件升级数据合并到连续的内存块中;d22)将所述内存块中数据分成大小合适的数据块,所述数据块包括一信息头,其中包含用于唯一标识所述数据块的标识信息;d23)发送一个摘要信息包给客户端,所述摘要信息包包含要发送的总数据块数和总数据大小及CRC校验和信息;d24)按顺序逐一发送所述数据块;d25)当数据发送完成,继续发送一个完成数据包,所述完成数据包包含已发送的数据块标识信息及发送的总数据大小信息;d26)检查客户端是否要求重发数据块,若是,获取要重发的数据块标识信息,重新发送所述数据块,否则,结束发送数据流程;所述步骤e)进一步包括以下步骤:e1)接收摘要数据包,并保存其中的摘要信息;e2)接收数据块,并将其放置 Preferably, step d) further comprises treating multicast software upgrade data preprocessing, said step d2) further comprises the steps of: d21) The combined data of all the software upgrade to a continuous block of memory; D22) to said memory block data into the appropriate data block size, the data block including a header containing the identification information for uniquely identifying the data block; D23) transmitting a packet to the client summary information, the digest information packet comprising to the total number of blocks of data and the total data size and CRC checksum information transmitted; D24) transmitting the data blocks one by one sequentially; D25) when the data transmission is complete, continue to send a completion packet, the completion packet contains data block identification information sent and total data size of the information sent; D26) checks whether the client requires retransmission of the data block, and if so, to obtain the retransmitted data block identification information, re-transmitting the data block, otherwise, the data transmission ends process; step e) further comprises the step of: e1) receiving summary data packet, and wherein the digest information stored; E2) received data block, and placed 到分配好的内存块中;e3)接收完成数据包,并根据所述摘要信息及完成数据包信息检查是否有数据块丢失,若检查到有数据块丢失,则将该数据块的标识信息反馈回服务端,要求服务端重发该数据块,直到确认所有的数据块都已接收到,结束数据接收流程,若没有检查到数据块丢失,则直接结束数据接收流程; To the allocated memory block; E3) receiving a completion packet, and whether there are missing data block digest information according to the information checking and completion packet, if the check data block is lost, then the data block identification information feedback back to the server, the server requires retransmission of the data block, until it is confirmed that all data blocks have been received, the data reception process, if there is no check data block is lost, the data receiving process is ended;

e4)以接收到的数据升级本客户端上的所述软件。 e4) the received data to upgrade the software present on the client.

最好,所述步骤d26)还包括预设等待重发请求时间的步骤,若在预设的等待重发请求时间内服务端收到客户端的重发请求信息,则重发所要求的数据块,否则,结束数据发送的流程。 Preferably, said step D26) further comprises the step of waiting a predetermined time retransmission request, if the server receives the data block within the preset waiting time the client retransmission request retransmission request message, the requested retransmission otherwise, the end of the data transmission process.

与现有计算机软件升级的技术相比,本发明有以下的优点:1、同一局域网中只需一个用户从升级服务器上下载软件升级所需的数据,其他用户可通过多播的方式获得所需的软件升级数据。 Compared with the prior art computer software upgrade, the present invention has the following advantages: 1, the same LAN, only one user to download the desired software upgrade data from the upgrade server, other users can obtain the desired manner by multicasting the software upgrade data. 由于只需从升级服务器下载一次软件升级数据,因此,可以避免现有技术同一局域网中用户重复下载软件升级数据的缺点,有利于提高升级效率,避免网络资源的浪费;2、本发明在服务端下载软件升级数据后,数据的传送都在局域网内部进行,数据传输速率快,相比现有技术整个局域网用户升级的速度提高了。 Because only download a software upgrade data from the upgrade server, therefore, be avoided in the prior art repeat the same LAN users download the software shortcomings upgrade data, the upgrade will help improve efficiency and avoid waste of network resources; 2, in the service side of the invention after downloading the upgrade data, the data are transmitted within the LAN, data transfer rate, compared to the prior art the user to upgrade the entire LAN faster.

附图说明 BRIEF DESCRIPTION

图1是本发明计算机软件升级的方法应用环境的组成示意图;图2是图1所示局域网中服务端从升级服务器下载软件升级数据的流程图;图3是本发明计算机软件升级方法中服务端数据处理的流程图;图4是本发明计算机软件升级的方法中对待多播的升级数据进行预处理的流程图;图5是本发明计算机软件升级的方法中服务端通过多播将数据发送给客户端的流程图;图6是本发明计算机软件升级的方法中对软件升级数据预处理后的数据块信息头数据结构示意图; 1 is a schematic process of the present composition invention is a computer software upgrade application environment; FIG. 2 is a flowchart of FIG. 1 shown in the LAN server upgrade data from the server to download the software upgrade; FIG. 3 is a computer software upgrade method of the present invention, the server a flowchart of data processing; FIG. 4 is a method of treatment of the present invention, a computer software upgrade data to upgrade the multicast pretreated flowchart; FIG. 5 is a computer software of the present invention is upgraded by multicast server sends the data to a flowchart of a client; FIG. 6 is a computer software of the present invention for upgrading a schematic block header data structure of the software upgrade data preprocessing;

图7是本发明计算机软件升级的方法中客户端数据处理的流程图。 FIG 7 is a flowchart of a method according to the present invention, a computer software upgrade client data processing.

具体实施方式 detailed description

图1是本发明计算机软件升级的方法应用环境的组成示意图。 1 is a schematic process of the present composition invention is a computer software upgrade application environment.

本发明可广泛应用在计算机软件升级的场合。 The present invention can be widely used in the case of computer software upgrades. 参看图1所示,网络升级服务器11为互联网上保存计算机软件升级数据的服务器,用户可通过互联网从该服务器下载软件升级所需的数据;所述局域网12是由若干台计算机组成的小型网络,该局域网中全部计算机或部分计算机安装有需要升级的软件。 Referring to FIG., The computer network upgrade server 11 software upgrading data stored on the Internet server 1, the user may be required to upgrade the software to download data from the server through the Internet; the local area network 12 is a small network consisting of several computers, all computers in the LAN or partially installed on your computer there is a need to upgrade the software. 本实施例中,所述需要升级的软件为杀毒软件,并假设该局域网中有四台计算机安装有所述的杀毒软件并且都有升级杀毒软件的需求。 In this embodiment, the need for antivirus software upgrade software, and it is assumed that there are four LAN antivirus software installed on the computer and has the antivirus software upgrade requirements.

另外,为了叙述的方便,本实施例指定所述计算机121作为服务端,而计算机122、123、124作为客户端,所述服务端指从网络升级服务器下载杀毒软件升级所需的数据,然后向局域网中其他安装有该杀毒软件并需要软件升级的客户端发送所述从升级服务器下载来的升级数据的计算机;所述客户端指不到升级服务器下载软件升级数据,而是通过局域网从服务端获取所述软件升级数据的计算机。 For convenience of description, the present embodiment specifies the computer 121 as a server, and a client computer 122, 123, the server refers to the data required to upgrade from the network server to download antivirus software upgrade, then the other LAN attached to the anti-virus software and require software upgrades from the client sends the server computer to download the upgrade data to upgrade; means the client can not update server to download the software upgrade data from the server but through the LAN acquiring the computer software upgrade data. 所述服务端与客户端的指定并不是唯一的,任何一台安装有所述计算机软件的计算机都可以作为服务端,当然也可以作为客户端。 The service ends with the specified client is not the only, any computer equipped with the software can be used as a computer server, of course, also be used as a client.

上述服务端与升级服务器之间可按照HTTP或者FTP协议通信,局域网中服务端与多个客户端之间可按照TCP/IP协议进行通信。 Communication can be performed between the server and the upgrade server according to the communication between the HTTP or FTP protocol, the LAN server and the client in accordance with a plurality of TCP / IP protocol.

图2是图1所示局域网中服务端从升级服务器下载软件升级数据的流程图。 FIG 2 is a flowchart of the LAN shown in Figure 1 from the server to upgrade the server to download the software upgrade data.

本实施例,当局域网中服务端上安装的杀毒软件在自动升级时间到或用户显式操作,需要通过互联网从升级服务器上下载软件升级数据进行升级时,执行以下步骤:步骤201服务端通过HTTP或FTP协议的方式请求连接杀毒软件的升级服务器,所述升级服务器是由用户从服务器列表中自行选择的或由程序自动选择的连接速度最快的一个,在服务端提交的连接信息中包含有本地软件序列号及用户激活码等数据,用于升级服务器判断所述本地软件是否为合法的授权版本;步骤202当服务端成功连接到服务器后,服务器检查服务端的本地拷贝软件是否为合法的软件版本,如不是合法的软件版本,则提示服务端,拒绝执行软件升级请求并退出;如是合法的软件版本,则检查其最新的本地软件版本号,与服务器提供的最新版本比较,若不低于服务器上的最新软件版本号 The present embodiment, when installed on the LAN server antivirus software automatically upgrade time to or user explicit action needs to download a software upgrade data from the upgrade server through the Internet for upgrading, perform the following steps: Step 201 the server through HTTP or the FTP protocol connection request server antivirus software upgrade, the upgrade server is a fastest selected by the user from the server list is selected automatically or by the connection speed, the service information included in the connection end has submitted local activation software serial number and other user data, for the local software upgrade server determines whether a valid authorization release; step 202 when the server is successfully connected to the server, the server checks whether a local copy of the software is legal software version, if not a legal version of the software, then prompts the server, refuse to perform a software upgrade request and exit; the case of legitimate software version, check the latest local software version number, compared with the latest version provided by the server, if not lower than the latest software version number on the server ,则无升级的必要,提示用户,退出升级流程,如低于服务器上的最新版本,则继续执行下述的升级步骤;步骤203服务端从升级服务器下载最新的软件升级数据到本地,并执行升级操作,即用从升级服务器下载的最新数据替换本地原有的相同文件;步骤204服务端上计算机软件升级完成,关闭与远程升级服务器的连接。 , No need to upgrade to prompt the user to exit the upgrade process, such as lower than the latest version on the server, proceed to the following upgrade steps; step 203, the server upgrade the server to download the latest software upgrades to data from local and execution upgrade, i.e. the same as the original file to replace the local downloaded from the update server with the latest data; a step 204 the server computer software upgrade is completed, close the connection with the remote update server.

上述服务端从互联网远程升级服务器上获取软件升级所需要的数据并升级所述软件,与现有技术是相同的。 These services available on the Internet side remote upgrade server software upgrade data and upgrade the required software, and is the same as the prior art. 但该局域网中其他安装有相同杀毒软件的客户端也有软件升级的需要,若按照现有技术的实现方案,客户端只能重复上述服务端升级的过程重新从升级服务器上下载软件升级数据,显然,这种局域网中计算机软件升级方法对网络的带宽造成了极大的浪费,网络升级效率不高,在升级用户数较多时,会对升级服务器造成极大的压力,考虑到服务端上已经保存了软件升级所需的升级数据,即服务端上保存的软件升级数据与升级服务器上的软件升级数据是相同的。 But the other is installed in the same local area network anti-virus software client also needs a software upgrade the server upgrade process if in accordance with the implementation of the prior art, the client can only repeat re-download the software upgrade data from the upgrade server, apparently this software upgrade computers on the LAN network bandwidth caused great waste of network upgrade efficiency is not high, when there are many users to upgrade, upgrade the server will cause great pressure, taking into account the server has been saved the software upgrade required to upgrade data is saved on the server software upgrade software upgrade data and upgrade data on the server are the same. 因此,局域网中其他需要软件升级的客户端可从服务端获取所需的升级数据,下面进行详细说明。 Therefore, other LAN clients require software upgrades can obtain the required data from the server upgrade, described in detail below.

首先叙述服务端数据处理的流程,图3是本发明计算机软件升级方法中服务端数据处理的流程图,包括以下的步骤:步骤301服务端下载软件升级数据完毕,在本局域网所属子网内广播一个通知信息,以便通知局域网中客户端有最新的软件升级数据,所述通知信息可由一个UDP(用户数据包)数据包广播出去,具体的,所述通知信息包括要更新的软件版本号以及本地发送升级数据所用的多播地址及端口号等信息。 Described first server data processing process, FIG. 3 is a flowchart of the present invention, computer software upgrade server data processing method, comprising the steps of: a step 301 the server to download the software upgrade data is completed, the broadcast within the LAN Subnet a notification information to notify the LAN client has the latest software upgrade data, the notification information may be a UDP (user Datagram) packet broadcast out specific, the notification includes information to update the software version number and local send upgrade data used multicast address and port number and other information.

本步骤广播该UDP数据包除了通知客户端有最新升级数据外,其另一目的是为了统计本子网中有多少需要软件升级的客户端,由于网络运输的延迟以及UDP数据包丢包的可能性,该广播的数据包会持续一段时间,例如,30秒;步骤302等待一段时间,然后开始统计反馈回的要软件升级的客户端的响应信息,所述响应信息包括需软件升级的客户端的IP地址,统计时不但要统计所述客户端的IP地址,还包括需升级软件的客户端个数等信息,如果统计得到的结果为需升级的客户端个数为0,表明当前没有需要软件升级的客户端,结束软件升级流程,否则,继续以下步骤;步骤303将要发送的下载获取的软件升级数据进行预处理以便提高网络传输的效率,所述软件升级数据保存在本地根目录下某个文件夹中,传送时需要先预处理以便正确的传送及提高网络传输的效率; This step of broadcasting the UDP packet to inform the client in addition to the latest upgrade data, its other purpose is to present the statistics of how many subnets need to upgrade the client software, due to the possibility of transportation network delays and packet loss UDP packet , the broadcast packet will continue for some time, e.g., 30 seconds; step 302 to wait for some time, and then starts statistics response information back to the software upgrade client, the response information includes a required software upgrade client's IP address , not only to the IP address of the client statistics when statistics also include information such as the number of client software to be upgraded if the results obtained statistics for the number of end customers need to upgrade to zero, indicating that the customer is currently no need for software upgrade end, the software upgrade process ends, otherwise, proceed with the following steps; step 303 to be transmitted to download the software upgrade data acquired pretreated to increase the efficiency of the transmission network, said software update data stored in a folder in the root of the local , you need to pre-correct transmission and network transmission efficiency when transmitting; 步骤304通过从响应信息获取的客户端的IP地址,采用上述广播通知信息中的多播地址及端口号,将上述预处理的数据通过UDP数据包多播发送到客户端。 Step 304 in response to information acquired by the client from the client's IP address, the above-described broadcast notification multicast address and port number information, the data of the pre-processed by multiple broadcast UDP packets to the client.

图4是本发明计算机软件升级方法中对待多播的软件升级数据进行预处理的流程图。 FIG 4 is a flowchart of the software upgrade data multicast treat computer software upgrade process of the present invention for pretreatment.

所述对待多播的升级数据进行预处理具体包括以下步骤:步骤401判断要发送的文件目录路径是否正确,若正确,则进入步骤402,否则,进入步骤404;步骤402将指定目录下的所有文件格式化为一块连续的内存块以便发送;步骤403将所述内存块中数据分成多个大小合适的数据块,所述数据块包括一信息头,其中包含用于唯一标识所述数据块的标识信息,如将所述内存块分成多个数据块时分配给该数据块的标识ID、该数据块的大小以及CRC校验和等信息;步骤404返回错误信息。 The upgrade treatment multicast data pretreatment comprises the steps of: determining the file directory path to step 401 to be transmitted is correct, if correct, the process proceeds to step 402, otherwise, proceeds to step 404; step 402 all the specified directory file formatted as a contiguous block of memory for transmission; a step 403 the data in the memory block is divided into a plurality of data blocks of suitable size, the data block comprises a header, which comprises means for uniquely identifying the data block when allocation identification information as the memory block is divided into a plurality of blocks of data ID to identify the data block, the data block size and CRC checksum information; step 404 returns an error message.

下面说明多播软件升级数据的过程,图5是本发明计算机软件升级的方法中服务端通过多播将软件升级数据发送给客户端的流程图,上述服务端通过多播将软件升级数据发送给客户端具体包括以下步骤:步骤501发送一个摘要信息包给客户端,所述摘要信息包包含要发送的总数据块数和总数据大小及CRC(循环冗余校验)校验和等信息;步骤502按顺序逐一发送所述数据块,发送数据完成,继续发送一个完成数据包,所述完成数据包包含已发送的数据块标识信息及发送的总数据大小等信息;步骤503检查客户端是否要求重发数据块,若是,进入步骤504获取要重发的数据块标识信息,重新发送所述数据块,否则,进入步骤505结束发送数据流程。 The following describes the process of multicast software upgrade data, FIG. 5 is a computer software of the present invention upgraded server by multicast transmitting the software upgrade data to the flowchart of the client, said server by multicast transmitting the software upgrade data to the client side includes the following steps: step 501 sends a packet to the client summary information, the digest information packet to be transmitted contains the total number of blocks of data and the total data size and (cyclic redundancy check) checksum and the CRC information; step 502 one by one sequentially transmitting the data block, the data transmission is complete, continue to send a completion packet, the completion packet contains identification information of the transmission data block size and the total data message transmission; a step 503 checks whether the client requirements retransmission data block, and if yes, proceeds to step 504 to obtain the retransmitted data block identification information, re-transmitting the data block, otherwise, step 505 ends the data transmission process.

图6是本发明计算机软件升级方法中经分割后的数据块结构示意图。 FIG 6 is a block diagram illustrating a data structure of the present invention, computer software upgrade process divided.

如上述的,所述的数据块包括两部分:数据信息头和实际数据部分,如图6中所示,所述标识信息包括本数据块的标识ID、本数据块的CRC、本数据块的总大小等信息,实际数据部分则是待发送给各客户端的真正的软件升级数据。 As described above, the data block consists of two parts: header data and the actual data portion, as shown in FIG. 6, the identification information includes identification ID of the data block, CRC data of this block, this data block the total size and other information, the actual data is to be sent to the real part of the software upgrade data for each client.

继续说明本发明的方法,图7是本发明计算机软件升级的方法中客户端数据处理的流程图,具体包括以下步骤:步骤701接收服务端发送来的通知信息,具体客户端在接收到服务端广播的UDP数据包后,获取其中的软件版本号等信息与本地的相应信息比较,如软件版本号,若不高于本地,则无需升级,不进行任何处理,反之,回送一个升级响应信息给服务端,所述响应信息还通过UDP数据包反馈给服务端,表明本客户端要参加本次升级会话;步骤702加入以服务端为发送源的多播组,该组的多播地址及端口号等信息由服务端发送的通知信息获取,然后开始等待服务端发送数据;步骤703当接收到一个数据包时,首先校验数据包是否有效,如上提到的,每一个从服务端发来的数据包都有CRC校验和等信息,因此,在接收到数据包时,通过校验以确定该数据包是否有 Continue described method of the present invention, FIG 7 is a flowchart of a method according to the present invention, a computer software upgrade client data processing, includes the following steps: Step 701 receives the notification information transmitted to the server, the client receives the specific service end after the UDP packets broadcast, wherein acquiring information corresponding software version number and other information of the local comparison, such as software version number, if not higher than local, no need to update, without any treatment, and vice versa, returning a response message to upgrade server, in response to the feedback information further UDP packets to the server, this indicates that the client session to participate in the upgrade; step 702 to join the multicast group for the transmission source server, the multicast address and port of the group notification number and other information sent by the server acquisition, and then waits for the server to send data starts; at step 703 when a packet is received, first check whether the packet is valid, as mentioned above, each sent from the server the packet has a CRC checksum and other information, and therefore, upon receiving a packet, by checking to determine if the data packets 效,若有效,则进入步骤704;否则,不接收该数据包;步骤704判断该数据包是否为摘要信息包,若是,保存该数据包,以便接收完所有数据包后根据所述摘要信息包的信息检验是否有丢包,若所述数据包并不是摘要信息包,则继续等待客户端发送摘要信息包;步骤705开始接收实际的升级数据包,由于发送端是将升级数据预处理后分成一个个小数据块并顺序发送的,接收时也一一接收所述的数据块并放到内存中相应的位置,在接收升级数据完毕后,继续接收完成信息包;步骤706获取完成信息包的信息,并根据本地保存的所述摘要信息及完成数据包信息检查是否有数据块丢失,并确定需重发的数据块信息,若检查到有数据块丢失,则将该数据块的标识信息(如标识ID)反馈回服务端,要求服务端重发该数据块,直到确认所有的数据块都已接收到,结束数据 Effect, if valid, the process proceeds to step 704; otherwise, does not receive the packet; Step 704 determines whether the packet is a packet summary information, if yes, saves the data packet, so that packets received all data packets according to said digest information testing whether there is information loss, if the data packet is not the summary information packet, continue to wait client sends digest information packet; step 705 to start receiving the actual upgrade data packet, since the transmission side is divided into a preprocessing data after the upgrade a small block of data and sequentially transmitted, one by one according to the received data block is received and placed into the corresponding memory location, after receiving upgrade data is completed, the completion information continues to receive packets; step 706 for the completion packet information, and if there is missing data block digest information and the completion packet stored locally in accordance with information checking, data block information and determines the need to retransmit, if the check data block is lost, the identification information of the data block ( the identification ID) fed back to the server, the server requires retransmission of the data block, until it is confirmed that all data blocks have been received, the end of the data 接收流程,若没有检查到数据块丢失,则直接结束数据接收流程;步骤707接收数据完毕,将存放在本地内存中的软件升级数据还原保存在临时目录中;步骤708还原升级数据完毕,执行升级操作,即用还原得到的数据替换本地原有的相同文件,至此,整个局域网中计算机软件升级全部完成。 Receiving process, if there is no check data block is lost, the process directly ends the data receiving process; step 707 the received data is completed, the stored software upgrade data in the local memory of reduction stored in the temporary directory; step 708 to restore the upgrade data is completed, performing the upgrade operation, i.e., to replace the local file with the same original data obtained by reducing, thus, the entire local area network computer software upgrade completed.

上述本发明计算机软件升级的方法,任一台局域网中计算机均可作为服务端从升级服务器下载升级所需的数据,并在其中一台计算机获取升级数据后,即以多播的方式向其他需升级的计算机发送所述的数据,由于整个局域网只需从升级服务器下载一次升级数据,其余数据传送都在局域网中进行,因此,数据传送速率快,升级效率相对现有技术更高,可以避免现有技术从升级服务器重复下载数据的缺点。 The method of the present invention, the above-described computer software upgrade, any of a local area network computer can be downloaded from the data needed to upgrade the server as a server upgrade, and one of the computers after acquiring the upgrade data, i.e. a multicast manner to other required upgrading the computer to send the data, because the whole local area network only need to download data from the upgrade server upgrade, the remaining data are transmitted in the local area, and therefore, fast data transfer rate, to upgrade efficiency is relatively high prior art, can be avoided now there are technical disadvantages duplicate data is downloaded from the server upgrade.

上述仅以优选实施例对本发明进行说明,非因此即局限本发明的权利范围,事实上通过局域网多播的方式实现局域网中数据传送的方式还有多种,因此,在不脱离本发明思想的情况下,凡运用本发明说明书及附图内容所为的等效变化,均理同包含于本发明的权利要求范围内。 Only the above-described preferred embodiments of the present invention will be described, i.e. non therefore limited the scope of the claimed invention, in fact the data transfer implementation of the LAN over the LAN multicast mode there are many, therefore, without departing from the spirit of the invention case, where the use of the accompanying drawings and the description of the present invention is equivalent variations are included in the same processor as claimed in claims within the scope of the present invention.

Claims (7)

  1. 1.一种计算机软件升级的方法,用于升级安装在局域网中多台计算机上的软件,其特征在于,该方法包括以下步骤:a)服务端从升级服务器下载软件升级所需数据并升级本服务端上所述软件;b)所述服务端向子网广播一个通知信息以指示局域网中客户端有最新的软件升级数据;c)客户端获取所述通知信息,判断需要升级后向所述服务端回送响应信息;d)所述服务端与客户端组成多播组,由所述服务端向客户端多播软件升级数据;e)所述客户端获取所述软件升级数据并升级所述软件。 1. A computer software upgrade, the upgrade installation for multiple computers on a local area network software, wherein the method comprises the steps of: a) the server software upgrade from the upgrade server to download the required data and update the present the software on the server; b) the service end notification to a subnet broadcast information to indicate the latest LAN client software upgrade data; c) the client obtains the notification information, determines the need to upgrade to the the server sends the response information back; D) of the server and the client multicast group consisting of, by the server to the client multicast software upgrade data; E) said client acquiring said software upgrade data and upgrade the software.
  2. 2.根据权利要求1所述计算机软件升级的方法,其特征在于,步骤b)所述通知信息包括软件版本号、多播地址及端口号。 2. The method of upgrading the computer software according to claim 1, wherein step b) comprises a software version number notification information, the multicast address and port number.
  3. 3.根据权利要求2所述局域网中计算机软件升级的方法,其特征在于,所述步骤c)还包括判断的步骤:c1)接收该通知信息的客户端获取所述软件版本号,并与本地软件版本号比较;c2)根据比较结果确定是否向所述服务端回送响应信息,若比较结果为本地软件版本号低于所述软件版本号,则回送响应信息,否则,不回送响应信息。 3. The method of claim 2 LAN computer software upgrade as claimed in claim, wherein said step c) further comprises the step of determining of: c1) receiving the notification information of the client acquires the software version number, and the local comparison software version number; C2) to the result of the comparison to determine whether to send a response back to the server, and if the result is less than the software version number of the software version number according to local, send back the response information, otherwise the information is not sent back in response.
  4. 4.根据权利要求2或3所述计算机软件升级的方法,其特征在于,步骤c)所述响应信息包括有客户端的IP地址。 4. The method of claim 2 or 3 Computer software upgrade as claimed in claim, wherein step c) said response information includes a client IP address.
  5. 5.根据权利要求4所述计算机软件升级的方法,其特征在于,所述步骤d)包括以下步骤:d1)服务端获取响应的客户端的IP地址,并与所述IP地址的客户端组成多播组;d2)采用所述多播地址及端口号,向所述IP地址的客户端多播软件升级数据。 5. The method of claim 4 computer software upgrade claim, wherein said step d) comprises the steps of: d1) server to obtain the IP address of the client responses, and multiple client IP address of the composition multicast group; D2) using the multicast address and port number to the IP address of the multicast client software upgrading data.
  6. 6.根据权利要求5所述计算机软件升级的方法,其特征在于,步骤d)还包括对待多播的软件升级数据进行预处理,所述步骤d2)进一步包括以下步骤:d21)将所有软件升级数据合并到连续的内存块中;d22)将所述内存块中数据分成大小合适的数据块,所述数据块包括一信息头,其中包含用于唯一标识所述数据块的标识信息;d23)发送一个摘要信息包给客户端,所述摘要信息包包含要发送的总数据块数和总数据大小及CRC校验和信息;d24)按顺序逐一发送所述数据块;d25)当数据发送完成,继续发送一个完成数据包,所述完成数据包包含已发送的数据块标识信息及发送的总数据大小信息;d26)检查客户端是否要求重发数据块,若是,获取要重发的数据块标识信息,重新发送所述数据块,否则,结束发送数据流程;所述步骤e)进一步包括以下步骤:e1)接收摘要数据包, The method according to the computer software upgrade as claimed in claim, wherein step d) further comprises treating multicast software upgrade data preprocessing, said step d2) further comprises the steps of: d21) all software upgrade data merge into a continuous block of memory; D22) in the memory block size of the data into the appropriate data block, the data block including a header containing the identification information for uniquely identifying the data block; D23) sending a packet to the client summary information, the digest information packet contains the total number of blocks of data to be transmitted and the total size of the data and CRC checksum information; D24) transmitting the data blocks one by one sequentially; D25) when the data transmission is completed , continue to send a completion packet, the completion packet contains identification information of the transmission data block size information and the total data transmitted; retransmission data block D26) checks the client request if the acquired data blocks to be retransmitted identification information, re-transmitting the data block, otherwise, the data transmission flow ends; said step e) further comprises the step of: e1) receiving summary data packet, 并保存其中的摘要信息;e2)接收数据块,并将其放置到分配好的内存块中;e3)接收完成数据包,并根据所述摘要信息及完成数据包信息检查是否有数据块丢失,若检查到有数据块丢失,则将该数据块的标识信息反馈回服务端,要求服务端重发该数据块,直到确认所有的数据块都已接收到,结束数据接收流程,若没有检查到数据块丢失,则直接结束数据接收流程;e4)以接收到的数据升级本客户端上的所述软件。 And summary information stored therein; E2) received data block, and placed into the allocated memory block; E3) receiving a completion packet, and whether there are missing data block digest information according to the information checking and completion packet, If the check data block is missing, then the data block identification information is fed back to the server, the server requires retransmission of the data block, until it is confirmed that all data blocks have been received, the data reception process, if there is no check to data block is lost, the data receiving process is ended; E4) to receive data to upgrade the software present on the client.
  7. 7.根据权利要求6所述计算机软件的方法,其特征在于,所述步骤d26)还包括预设等待重发请求时间的步骤,若在预设的等待重发请求时间内服务端收到客户端的重发请求信息,则重发所要求的数据块,否则,结束数据发送的流程。 The method according to claim 6 computer software, wherein said step D26) further comprises the step of waiting a predetermined time retransmission request, if the server within the preset waiting time a retransmission request is received the client end of the retransmission request message, the retransmission data block is required, otherwise, the data transmission flow ends.
CN 03153945 2003-08-21 2003-08-21 Comptuer software updating method CN1300719C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 03153945 CN1300719C (en) 2003-08-21 2003-08-21 Comptuer software updating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 03153945 CN1300719C (en) 2003-08-21 2003-08-21 Comptuer software updating method

Publications (2)

Publication Number Publication Date
CN1584865A true CN1584865A (en) 2005-02-23
CN1300719C true CN1300719C (en) 2007-02-14

Family

ID=34597934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 03153945 CN1300719C (en) 2003-08-21 2003-08-21 Comptuer software updating method

Country Status (1)

Country Link
CN (1) CN1300719C (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546246A (en) * 2011-12-28 2012-07-04 创新科存储技术(深圳)有限公司 Method and system for automatic upgrade of software

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100518082C (en) 2005-09-12 2009-07-22 中兴通讯股份有限公司 Long-distance on-line updating method with self-recovery function
US8543996B2 (en) * 2005-11-18 2013-09-24 General Electric Company System and method for updating wind farm software
CN100421072C (en) 2005-12-28 2008-09-24 腾讯科技(深圳)有限公司 Method for realizing software updating
CN100461777C (en) 2006-08-21 2009-02-11 杭州华三通信技术有限公司 Method and system for sending configuration message
CN101924645B (en) 2009-06-12 2013-07-10 华为技术有限公司 Device management method, device and system
CN102064960A (en) * 2010-11-26 2011-05-18 北京安天电子设备有限公司 Method, server and system for software upgrading
CN102123170A (en) * 2011-01-21 2011-07-13 中兴通讯股份有限公司 Method and device for upgrading firmware version
CN103379142A (en) * 2012-04-17 2013-10-30 国基电子(上海)有限公司 Terminal device firmware upgrading method and system
CN103118061A (en) * 2012-11-19 2013-05-22 苏州亿倍信息技术有限公司 Self-synchronizing upgrade processing method and system
CN103457984A (en) * 2012-11-19 2013-12-18 苏州亿倍信息技术有限公司 Method and system for automatic synchronous upgrade control
CN103118060A (en) * 2012-11-19 2013-05-22 苏州亿倍信息技术有限公司 Self-synchronizing upgrade method and system
CN104077152B (en) * 2013-03-27 2017-07-18 广东威创视讯科技股份有限公司 Method and apparatus for batch upgrade of an embedded system
CN104378391A (en) * 2013-08-12 2015-02-25 无锡知谷网络科技有限公司 Software updating method, system and device
CN104038538A (en) * 2014-05-29 2014-09-10 广州视睿电子科技有限公司 Method and system for local area network host software updating
CN105303106A (en) * 2014-06-06 2016-02-03 腾讯科技(深圳)有限公司 Malicious code processing method, apparatus, and system
CN104202667A (en) * 2014-09-19 2014-12-10 青岛海信宽带多媒体技术有限公司 IPTV (internet protocol television) set-top box upgrading method and system
CN104503801B (en) * 2014-12-30 2018-07-06 北京奇安信科技有限公司 Instruction dispatch software upgrade method, a communication terminal apparatus and a server

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5752042A (en) * 1996-06-07 1998-05-12 International Business Machines Corporation Server computer for selecting program updates for a client computer based on results of recognizer program(s) furnished to the client computer
WO2002005138A1 (en) * 2000-07-06 2002-01-17 Lawrence Mark H Process guru
US6360366B1 (en) * 1996-09-05 2002-03-19 Managesoft Corporation Systems and methods for automatic application version upgrading and maintenance
CN1397900A (en) * 2001-07-19 2003-02-19 英业达股份有限公司 System and method for updating data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5752042A (en) * 1996-06-07 1998-05-12 International Business Machines Corporation Server computer for selecting program updates for a client computer based on results of recognizer program(s) furnished to the client computer
US6360366B1 (en) * 1996-09-05 2002-03-19 Managesoft Corporation Systems and methods for automatic application version upgrading and maintenance
WO2002005138A1 (en) * 2000-07-06 2002-01-17 Lawrence Mark H Process guru
CN1397900A (en) * 2001-07-19 2003-02-19 英业达股份有限公司 System and method for updating data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546246A (en) * 2011-12-28 2012-07-04 创新科存储技术(深圳)有限公司 Method and system for automatic upgrade of software

Also Published As

Publication number Publication date Type
CN1584865A (en) 2005-02-23 application

Similar Documents

Publication Publication Date Title
US6986133B2 (en) System and method for securely upgrading networked devices
US6918113B2 (en) Client installation and execution system for streamed applications
US6959320B2 (en) Client-side performance optimization system for streamed applications
US6032193A (en) Computer system having virtual circuit address altered by local computer to switch to different physical data link to increase data transmission bandwidth
US6381709B1 (en) Process and apparatus for downloading data from a server computer to a client computer
US6857009B1 (en) System and method for network access without reconfiguration
US20050169285A1 (en) Stateful push notifications
US20030009538A1 (en) Network caching system for streamed applications
US20020087883A1 (en) Anti-piracy system for remotely served computer applications
US20080178298A1 (en) Intelligent network streaming and execution system for conventionally coded applications
US6085251A (en) Implementing a parallel file transfer protocol
US6377974B1 (en) Methods and apparatus for downloading a file from a server
US20030145101A1 (en) Reduction of resource usage in TCP/IP implementation
US20050122977A1 (en) Efficient download mechanism for devices with limited local storage
EP0924630A1 (en) Resource retrieval over a data network
US20030112772A1 (en) System and method for acceleration of a secure transmission over satellite
US7289500B1 (en) Method and system for reliable multicast data transmission
US20050160418A1 (en) Embedded system using binary position information and software downloading method therein
US20060282497A1 (en) Software defined radio download
US6473099B1 (en) Automatically upgrading software over a satellite link
US7062555B1 (en) System and method for automatic selection of service provider for efficient use of bandwidth and resources in a peer-to-peer network environment
US7149808B2 (en) Application protocol offloading
US20030233551A1 (en) System and method to verify trusted status of peer in a peer-to-peer network environment
US7721110B2 (en) System and method for secure and verified sharing of resources in a peer-to-peer network environment
US20140040353A1 (en) Return-link optimization for file-sharing traffic

Legal Events

Date Code Title Description
C06 Publication
C10 Request of examination as to substance
C14 Granted
C56 Change in the name or address of the patentee

Owner name: ZHUHAI KINGSOFT SOFTWARE CO., LTD.

Free format text: FORMER NAME: ZHUHAI JINSHAN SOFTWARE CO. LTD.

LICC Enforcement, change and cancellation of record of contracts on the license for exploitation of a patent