TWI834261B - Software deployment method and system - Google Patents

Software deployment method and system Download PDF

Info

Publication number
TWI834261B
TWI834261B TW111132102A TW111132102A TWI834261B TW I834261 B TWI834261 B TW I834261B TW 111132102 A TW111132102 A TW 111132102A TW 111132102 A TW111132102 A TW 111132102A TW I834261 B TWI834261 B TW I834261B
Authority
TW
Taiwan
Prior art keywords
user device
software
echelon
group
server
Prior art date
Application number
TW111132102A
Other languages
Chinese (zh)
Other versions
TW202409824A (en
Inventor
郭宏裕
Original Assignee
瑞思資訊股份有限公司
Filing date
Publication date
Application filed by 瑞思資訊股份有限公司 filed Critical 瑞思資訊股份有限公司
Application granted granted Critical
Publication of TWI834261B publication Critical patent/TWI834261B/en
Publication of TW202409824A publication Critical patent/TW202409824A/en

Links

Images

Abstract

一種軟體部署系統,包含多個使用者裝置及一伺服器。該伺服器的一處理模組根據一儲存模組儲存的多筆位址資訊將該等使用者裝置進行分群。該使用者裝置的一目標使用者裝置產生並傳送一軟體下載請求至該伺服器,該處理模組判定一包括該目標使用者裝置的目標群組之一相關於該軟體的下載總次數是否大於一預設值,當判定結果為肯定時,該處理模組經由一通訊模組傳送一第i下載資料至該目標使用者裝置,以致該目標使用者裝置根據該第i下載資料下載該軟體;當判定結果為否定時,該處理模組經由該通訊模組傳送該軟體至該目標使用者裝置。A software deployment system includes multiple user devices and a server. A processing module of the server classifies the user devices into groups based on multiple pieces of address information stored in a storage module. A target user device of the user device generates and transmits a software download request to the server, and the processing module determines whether the total number of downloads related to the software in one of the target groups including the target user device is greater than A default value, when the determination result is positive, the processing module sends an i-th download data to the target user device through a communication module, so that the target user device downloads the software based on the i-th download data; When the determination result is negative, the processing module sends the software to the target user device through the communication module.

Description

軟體部署方法及其系統Software deployment method and system

本發明是有關於一種部署方法,特別是指一種軟體部署方法及其系統。The present invention relates to a deployment method, and in particular, to a software deployment method and its system.

當大量的用戶端需要從伺服端下載需要更新或升級的軟體時,將會非常複雜,因此需要軟體部署(Software deployment) 在用戶端上批次下載安裝軟體。軟體部署是指將軟體項目本身,包括配置檔案、用戶手冊、幫助文件等進行收集、打包、安裝、配置、發布的過程。When a large number of clients need to download software that needs to be updated or upgraded from the server, it will be very complicated, so software deployment is required to download and install software in batches on the client. Software deployment refers to the process of collecting, packaging, installing, configuring, and releasing the software project itself, including configuration files, user manuals, help files, etc.

然而,每一用戶端都必須從伺服端下載軟體,使得伺服端的頻寬被占用,造成網路塞車,用戶端無法快速從伺服端下載軟體。However, each client must download the software from the server, which consumes the bandwidth of the server and causes network traffic jam. The client cannot quickly download the software from the server.

因此,本發明的目的,即在提供一種能避免網路塞車以快速下載軟體的軟體部署方法。Therefore, an object of the present invention is to provide a software deployment method that can avoid network traffic jams and quickly download software.

於是,本發明軟體部署方法,適用於部署一軟體,由一部署系統執行,該部署系統包括一伺服器及多個經由一通訊網路與該伺服器連接的使用者裝置,該伺服器儲存多筆分別相關於該等使用者裝置的位址資訊,及該軟體,該方法包含一步驟(A)、一步驟(B)、一步驟(C),及一步驟(D)。Therefore, the software deployment method of the present invention is suitable for deploying a software to be executed by a deployment system. The deployment system includes a server and a plurality of user devices connected to the server through a communication network. The server stores a plurality of Respectively related to the address information of the user devices and the software, the method includes a step (A), a step (B), a step (C), and a step (D).

在該步驟(A)中,該伺服器根據該等位址資訊將該等使用者裝置進行分群,以獲得多個群組。In step (A), the server groups the user devices according to the address information to obtain multiple groups.

在該步驟(B)中,當該伺服器接收到來自該等使用者裝置之一目標使用者裝置的軟體下載請求時,該伺服器判定一包括該目標使用者裝置的目標群組之一相關於該軟體的下載總次數是否大於一預設值。In step (B), when the server receives a software download request from a target user device of one of the user devices, the server determines a related target group including the target user device. Whether the total number of downloads of the software is greater than a preset value.

在該步驟(C)中,當該伺服器判定出該下載總次數大於該預設值時,該伺服器傳送一第i下載資料至該目標使用者裝置,該第i下載資料包括該目標群組中至少一已從該伺服器進行下載該軟體的第i梯次使用者裝置所相關的至少一筆第i梯次下載位址資訊,以致該目標使用者裝置根據該第i下載資料下載該軟體。In step (C), when the server determines that the total number of downloads is greater than the preset value, the server sends an i-th download data to the target user device, and the i-th download data includes the target group At least one i-th echelon download address information related to at least one i-th echelon user device in the group that has downloaded the software from the server, so that the target user device downloads the software based on the i-th download data.

在該步驟(D)中,當該伺服器判定出該下載總次數不大於該預設值時,該伺服器傳送該軟體至該目標使用者裝置。In step (D), when the server determines that the total number of downloads is not greater than the preset value, the server sends the software to the target user device.

本發明的另一目的,即在提供一種能避免網路塞車以快速下載軟體的軟體部署系統。Another object of the present invention is to provide a software deployment system that can avoid network traffic jams and quickly download software.

於是,本發明軟體部署系統,適用於部署一軟體,包含多個使用者裝置及一伺服器。Therefore, the software deployment system of the present invention is suitable for deploying a software, including multiple user devices and a server.

該等使用者裝置連接一通訊網路。The user devices are connected to a communications network.

該伺服器包括一儲存模組、一通訊模組,及一處理模組。The server includes a storage module, a communication module, and a processing module.

該儲存模組儲存多筆分別相關於該等使用者裝置的位址資訊,及該軟體。The storage module stores a plurality of pieces of address information respectively related to the user devices and the software.

該通訊模組經由一通訊網路與該等使用者裝置連接。The communication module is connected to the user devices through a communication network.

該處理模組電連接該儲存模組及該通訊模組,該處理模組根據該等位址資訊將該等使用者裝置進行分群,以獲得多個群組。The processing module is electrically connected to the storage module and the communication module, and the processing module groups the user devices according to the address information to obtain multiple groups.

其中,該等使用者裝置之一目標使用者裝置產生並傳送一軟體下載請求至該伺服器,該伺服器的該處理模組判定一包括該目標使用者裝置的目標群組之一相關於該軟體的下載總次數是否大於一預設值,當該處理模組判定出該下載總次數大於該預設值時,該處理模組經由該通訊模組傳送一第i下載資料至該目標使用者裝置,該第i下載資料包括該目標群組中至少一已從該伺服器進行下載該軟體的第i梯次使用者裝置所相關的至少一筆第i梯次下載位址資訊,該目標使用者裝置根據該第i下載資料下載該軟體,當該處理模組判定出該下載總次數不大於該預設值時,該處理模組經由該通訊模組傳送該軟體至該目標使用者裝置。Wherein, one of the target user devices generates and transmits a software download request to the server, and the processing module of the server determines that one of the target groups including the target user device is related to the Whether the total number of downloads of the software is greater than a preset value, when the processing module determines that the total number of downloads is greater than the preset value, the processing module sends an i-th download data to the target user through the communication module device, the i-th download data includes at least one i-th echelon download address information related to at least one i-th echelon user device in the target group that has downloaded the software from the server, and the target user device is based on The i-th download data downloads the software, and when the processing module determines that the total number of downloads is not greater than the preset value, the processing module sends the software to the target user device through the communication module.

本發明的功效在於:藉由該伺服器根據該等位址資訊將該等使用者裝置進行分群,並在該下載總次數大於該預設值時,傳送該第i下載資料至該目標使用者裝置,使得該目標使用者裝置根據該第i下載資料下載該軟體,以降低該伺服器傳輸量,避免網路塞車,加快該等使用者裝置下載該軟體的速度。The effect of the present invention is to use the server to group the user devices according to the address information, and when the total number of downloads is greater than the default value, send the i-th download data to the target user The device enables the target user device to download the software based on the i-th download data, so as to reduce the server transmission volume, avoid network traffic jams, and speed up the downloading speed of the software by the user devices.

在本發明被詳細描述的前,應當注意在以下的說明內容中,類似的元件是以相同的編號來表示。Before the present invention is described in detail, it should be noted that similar elements are represented by the same numbers in the following description.

參閱圖1,本發明軟體部署系統1的一實施例,適用於部署一軟體,包含多個連接一通訊網路100的使用者裝置11,及一伺服器12。Referring to FIG. 1 , an embodiment of the software deployment system 1 of the present invention is suitable for deploying a software and includes a plurality of user devices 11 connected to a communication network 100 and a server 12 .

值得注意的是,在本實施例中,該等使用者裝置11例如為桌上型電腦、筆記型電腦、智慧型裝置,但不以此為限。It is worth noting that in this embodiment, the user devices 11 are, for example, desktop computers, notebook computers, and smart devices, but are not limited thereto.

該伺服器12包括一儲存模組121、一通訊模組122,及一電連接該儲存模組121及該通訊模組122的處理模組123。The server 12 includes a storage module 121, a communication module 122, and a processing module 123 electrically connected to the storage module 121 and the communication module 122.

該儲存模組121儲存多筆分別相關於該等使用者裝置11的位址資訊,及該軟體。The storage module 121 stores a plurality of pieces of address information respectively related to the user devices 11 and the software.

該通訊模組122經由該通訊網路100與該等使用者裝置11連接。The communication module 122 is connected to the user devices 11 via the communication network 100 .

值得注意的是,在本實施例中,每一位址資訊包括一網際網路協定位址(Internet Protocol Address, IP Address)、一媒體存取控制位址(Media Access Control Address, MAC Address)、一子網路遮罩(subnet mask),及一閘道(getway)值,該通訊網路100例如為網際網路(internet),但不以此為限。It is worth noting that in this embodiment, each address information includes an Internet Protocol Address (IP Address), a Media Access Control Address (MAC Address), A subnet mask and a gateway value. The communication network 100 is, for example, the Internet, but is not limited thereto.

參閱圖1及圖2,本發明軟體部署方法的一實施例,以下詳述本發明軟體部署系統1實施本發明軟體部署方法的該實施例的各個步驟。Referring to FIG. 1 and FIG. 2 , an embodiment of the software deployment method of the present invention is shown. Each step of the software deployment system 1 of the present invention in implementing this embodiment of the software deployment method of the present invention is described in detail below.

在步驟21中,該處理模組123根據該等位址資訊將該等使用者裝置11進行分群,以獲得多個群組。In step 21 , the processing module 123 groups the user devices 11 according to the address information to obtain multiple groups.

在步驟22中,對於每一群組,該處理模組123經由該通訊模組122傳送多筆分別相關於該群組的多個群組使用者裝置11的群組位址資訊至該等群組使用者裝置11。In step 22, for each group, the processing module 123 sends a plurality of group address information of a plurality of group user devices 11 respectively related to the group to the groups through the communication module 122. Group user device 11.

在步驟23中,對於每一群組,該群組的該等群組使用者裝置11根據該等群組位址資訊相互連線,以產生且傳送多筆分別相關於該等群組使用者裝置11連線到其他群組使用者裝置11情況的連線資訊至該伺服器12。In step 23, for each group, the group user devices 11 of the group are connected to each other according to the group address information to generate and send a plurality of messages respectively related to the group users. The connection information of the device 11 connecting to other group user devices 11 is sent to the server 12 .

值得注意的是,在本實施例中,每一連線資訊包括至少一相關於所連線到的群組使用者裝置11之位址,及至少一相關於連線到其他群組使用者裝置11的連線距離,該至少一連線距離例如為中繼段個數(hop count),但不以此為限。It is worth noting that in this embodiment, each connection information includes at least one address related to the group user device 11 to which it is connected, and at least one address related to the group user device 11 connected to. The connection distance is 11, and the at least one connection distance is, for example, the number of hops (hop count), but is not limited to this.

在步驟24中,該處理模組123根據該等群組的連線資訊及該等位址資訊將該等使用者裝置11重新分群。In step 24 , the processing module 123 regroups the user devices 11 according to the connection information of the groups and the address information.

要特別注意的是,在本實施例中,為因應特殊情況,例如有些使用者裝置11使用虛擬私人網路(virtual private network, VPN)而被分類到同一群組,然而該等使用者裝置11無法互相連線,或是連線距離過長(中繼段個數過多),故需要執行步驟22~24該處理模組123再根據連線資訊重新分群,在其他實施方式中可不執行步驟22~24,不以此為限。It should be noted that in this embodiment, in order to cope with special circumstances, for example, some user devices 11 use a virtual private network (VPN) and are classified into the same group. However, these user devices 11 Unable to connect to each other, or the connection distance is too long (too many hops), so steps 22 to 24 need to be executed. The processing module 123 then re-groups the groups based on the connection information. In other implementations, step 22 may not be executed. ~24, not limited to this.

在步驟25中,該等使用者裝置11之一目標使用者裝置11產生並傳送一軟體下載請求至該伺服器12。In step 25 , one of the target user devices 11 generates and sends a software download request to the server 12 .

在步驟26中,該處理模組123判定一包括該目標使用者裝置11的目標群組之一相關於該軟體的下載總次數是否大於一預設值。當該處理模組123判定出該下載總次數不大於該預設值時,流程進行步驟27;而當該處理模組123判定出該下載總次數不大於該預設值時,則流程進行步驟28。In step 26 , the processing module 123 determines whether the total number of downloads of the software related to one of the target groups including the target user device 11 is greater than a preset value. When the processing module 123 determines that the total number of downloads is not greater than the preset value, the process proceeds to step 27; and when the processing module 123 determines that the total number of downloads is not greater than the preset value, the process proceeds to step 27. 28.

在步驟27中,該處理模組123經由該通訊模組122傳送該軟體至該目標使用者裝置11。In step 27 , the processing module 123 transmits the software to the target user device 11 via the communication module 122 .

在步驟28中,該處理模組123經由該通訊模組122傳送一第i下載資料至該目標使用者裝置11,該第i下載資料包括該目標群組中至少一已從該伺服器12進行下載該軟體的第i梯次使用者裝置11所相關的至少一筆第i梯次下載位址資訊。In step 28, the processing module 123 sends an i-th download data to the target user device 11 via the communication module 122. The i-th download data includes at least one of the target groups that has been downloaded from the server 12. At least one piece of i-th level download address information related to the i-th level user device 11 that downloads the software.

在步驟29中,該目標使用者裝置11根據該第i下載資料的該少一第i梯次下載位址資訊之其中一者,傳送該軟體下載請求至該少一第i梯次使用者裝置11之其中一者。In step 29, the target user device 11 sends the software download request to the at least one i-th echelon user device 11 based on one of the at least one i-th echelon download address information of the i-th download data. One of them.

在步驟30中,該第i梯次使用者裝置11判定該第i梯次使用者裝置11所屬群組是否有至少一第i+1梯次使用者裝置11從該第i梯次使用者裝置11下載該軟體。當該第i梯次使用者裝置11判定出該第i梯次使用者裝置11所屬群組有至少一第i+1梯次使用者裝置11從該第i梯次使用者裝置11下載該軟體時,流程進行步驟31;而當該第i梯次使用者裝置11判定出該第i梯次使用者裝置11所屬群組未有至少一第i+1梯次使用者裝置11從該第i梯次使用者裝置11下載該軟體時,則流程進行步驟33。In step 30, the i-th echelon user device 11 determines whether the group to which the i-th echelon user device 11 belongs has at least one i+1-th echelon user device 11 downloading the software from the i-th echelon user device 11. . When the i-th level user device 11 determines that the group to which the i-th level user device 11 belongs has at least one i+1-th level user device 11 downloading the software from the i-th level user device 11, the process proceeds. Step 31; and when the i-th echelon user device 11 determines that the group to which the i-th echelon user device 11 belongs does not have at least one i+1-th echelon user device 11 downloading the i-th echelon user device 11. software, the process proceeds to step 33.

在步驟31中,該第i梯次使用者裝置11傳送一第i+1下載資料至該目標使用者裝置11,該第i+1下載資料包括該目標群組中至少一已從該第i梯次使用者裝置11進行下載該軟體的第i+1梯次使用者裝置11所相關的至少一筆第i+1梯次下載位址資訊。In step 31, the i-th echelon user device 11 transmits an i+1-th downloaded data to the target user device 11. The i+1-th downloaded data includes at least one of the target groups who has downloaded data from the i-th echelon. The user device 11 downloads at least the i+1th level download address information related to the i+1th level user device 11 of the software.

在步驟32中,該目標使用者裝置11獲得該第i+1下載資料,亦即將i設為i+1。之後,重複步驟29~32,直到在步驟30中,該第i梯次使用者裝置11判定出該第i梯次使用者裝置11所屬群組未有至少一第i+1梯次使用者裝置11從該第i梯次使用者裝置11下載該軟體。In step 32, the target user device 11 obtains the i+1th downloaded data, that is, i is set to i+1. Thereafter, steps 29 to 32 are repeated until in step 30, the i-th echelon user device 11 determines that the group to which the i-th echelon user device 11 belongs does not have at least one i+1-th echelon user device 11 from the i-th echelon user device 11. The i-th echelon user device 11 downloads the software.

在步驟33中,該第i梯次使用者裝置11傳送該軟體至該目標使用者裝置11。In step 33, the i-th echelon user device 11 transmits the software to the target user device 11.

參閱圖3,舉例來說,假設在步驟24中,該處理模組123將一使用者裝置A、一使用者裝置B、一使用者裝置C,及一使用者裝置D分成同一群組,該預設值為1。首先,該使用者裝置A傳送該軟體下載請求至該伺服器12,由於該下載總次數為0,該處理模組123經由該通訊模組122傳送該軟體至該使用者裝置A。接著,該使用者裝置B傳送該軟體下載請求至該伺服器12,此時,該下載總次數為1但尚未大於該預設值,因此,該處理模組123經由該通訊模組122傳送該軟體至該使用者裝置B。然後,該使用者裝置C傳送該軟體下載請求至該伺服器12,由於該下載總次數為2大於該預設值,該處理模組123經由該通訊模組122傳送一第一下載資料至該使用者裝置C,該第一下載資料包括一相關於該使用者裝置A的第一梯次下載位址資訊A,及另一相關於該使用者裝置B的第一梯次下載位址資訊B,該使用者裝置C選擇該第一梯次下載位址資訊B,從該使用者裝置B下載該軟體。最後,當該使用者裝置D要下載該軟體時,先從該伺服器12獲得該第一下載資料,該使用者裝置D依然選擇向該第一梯次下載位址資訊B,此時,該使用者裝置B則會傳送一第二下載資料至該使用者裝置D,該第二下載資料包括一相關於該使用者裝置C的第二梯次下載位址資訊C,該使用者裝置D再根據該第二梯次下載位址資訊C從該使用者裝置C下載該軟體。Referring to Figure 3, for example, assuming that in step 24, the processing module 123 groups a user device A, a user device B, a user device C, and a user device D into the same group, the The default value is 1. First, the user device A sends the software download request to the server 12. Since the total number of downloads is 0, the processing module 123 sends the software to the user device A through the communication module 122. Then, the user device B sends the software download request to the server 12. At this time, the total number of downloads is 1 but is not greater than the default value. Therefore, the processing module 123 sends the software download request through the communication module 122. software to the user device B. Then, the user device C sends the software download request to the server 12. Since the total number of downloads is 2, which is greater than the default value, the processing module 123 sends a first download data to the server through the communication module 122. For user device C, the first download data includes a first echelon download address information A related to the user device A, and another first echelon download address information B related to the user device B. The User device C selects the first-tier download address information B to download the software from user device B. Finally, when the user device D wants to download the software, it first obtains the first download data from the server 12, and the user device D still chooses to download the address information B to the first ladder. At this time, the user User device B will send a second download data to the user device D. The second download data includes a second ladder download address information C related to the user device C. The user device D will then send the second download data to the user device D according to the second download address information C. The second level download address information C downloads the software from the user device C.

要再注意的是,在本實施例中,該軟體是被拆分成多個封包進行傳送,因此,在該至少一第i梯次使用者裝置11進行下載該軟體時,該目標使用者裝置11依然可從該至少一第i梯次使用者裝置11下載該軟體,也就是說,若該使用者裝置B正在從該伺服器12下載該軟體時,該使用者裝置C可同時從該使用者裝置B下載該軟體,但不以此為限。It should be noted again that in this embodiment, the software is split into multiple packets for transmission. Therefore, when the at least i-th echelon user device 11 downloads the software, the target user device 11 The software can still be downloaded from the at least i-th echelon user device 11. That is to say, if the user device B is downloading the software from the server 12, the user device C can download the software from the user device C at the same time. B downloads the software, but is not limited to this.

綜上所述,本發明軟體部署方法及其系統,藉由該伺服器12根據該等位址資訊將該等使用者裝置11進行分群,並在該下載總次數大於該預設值時,傳送該第i下載資料至該目標使用者裝置11,使得該目標使用者裝置11根據該第i下載資料下載該軟體,以降低該伺服器12傳輸量,避免網路塞車,加快該等使用者裝置11下載該軟體的速度,故確實能達成本發明的目的。To sum up, the software deployment method and system of the present invention use the server 12 to group the user devices 11 according to the address information, and when the total number of downloads is greater than the default value, send The i-th download data is sent to the target user device 11, so that the target user device 11 downloads the software according to the i-th download data, thereby reducing the transmission volume of the server 12, avoiding network traffic jams, and speeding up the user devices. 11 download speed of the software, so the purpose of the present invention can indeed be achieved.

惟以上所述者,僅為本發明的實施例而已,當不能以此限定本發明實施的範圍,凡是依本發明申請專利範圍及專利說明書內容所作的簡單的等效變化與修飾,皆仍屬本發明專利涵蓋的範圍內。However, the above are only examples of the present invention. They cannot be used to limit the scope of the present invention. All simple equivalent changes and modifications made based on the patent scope of the present invention and the contents of the patent specification are still within the scope of the present invention. within the scope covered by the patent of this invention.

1······· 軟體部署系統 11······ 使用者裝置 12······ 伺服器 121····· 儲存模組 122····· 通訊模組 123····· 處理模組 100····· 通訊網路 21~33·· 步驟 1········Software deployment system 11······ User device 12······· Server 121····· Storage module 122····· Communication module 123····· Processing module 100····· Communication network 21~33·· Steps

本發明的其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中: 圖1是一方塊圖,說明本發明軟體部署系統的一實施例; 圖2是一流程圖,說明本發明軟體部署方法的一實施例;及 圖3是一示意圖,說明該軟體部署系統部署一軟體。 Other features and effects of the present invention will be clearly presented in the embodiments with reference to the drawings, in which: Figure 1 is a block diagram illustrating an embodiment of the software deployment system of the present invention; Figure 2 is a flow chart illustrating an embodiment of the software deployment method of the present invention; and Figure 3 is a schematic diagram illustrating the software deployment system deploying software.

21~33·· 步驟21~33·· Steps

Claims (6)

一種軟體部署方法,適用於部署一軟體,由一部署系統執行,該部署系統包括一伺服器及多個經由一通訊網路與該伺服器連接的使用者裝置,該伺服器儲存多筆分別相關於該等使用者裝置的位址資訊,及該軟體,該方法包含以下步驟: (A)該伺服器根據該等位址資訊將該等使用者裝置進行分群,以獲得多個群組; (B)當該伺服器接收到來自該等使用者裝置之一目標使用者裝置的軟體下載請求時,該伺服器判定一包括該目標使用者裝置的目標群組之一相關於該軟體的下載總次數是否大於一預設值; (C)當該伺服器判定出該下載總次數大於該預設值時,該伺服器傳送一第i下載資料至該目標使用者裝置,該第i下載資料包括該目標群組中至少一已從該伺服器進行下載該軟體的第i梯次使用者裝置所相關的至少一筆第i梯次下載位址資訊,以致該目標使用者裝置根據該第i下載資料下載該軟體;及 (D)當該伺服器判定出該下載總次數不大於該預設值時,該伺服器傳送該軟體至該目標使用者裝置。 A software deployment method, suitable for deploying a software, is executed by a deployment system. The deployment system includes a server and a plurality of user devices connected to the server through a communication network. The server stores a plurality of records respectively related to The address information of the user device, and the software, the method includes the following steps: (A) The server groups the user devices based on the address information to obtain multiple groups; (B) When the server receives a software download request from a target user device of one of the user devices, the server determines that one of the target groups including the target user device is associated with the download of the software Whether the total number of times is greater than a preset value; (C) When the server determines that the total number of downloads is greater than the preset value, the server sends an i-th download data to the target user device, and the i-th download data includes at least one downloaded data in the target group. and (D) When the server determines that the total number of downloads is not greater than the preset value, the server sends the software to the target user device. 如請求項1所述的軟體部署方法,在步驟(A)及步驟(B)之間還包含以下步驟: (E)對於每一群組,該伺服器傳送多筆分別相關於該群組的多個群組使用者裝置的群組位址資訊至該等群組使用者裝置,以致該等群組使用者裝置根據該等群組位址資訊相互連線,並產生多筆分別相關於該等群組使用者裝置連線到其他群組使用者裝置情況的連線資訊;及 (F)當該伺服器接收到來自該等群組的連線資訊時,該伺服器根據該等群組的連線資訊及該等位址資訊將該等使用者裝置重新分群。 The software deployment method as described in request 1 further includes the following steps between step (A) and step (B): (E) For each group, the server sends a plurality of group address information respectively related to the group user devices of the group to the group user devices, so that the groups use User devices connect to each other based on the group address information, and generate multiple pieces of connection information respectively related to the connections of the group user devices to other group user devices; and (F) When the server receives connection information from the groups, the server regroups the user devices based on the connection information of the groups and the address information. 如請求項1所述的軟體部署方法,在步驟(C)之後還包含以下步驟: (G)該目標使用者裝置根據該第i下載資料的該少一第i梯次下載位址資訊之其中一者,傳送該軟體下載請求至該少一第i梯次使用者裝置之其中一者; (H)該第i梯次使用者裝置判定該第i梯次使用者裝置所屬群組是否有至少一第i+1梯次使用者裝置從該第i梯次使用者裝置下載該軟體; (I)當該第i梯次使用者裝置判定出有該至少一第i+1梯次使用者裝置從該第i梯次使用者裝置下載該軟體時,該第i梯次使用者裝置傳送一第i+1下載資料至該目標使用者裝置,並將i設為i+1後重複進行(G)~(I),直到該第i梯次使用者裝置判定出該第i梯次使用者裝置所屬群組未有至少一第i+1梯次使用者裝置從該第i梯次使用者裝置下載該軟體,該第i+1下載資料包括該目標群組中至少一已從該第i梯次使用者裝置進行下載該軟體的第i+1梯次使用者裝置所相關的至少一筆第i+1梯次下載位址資訊;及 (J)當該第i梯次使用者裝置判定出該第i梯次使用者裝置所屬群組未有至少一第i+1梯次使用者裝置從該第i梯次使用者裝置下載該軟體時,該第i梯次使用者裝置傳送該軟體至該目標使用者裝置。 The software deployment method as described in request item 1 further includes the following steps after step (C): (G) The target user device sends the software download request to one of the at least one i-th level user device based on one of the at least one i-th level download address information of the i-th download data; (H) The i-th echelon user device determines whether the group to which the i-th echelon user device belongs has at least one i+1-th echelon user device that downloaded the software from the i-th echelon user device; (1) When the i-th echelon user device determines that at least one i+1-th echelon user device downloads the software from the i-th echelon user device, the i-th echelon user device transmits an i+th echelon user device 1. Download the data to the target user device, set i to i+1, and then repeat (G)~(I) until the i-th echelon user device determines that the group to which the i-th echelon user device belongs is not There is at least one i+1th level user device that downloads the software from the ith level user device, and the i+1th download data includes at least one of the target group who has downloaded the software from the ith level user device. At least one i+1th level download address information related to the i+1th level user device of the software; and (J) When the i-th echelon user device determines that the group to which the i-th echelon user device belongs does not have at least one i+1-th echelon user device downloading the software from the i-th echelon user device, the i-th echelon user device The i-tier user device transmits the software to the target user device. 一種軟體部署系統,適用於部署一軟體,包含: 多個使用者裝置,連接一通訊網路;及 一伺服器,包括 一儲存模組,儲存多筆分別相關於該等使用者裝置的位址資訊,及該軟體, 一通訊模組,經由該通訊網路與該等使用者裝置連接,及 一處理模組,電連接該儲存模組及該通訊模組,根據該等位址資訊將該等使用者裝置進行分群,以獲得多個群組, 其中,該等使用者裝置之一目標使用者裝置產生並傳送一軟體下載請求至該伺服器,該伺服器的該處理模組判定一包括該目標使用者裝置的目標群組之一相關於該軟體的下載總次數是否大於一預設值,當該處理模組判定出該下載總次數大於該預設值時,該處理模組經由該通訊模組傳送一第i下載資料至該目標使用者裝置,該第i下載資料包括該目標群組中至少一已從該伺服器進行下載該軟體的第i梯次使用者裝置所相關的至少一筆第i梯次下載位址資訊,該目標使用者裝置根據該第i下載資料下載該軟體,當該處理模組判定出該下載總次數不大於該預設值時,該處理模組經由該通訊模組傳送該軟體至該目標使用者裝置。 A software deployment system, suitable for deploying a software, including: Multiple user devices connected to a communications network; and A server including a storage module that stores a plurality of pieces of address information respectively related to the user devices and the software, a communication module connected to the user devices via the communication network, and A processing module is electrically connected to the storage module and the communication module, and groups the user devices according to the address information to obtain multiple groups, Wherein, one of the target user devices generates and transmits a software download request to the server, and the processing module of the server determines that one of the target groups including the target user device is related to the Whether the total number of downloads of the software is greater than a preset value, when the processing module determines that the total number of downloads is greater than the preset value, the processing module sends an i-th download data to the target user through the communication module device, the i-th download data includes at least one i-th echelon download address information related to at least one i-th echelon user device in the target group that has downloaded the software from the server, and the target user device is based on The i-th download data downloads the software, and when the processing module determines that the total number of downloads is not greater than the preset value, the processing module sends the software to the target user device through the communication module. 如請求項4所述的軟體部署系統,其中,對於每一群組,該伺服器的該處理模組經由該通訊模組傳送多筆分別相關於該群組的多個群組使用者裝置的群組位址資訊至該等群組使用者裝置,該等群組使用者裝置根據該等群組位址資訊相互連線,並產生多筆分別相關於該等群組使用者裝置連線到其他群組使用者裝置情況的連線資訊,且該等群組使用者裝置傳送該等連線資訊至該伺服器,該伺服器的處理模組根據該等群組的連線資訊及該等位址資訊將該等使用者裝置重新分群。The software deployment system of claim 4, wherein for each group, the processing module of the server transmits a plurality of group user devices respectively related to the group through the communication module. The group address information is sent to the group user devices, the group user devices are connected to each other based on the group address information, and multiple connections are generated respectively related to the group user devices. The connection information of other group user devices, and these group user devices send the connection information to the server, the processing module of the server based on the connection information of these groups and the The address information regroups these user devices. 如請求項4所述的軟體部署系統,其中,該目標使用者裝置根據該第i下載資料的該少一第i梯次下載位址資訊之其中一者,傳送該軟體下載請求至該第i梯次使用者裝置,該第i梯次使用者裝置判定該第i梯次使用者裝置所屬群組是否有至少一第i+1梯次使用者裝置從該第i梯次使用者裝置下載該軟體,當該第i梯次使用者裝置判定出該第i梯次使用者裝置所屬群組未有至少一第i+1梯次使用者裝置從該第i梯次使用者裝置下載該軟體時,該第i梯次使用者裝置傳送該軟體至該目標使用者裝置,當該第i梯次使用者裝置判定出有該至少一第i+1梯次使用者裝置從該第i梯次使用者裝置下載該軟體時,該第i梯次使用者裝置傳送一第i+1下載資料至該目標使用者裝置,該第i+1下載資料包括該目標群組中至少一已從該第i梯次使用者裝置進行下載該軟體的第i+1梯次使用者裝置所相關的至少一筆第i+1梯次下載位址資訊,該目標使用者裝置將i設為i+1後重複傳送該軟體下載請求至該第i梯次使用者裝置,直到該第i梯次使用者裝置判定出該第i梯次使用者裝置所屬群組未有至少一第i+1梯次使用者裝置從該第i梯次使用者裝置下載該軟體。The software deployment system of claim 4, wherein the target user device sends the software download request to the i-th echelon based on one of the at least one i-th echelon download address information of the i-th download data. User device, the i-th echelon user device determines whether the group to which the i-th echelon user device belongs has at least one i+1-th echelon user device that downloaded the software from the i-th echelon user device. When the i-th echelon user device When the echelon user device determines that the group to which the i-th echelon user device belongs does not have at least one i+1 echelon user device downloading the software from the i-th echelon user device, the i-th echelon user device transmits the software to the target user device. When the i-th echelon user device determines that at least one i+1-th echelon user device downloads the software from the i-th echelon user device, the i-th echelon user device Send an i+1th download data to the target user device, the i+1th download data includes at least one i+1th level usage of the software in the target group that has downloaded the software from the ith level user device At least one i+1th echelon download address information related to the user device, the target user device sets i to i+1 and then repeatedly sends the software download request to the i-th echelon user device until the i-th echelon The user device determines that the group to which the i-th echelon user device belongs does not have at least one i+1-th echelon user device that has downloaded the software from the i-th echelon user device.
TW111132102A 2022-08-25 Software deployment method and system TWI834261B (en)

Publications (2)

Publication Number Publication Date
TWI834261B true TWI834261B (en) 2024-03-01
TW202409824A TW202409824A (en) 2024-03-01

Family

ID=

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080134165A1 (en) 2006-12-01 2008-06-05 Lori Anderson Methods and apparatus for software provisioning of a network device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080134165A1 (en) 2006-12-01 2008-06-05 Lori Anderson Methods and apparatus for software provisioning of a network device

Similar Documents

Publication Publication Date Title
CN109688235B (en) Virtual network method for processing business, device and system, controller, storage medium
US10084711B2 (en) High-performance quality-of-service packet scheduling for multiple packet processing engines
US11310108B2 (en) Secure configuration of cloud computing nodes
KR101322947B1 (en) Distributed caching of files in a network
EP4009593A1 (en) Data transmission method and apparatus, network card and storage medium
CN101964799B (en) Solution method of address conflict in point-to-network tunnel mode
US20070274285A1 (en) System and method for configuring a router
CN109561171A (en) The configuration method and device of virtual private cloud service
US20070274230A1 (en) System and method for modifying router firmware
US20070274314A1 (en) System and method for creating application groups
EP1704686B1 (en) Directed pppoe session initiation over a switched ethernet
WO2016111837A1 (en) Selective routing of network traffic for remote inspection in computer networks
CN110266822B (en) Shared load balancing implementation method based on nginx
US11323529B2 (en) TCP fast open hardware support in proxy devices
US20050039048A1 (en) Efficient new e-mail discovery
US11888818B2 (en) Multi-access interface for internet protocol security
WO2023000940A1 (en) Data processing method and apparatus, and network element device, storage medium and program product
WO2023151264A1 (en) Load balancing method and apparatus, node, and storage medium
CN110838935B (en) High-availability SDN controller clustering method, system, storage medium and equipment
JPH0728728A (en) Computer system
CN112929414A (en) Upgrade package downloading method and device, electronic equipment and storage medium
US8416754B2 (en) Network location based processing of data communication connection requests
WO2007045144A1 (en) Methods for peer-to-peer application message identifying and operating realization and their corresponding devices
WO2024078208A1 (en) Domain name query method and apparatus based on ecs protocol, and storage medium and device
TWI834261B (en) Software deployment method and system