新四季網

軟體升級數據包的下載方法和裝置的製作方法

2023-05-24 19:18:56

專利名稱:軟體升級數據包的下載方法和裝置的製作方法
技術領域:
本發明實施例涉及通信技術領域,尤其涉及一種軟體升級數據包的下載方法和裝置。
背景技術:
無論是企業產品還是個人產品軟體,軟體自動升級是必不可少的,但隨著用戶量
的增多及軟體安裝包容量的增大,對伺服器壓力性能、帶寬要求越來越高。但由於伺服器帶
寬資源有限,在用戶量不斷增加的情況下,軟體自動升級的出錯率及下載速度日益表明,現
有軟體升級技術已經無法達到用戶的要求。若通過每天限定軟體升級的用戶數量,將造成
升級周期過長,而且不同版本的客戶端相互通訊存在較大的兼容性問題。 現有技術軟體升級方案中主要是基於伺服器式的自動升級,具體包括客戶端通過
向伺服器查詢最新的版本號與自己的版本號進行對比,若不一致則向伺服器發送下載請
求,伺服器根據下載請求向客戶端發送所需數據包,進行版本升級。 在實現本發明過程中,發明人發現現有技術中至少存在如下問題客戶端與服務 器之間進行信令和數據的交互完成軟體升級,伺服器所能支持的客戶端並發量有限,服務 器負載更重,甚至導致伺服器故障,客戶端軟體升級成功率低;客戶端數據包下載速度較 慢,升級時間較長,甚至會出現一些客戶端版本兼容性問題,為了滿足客戶端的軟體升級要 求伺服器提供下載的安裝版本兼容性過高,軟體升級具有一定的局限性。

發明內容
本發明實施例提供一種軟體升級數據包的下載方法和裝置,用以解決現有技術中 的伺服器負載重、數據包下載速度慢、軟體升級成功率低等缺陷,實現軟體升級過程中的信 令和數據分離,提高軟體升級成功率。
本發明實施例提供一種軟體升級數據包的下載方法,包括 接收升級伺服器發送的軟體升級資源列表,所述軟體升級資源列表包括至少一個 地址信息,每個地址信息對應的客戶端存儲有軟體升級數據包; 在點到點網絡中,根據所述地址信息向至少一個客戶端發送下載所述軟體升級數 據包的第一請求消息; 接收所述客戶端根據所述第一請求消息發送的所述軟體升級數據包。
本發明實施例提供一種用戶設備,包括 第一接收模塊,用於接收升級伺服器發送的軟體升級資源列表,所述軟體升級資 源列表包括至少一個地址信息,每個地址信息對應的客戶端存儲有軟體升級數據包;
第一數據請求模塊,用於在點到點網絡中,根據所述地址信息向至少一個客戶端 發送下載所述軟體升級數據包的第一請求消息,並接收所述客戶端根據所述第一請求消息 發送的所述軟體升級數據包。 本發明實施例提供一種升級伺服器,包括
5
第二接收模塊,用於接收用戶設備發送的進行軟體版本升級的第二請求消息,所 述第二請求消息包括新版本信息; 第一發送模塊,用於根據所述第二請求消息向所述用戶設備發送軟體升級資源列 表,所述軟體升級資源列表包括數個客戶端的地址信息,所述客戶端存儲有與所述新版本 信息對應的軟體升級數據包。 本發明實施例提供一種資源伺服器,包括 第三接收模塊,用於接收用戶設備發送的下載所述軟體升級數據包中分片數據的 第五請求消息; 第二發送模塊,用於根據所述第五請求消息向所述用戶設備發送所述分片數據。
本發明實施例提供一種軟體升級數據包下載系統,包括 升級伺服器,用於接收用戶設備發送的進行軟體版本升級的第二請求消息,所述 第二請求消息包括新版本信息,並根據所述第二請求消息向所述用戶設備發送軟體升級資 源列表,所述軟體升級資源列表包括數個客戶端的地址信息,所述客戶端存儲有與所述新 版本信息對應的軟體升級數據包; 處於點到點網絡中的數個客戶端,用於接收所述用戶設備根據所述地址信息發送 的下載所述軟體升級數據包的第一請求消息,並根據所述第一請求消息發送的所存儲的所 述軟體升級數據包。 本發明實施例提供的軟體升級數據包的下載方法和裝置,客戶端通過與升級服務 器的信令交互獲知能夠提供軟體升級數據包的種子源,客戶端從種子源上下載所需數據。 通用客戶端之間P2P和斷點續傳進行軟體的自動升級,適應終端並發量大的情況,佔用出 口帶寬較小,減少伺服器的帶寬和負荷;而且可以提高軟體升級的下載速度和軟體升級成 功率,提高服務質量。


圖1為本發明軟體升級數據包的下載方法實施例-一流程圖;圖2為本發明軟體升級數據包的下載方法實施例—二信令圖;圖3為本發明客戶端間建立P2P網絡組實施例信令圖4為本發明P2S下載交互實施例信令圖;圖5為本發明P2P下載交互實施例信令圖;圖6為本發明用戶設備實施例一結構示意圖;圖7為本發明用戶設備實施例二結構示意圖;圖8為本發明升級伺服器實施例結構示意圖;圖9為本發明資源伺服器實施例結構示意圖;圖10為本發明軟體升級數據包下載系統實施例結構示意圖。
具體實施例方式
下面結合附圖和具體實施例進一步說明本發明實施例的技術方案。 圖l為本發明軟體升級數據包的下載方法實施例一流程圖,如圖l所示,該方法包

步驟100,接收升級伺服器發送的軟體升級資源列表,所述軟體升級資源列表包括
至少一個地址信息,每個地址信息對應的客戶端存儲有軟體升級數據包; 安裝有軟體的客戶端為了保證所安裝的軟體的版本是最新版本,可以周期性地從
升級伺服器中查詢獲知最新版本信息,若發現軟體版本有更新,則向升級伺服器發送進行
軟體版本升級的第二請求消息,所述第二請求消息包括新版本信息,以便於升級伺服器可
以根據該第二請求消息返回數據下載所用的軟體升級資源列表。升級伺服器接收到該第二
請求消息後,會根據所請求的新版本信息查詢種子源,也就是說查詢有哪些客戶端已經存
儲有與發送升級請求的客戶端所請求的新版本信息對應的軟體升級數據包,並將查詢獲得
的至少一個的種子源的地址信息合成軟體升級資源列表發送的發送請求的客戶端,供其進
行下載升級。由上可知所述軟體升級資源列表中包括至少一個地址信息,而且每個地址信
息均對應一個客戶端,某個客戶端上均存儲有發送升級請求的客戶端所需的軟體升級數據
包。客戶端之間是對等式的,升級伺服器可以通過廣播式進行種子源搜索,搜索的範圍可配
置,例如最多可以支持5個。 所述的升級伺服器僅用於對軟體的版本信息和種子源信息進行管理,並不為客戶
端提供軟體升級數據包的下載功能,客戶端通過升級伺服器的信令交互可以獲得能夠下載
所需軟體升級數據包的種子源信息,而數據包是由其他客戶端或功能實體提供。 步驟101,在點到點網絡中,根據所述地址信息向至少一個客戶端發送下載所述軟
件升級數據包的第一請求消息; 當發送軟體升級請求的客戶端接收到升級伺服器發送的軟體升級資源列表後,要 加入到點到點網絡即P2P網絡中,並在該P2P網絡中查找是否存在軟體升級資源列表中提 供的存儲有軟體升級數據包的客戶端,具體地為發送軟體升級請求的客戶端首先要加入 P2P網絡中的升級多播組中,在加入到軟體升級多播組後,向軟體升級資源列表中提供的、 同樣也加入到軟體升級多播組中的客戶端發送成為升級夥伴的第三請求消息,請求與該種 子源建立升級夥伴關係,作為種子源的客戶端接收到第三請求消息後,若同意建立升級夥 伴關係,則返回成功響應消息。發送軟體升級請求的客戶端接收作為種子源的客戶端發送 的第三請求消息的成功響應消息,並與其建立升級夥伴關係,即可以從該作為種子源的客 戶端上下載所需的軟體升級數據包。在P2P網絡中,各個客戶端之間是對等的,即客戶端既 可以是數據接收者,也可以是數據發送者。 發送軟體升級請求的客戶端與作為種子源的客戶端建立完成升級夥伴關係後,發 送軟體升級請求的客戶端向作為種子源的客戶端中的至少一個客戶端發送第一請求消息, 請求下載軟體升級數據包。具體為,發送軟體升級請求的客戶端根據軟體升級資源列表中 的地址信息,向至少一個客戶端發送所述第一請求消息,即可以是根據軟體升級資源列表 中一個地址信息向該地址信息對應的一個客戶端發送第一請求消息,也可以是根據軟體升 級資源列表中多個地址信息向該多個地址信息對應的多個客戶端發送第一請求消息。選擇 一個客戶端還是多個客戶端進行數據下載可以由發送軟體升級請求的客戶端根據實際情 況決定。 步驟102,接收所述客戶端根據所述第一請求消息發送的所述軟體升級數據包。
作為種子源的客戶端接收到第一請求消息後,將本身存儲的軟體升級數據包返回 給發送軟體升級請求的客戶端,發送軟體升級請求的客戶端接收種子源發送的軟體升級數
7據包。為了防止因異常情況發生數據下載中斷造成數據下載失敗,本實施例中在進行數據 下載的過程中可以採用斷點續傳技術,以實現在中斷後可以在所下載的數據的基礎上繼續 進行軟體升級數據包的下載,而無需重新下載,避免資源浪費,提高數據傳輸效率。發送軟 件升級請求的客戶端應用斷點續傳技術,接收種子源根據第一請求消息發送的軟體升級數 據包的分片數據。為了進一步提高數據的下載速度,可以將一數據包劃分成多個分片數據, 這樣,發送軟體升級請求的客戶端可以同時從多個不同的種子源客戶端上下載不同的分片 數據,通過並行下載的方式實現整個軟體升級數據包的下載。 在本實施例中為了避免提供軟體升級數據包的客戶端因異常下線,數據傳輸中 斷,造成資源的浪費,可以在進行軟體升級數據包過程的同時,由發送軟體升級請求的客戶 端向種子源客戶端發送心跳消息,監測該客戶端是否處於在線狀態,若種子源客戶端在線, 則在接收到心跳消息後,會即時返迴響應表明可以繼續提供數據的下載。若發送軟體升級 請求的客戶端在發送完心跳消息後沒有接收任何響應,則表明種子源客戶端已經異常下線 無法正常提供所需的軟體升級數據包,則發送軟體升級請求的客戶端可以向其他種子源客 戶端發送的下載請求實現數據下載。 本實施例提供的軟體升級數據包的下載方法中,客戶端通過與升級伺服器的信令 交互獲知能夠提供軟體升級數據包的種子源,客戶端從種子源上下載所需數據。通用客戶 端之間P2P和斷點續傳進行軟體的自動升級,適應終端並發量大的情況,佔用出口帶寬較 小,減少伺服器的帶寬和負荷;而且可以提高軟體升級的下載速度和軟體升級成功率,提高 服務質量。 在上述實施例中,若發送軟體升級請求的客戶端接收種子源客戶端根據第一請求 消息發送的軟體升級數據包發生中斷,則在P2P網絡中,發送軟體升級請求的客戶端根據 地址信息向軟體升級資源列表中的其他客戶端發送下載軟體升級數據包中未下載的分片 數據的第四請求消息,也就是說當一個種子源客戶端因異常下線導致數據包傳輸中斷,則 可以在軟體升級資源列表中查找另一個能夠提供軟體升級數據包的種子源客戶端,並根據 對應的地址信息發送第四請求消息,在已經下載的分片數據的基礎上請求下載尚未下載的 分片數據。另一種子源客戶端接收到第四請求消息後,將返回所請求的分片數據,發送軟體 升級請求的客戶端接收另一種子源客戶端發送的所述分片數據。 若發送軟體升級請求的客戶端接收種子源客戶端根據第一請求消息發送的軟體 升級數據包括發生中斷,而且軟體升級資源列表中沒有能夠提供軟體升級數據包的種子源 客戶端時,發送軟體升級請求的客戶端向資源伺服器發送下載軟體升級數據包中未下載的 分片數據的第五請求消息,資源伺服器接收到第五請求消息後,返回存儲的所請求的軟體 升級數據包的分片數據,發送軟體升級請求的客戶端在已經下載的分片數據的基礎上接收 資源伺服器發送的尚未下載的分片數據。 其中,資源伺服器中存儲有各種軟體新版本所對應的軟體升級數據包,當P2P網 絡中的種子源客戶端不能為發送的請求的客戶端提供所需數據的時候,發送的請求的客戶 端可以直接向資源伺服器發送數據請求,並從中獲得所需數據。本實施例中,將現有用於 提供軟體升級服務的伺服器進行分離,形成資源伺服器與升級伺服器,所述的升級伺服器 僅用於對軟體的版本信息和種子源信息進行管理,負責與客戶端進行信令交互;而資源服 務器用於對軟體升級數據包進行管理,通過資源伺服器與升級伺服器實現數據和信令的分離,可實現並行擴展。 本實施例提供一種基於P2P網絡的客戶端軟體的自動升級,利用已升級了或已部 分升級的客戶端之間相互進行斷點續傳進行自動升級,充分利用客戶端的帶寬資源,大大 降低了資源伺服器的負荷,減少帶寬的佔有率。既降低了伺服器的運營成本,還能夠提高服
務質量。 圖2為本發明軟體升級數據包的下載方法實施例二信令圖,如圖2所示,該方法包 括 步驟la,客戶端A向升級伺服器查詢新版本,並攜帶當前版本號; 步驟2a,升級伺服器返迴響應消息,攜帶最新版本號; 步驟3a,客戶端A根據最新版本號判斷是否需要進行軟體升級; 步驟4a,若需要,則向升級伺服器發送獲取新版本的請求消息; 步驟5a,升級伺服器根據請求消息合成軟體升級資源列表,該軟體升級資源列表
中包括數個存儲有軟體升級數據包的客戶端的地址信息; 步驟6a,升級伺服器向客戶端A發送軟體升級資源列表; 步驟7a,客戶端A加入P2P網絡; 步驟8a,客戶端A判斷P2P網絡中是否存在擁有最新版本的夥伴客戶端; 步驟9a,若存在,則向客戶端B發送支持斷點續傳下載數據請求; 步驟10a,客戶端B對請求進行響應,返回下載數據; 步驟lla,數據下載過程中,客戶端A向客戶端B發送心跳消息; 步驟12a,客戶端A通過心跳消息獲知客戶端B已不在P2P網絡中,則向客戶端B
發送斷開P2P連接的消息; 步驟13a,若客戶端A上數據下載尚未完成,則繼續建立新的P2P進行下載;
步驟14a,在客戶端B已下載的文件基礎上,繼續向客戶端C發送斷點續傳下載數 據請求; 步驟15a,客戶端C對請求進行響應,返回下載數據; 步驟19a,判斷是否下載完畢; 步驟20a,若下載完畢,則再進行數據校驗; 步驟21a,校驗成功後,提示用戶進行軟體升級。 在上述實施例中,若客戶端A的數據下載尚未完成,也可以不在例如客戶端C等其 它種子源上下載數據,而直接向資源伺服器請求下載未下載的數據,因此可以應用以下的 步驟16a、步驟17a和步驟18a替換上述流程中的步驟13a、步驟14a和步驟15a,具體為
步驟16a,若在客戶端A上數據下載尚未完成,則從資源伺服器上進行數據下載;
步驟17a,在客戶端B已下載的文件基礎上,繼續向資源伺服器發送斷點續傳下載 數據請求; 步驟18a,資源伺服器對請求進行響應,返回下載數據; 客戶端A進行完軟體升級後,將升級從成功信息和升級後的軟體版本信息發送給 升級伺服器,作為P2P種子源為其它客戶端提供軟體升級數據包。 應該說明的是在上述實施例中,客戶端A向客戶端B發送心跳消息是在整個數據 下載流程中不間斷地進行,以保證數據有效地下載。
9
圖3為本發明客戶端間建立P2P網絡組實施例信令圖,如圖3所示,該方法包括 步驟lb,客戶端A、客戶端B和客戶端C分別加入到升級多播組中; 步驟2b,客戶端A進行組播尋找升級夥伴,向客戶端C發送加為升級夥伴請求; 步驟3b,客戶端C判斷是否同意將客戶端A加為升級夥伴; 步驟4b,若同意,則向客戶端A發送同意加為升級夥伴的響應消息; 步驟5b,客戶端A將客戶端C加為升級夥伴; 步驟6b,客戶端A進行組播尋找升級夥伴,向客戶端B發送加為夥伴請求;
步驟7b,客戶端B判斷是否同意將客戶端A加為升級夥伴;
步驟8b,若同意,則向客戶端A發送同意加為升級夥伴的響應消息;
步驟9b,客戶端A將客戶端B加為升級夥伴。 本實施例子中客戶端A向客戶端B和客戶端C發送加為升級夥伴請求並不分先後 順序,也可以同時進行。這裡的升級多播組可以是虛擬組,在各客戶端均加入到P2P網絡的 升級多播組中後,其中的任意一個客戶端均可以向其它其客戶端請求下載數據,而每一個 客戶端均可以作為種子源為其它客戶端提供所需的數據。 圖4為本發明P2S下載交互實施例信令圖,如圖4所示,該方法包括 步驟lc,客戶端向資源伺服器發送下載軟體升級數據包的分片數據即文件片段的
請求消息; 步驟2c,資源伺服器向客戶端發送所需的文件片段;
步驟3c,客戶端判斷是否已經下載了所有的文件片段;
步驟4c,若已經下載完所有的文件片段,則對文件進行校驗;
步驟5c,若校驗失敗則要重新進行文件數據的下載;
步驟6c,若校驗成功則提示用戶安裝該文件,進行軟體升級。 本實施例提供的方法中,在升級伺服器為數據下載請求客戶端發送的軟體升級資 源列表中涉及的種子源客戶端由於下線等原因不能為請求數據下載的客戶端提供所需數 據時,客戶端與資源伺服器進行交互從資源伺服器中下載所需數據。當然客戶端也可以直 接與資源伺服器交互進行數據下載,採用何種數據下載方式可以依據實際網絡資源分配和 負載情況而定。 圖5為本發明P2P下載交互實施例信令圖,如圖5所示,該方法包括 步驟ld,客戶端A向客戶端B發送數據請求消息,請求下載軟體升級數據包的分片
數據; 步驟2d,客戶端B向客戶端A返回數據請求響應消息,攜帶所需的分片數據; 步驟3d,客戶端A向客戶端B發送心跳消息,監測客戶端B是否在線; 步驟4d,客戶端B向客戶端A返回心跳消息; 步驟5d,客戶端A判斷是否已經下載了所有的分片數據; 步驟6d,若已經下載完所有的分片數據,則對文件進行校驗; 步驟7d,若校驗成功則提示用戶安裝該文件,進行軟體升級。 步驟8d,客戶端A向客戶端B發送斷開P2P連接的消息。 客戶端A進行完軟體升級後,將升級從成功信息和升級後的軟體版本信息發送給 升級伺服器,作為P2P種子源為其它客戶端提供軟體升級數據包。
應該說明的是在上述實施例中,客戶端A向客戶端B發送心跳消息是在整個下載 流程中不間斷地進行,以保證數據有效地下載。 上述各實施例中通用客戶端之間P2P和斷點續傳進行軟體的自動升級,適應終端
並發量大的情況,充分利用客戶端的帶寬資源,減少伺服器的帶寬和負荷;而且可以提高軟
件升級的下載速度和軟體升級成功率,既降低了伺服器的運營成本,還可以提高服務質量。 本領域普通技術人員可以理解實現上述方法實施例的全部或部分步驟可以通過
程序指令相關的硬體來完成,前述的程序可以存儲於一計算機可讀取存儲介質中,該程序
在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括R0M、 RAM、磁碟或者
光碟等各種可以存儲程序代碼的介質。 圖6為本發明用戶設備實施例一結構示意圖,如圖6所示,該用戶設備包括第一接 收模塊11和第一數據請求模塊12,其中第一接收模塊11用於接收升級伺服器發送的軟體 升級資源列表,該軟體升級資源列表包括至少一個地址信息,每個地址信息對應的客戶端 存儲有軟體升級數據包;第一數據請求模塊12用於在P2P網絡中,根據該地址信息向至少 一個客戶端發送下載軟體升級數據包的第一請求消息,並接收客戶端根據第一請求消息發 送的軟體升級數據包。 用戶設備若發現自身所維護的軟體的當前版本與最新版本不同,則向升級伺服器 發送第二請求消息,請求進行軟體版本升級。升級伺服器接收到請求消息後,會根據所請求 的新版本信息查詢種子源,也就是說查詢有哪些客戶端已經存儲有與發送升級請求的客戶 端所請求的新版本信息對應的軟體升級數據包,並將查詢獲得的至少一個種子源的地址信 息合成軟體升級資源列表發送的發送請求的客戶端,供其進行下載升級。由上可知所述軟 件升級資源列表中包括至少一個地址信息,而且每個地址信息均對應一個客戶端,某個客 戶端上均存儲有發送升級請求的客戶端所需的軟體升級數據包。第一接收模塊11接收到 升級伺服器發送的軟體升級資源列表後,通過第一數據請求模塊12向軟體升級資源列表 中涉及的客戶端中的至少一個客戶端發送下載軟體升級數據包的第一請求消息,具體為, 用戶設備即發送軟體升級請求的客戶端根據軟體升級資源列表中的地址信息,向至少一個 客戶端發送所述第一請求消息,即可以是根據軟體升級資源列表中一個地址信息向該地址 信息對應的一個客戶端發送第一請求消息,也可以是根據軟體升級資源列表中多個地址信 息向該多個地址信息對應的多個客戶端發送第一請求消息。選擇一個客戶端還是多個客戶 端進行數據下載可以由發送軟體升級請求的用戶設備根據實際情況決定。客戶端根據請求 返回所需數據後,用戶設備通過第一數據請求模塊12接收下載軟體升級數據包的各分片 數據。 本實施例所述的用戶設備也可稱為客戶端,其通過與升級伺服器的信令交互獲知 能夠提供軟體升級數據包的種子源,客戶端從種子源上下載所需數據。通用客戶端之間P2P 和斷點續傳進行軟體的自動升級,適應終端並發量大的情況,佔用出口帶寬較小,減少服務 器的帶寬和負荷;而且可以提高軟體升級的下載速度和軟體升級成功率,提高服務質量。
圖7為本發明用戶設備實施例二結構示意圖,如圖7所示,該用戶設備包括第一接 收模塊11和第一數據請求模塊12,還包括版本升級請求模塊13用於向升級伺服器發送進 行軟體版本升級的第二請求消息,該第二請求消息包括新版本信息,以便於升級伺服器根 據所述第二請求消息返回軟體升級資源列表。上述實施例中涉及的用戶設備要向升級伺服器查詢軟體最新的版本信息可以通過版本升級請求模塊13完成。 當用戶設備從一個種子源客戶端請求軟體升級數據包中斷,則可以通過第一數據 請求模塊12在P2P網絡中,根據軟體升級資源列表中的地址信息向其他客戶端發送下載該 軟體升級數據包中未下載的分片數據的第四請求消息,其它客戶端繼續根據請求向用戶設 備發送所需數據,用戶設備通過第一數據請求模塊12接收其他客戶端根據第四請求消息 發送的分片數據。 當用戶設備從一個種子源客戶端請求軟體升級數據包中斷,而且P2P網絡中沒有 能夠為該用戶設備提供所需數據的客戶端時,用戶設備還可以通過第一數據請求模塊12 向資源伺服器發送下載該軟體升級數據包中未下載的分片數據的第五請求消息,並接收資 源伺服器根據第五請求消息發送的所需的分片數據。 用戶設備中還可以包括一個用於存儲所述軟體升級數據包的第一存儲模塊14,當 用戶需要進行軟體升級時,根據升級指示從第一存儲模塊14中獲取升級文件進行軟體升 級。 本實施例所述的用戶設備可以通過向不同的客戶端或升級伺服器請求數據,適應 不同軟體升級情況。通用客戶端之間P2P和斷點續傳進行軟體的自動升級,適應終端並發 量大的情況,減少伺服器的帶寬和負荷;而且可以提高軟體升級的下載速度和軟體升級成 功率,提高服務質量。 圖8為本發明升級伺服器實施例結構示意圖,如圖8所示,該升級伺服器包括第二 接收模塊21和第一發送模塊22,其中第二接收模塊21用於接收用戶設備發送的進行軟體 版本升級的第二請求消息,該第二請求消息包括新版本信息;第一發送模塊22用於根據該 第二請求消息向用戶設備發送軟體升級資源列表,該軟體升級資源列表包括數個客戶端的 地址信息,客戶端存儲有與新版本信息對應的軟體升級數據包。 具體地,用戶設備請求獲得新版本信息,升級伺服器中的第二接收模塊21接收到 該請求後,將攜帶的新版本信息發送給第一發送模塊22,第一發送模塊22根據用戶設備所 需的新版本信息合成軟體升級資源列表,在該軟體升級資源列表中包括數個能夠為用戶設 備提供其所需的軟體升級數據包的地址信息,用戶設備可以根據該地址信息從對應的客戶 端上獲取軟體升級數據包。 本實施例提供的升級伺服器實現對升級版本和種子源客戶端信息的管理,僅與用 戶設備進行信令交互,而不提供數據下載服務,降低升級伺服器的負荷,用戶設備在點到點 網絡中從客戶端上下載所需數據,進一步提高用戶設備數據下載的並發性和數據下載的速 度,提高軟體升級成功率,提高服務質量。 圖9為本發明資源伺服器實施例結構示意圖,如圖9所示,該資源伺服器包括第三 接收模塊31和第二發送模塊32,其中第三接收模塊31用於接收用戶設備發送的下載軟體 升級數據包中分片數據的第五請求消息;第二發送模塊32用於根據第五請求消息向用戶 設備發送分片數據。 具體地,當用戶設備根據升級伺服器發送的軟體升級資源列表中的客戶端均不能 為用戶設備提供數據,則用戶設備可以在原有下載數據的基礎上,轉向升級伺服器請求下 載尚未完成的數據。資源伺服器中的第三接收模塊31接收用戶設備的請求後,根據請求通 過第二發送模塊32向用戶設備發送所需的分片數據。資源伺服器中還可以包括用於存儲
12所述軟體升級數據包的第二存儲模塊33,第二發送模塊32可以從第二存儲模塊33獲取相 應數據向用戶設備發送。 本實施例提供的資源伺服器實現軟體升級數據包的文件管理,不負責與用戶設備 進行信令交互,僅用於為用戶提供數據資源,降低資源伺服器的負荷,用戶設備在點到點網 絡中從客戶端上下載所需數據,進一步提高用戶設備數據下載的並發性和數據下載的速 度,提高軟體升級成功率,提高服務質量。 圖IO為本發明軟體升級數據包下載系統實施例結構示意圖,如圖IO所示,該軟體 升級數據包下載系統包括升級伺服器2和處於點到點網絡中的數個客戶端l,其中升級服 務器2用於接收用戶設備發送的進行軟體版本升級的第二請求消息,所述第二請求消息包 括新版本信息,並根據所述第二請求消息向用戶設備發送軟體升級資源列表,所述軟體升 級資源列表包括數個客戶端的地址信息,客戶端1存儲有與所述新版本信息對應的軟體升 級數據包;客戶端1用於接收用戶設備根據所述地址信息發送的下載所述軟體升級數據包 的第一請求消息,並根據所述第一請求消息發送的所存儲的所述軟體升級數據包。所述的 用戶設備特指請求進行軟體升級的客戶端。 系統還包括資源伺服器3。資源伺服器3用於接收用戶設備發送的下載所述軟體 升級數據包中分片數據的第五請求消息,並根據所述第五請求消息向用戶設備發送所存儲 的所述分片數據。 本實施例中涉及的升級伺服器和資源伺服器可以採用前述各實施例提供的升級 伺服器和資源伺服器,此處不再贅述。 本實施例提供的軟體升級數據包下載系統中,將原有的一個伺服器劃分成兩個獨 立的伺服器,並分別用於完成信令和數據的交互,實現了信令和數據控制的分離,可實現並 行擴展,提高自動升級速度和效率,減少伺服器的帶寬和負荷,提高軟體升級成功率,提高 服務質量。 最後應說明的是以上實施例僅用以說明本發明的技術方案,而非對其限制;盡 管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解其依然 可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特徵進行等同替 換;而這些修改或者替換,並不使相應技術方案的本質脫離本發明各實施例技術方案的精 神和範圍。
權利要求
一種軟體升級數據包的下載方法,其特徵在於,包括接收升級伺服器發送的軟體升級資源列表,所述軟體升級資源列表包括至少一個地址信息,每個地址信息對應的客戶端存儲有軟體升級數據包;在點到點網絡中,根據所述地址信息向至少一個客戶端發送下載所述軟體升級數據包的第一請求消息;接收所述客戶端根據所述第一請求消息發送的所述軟體升級數據包。
2. 根據權利要求1所述的軟體升級數據包的下載方法,其特徵在於,所述接收升級服 務器發送的軟體升級資源列表之前包括向所述升級伺服器發送進行軟體版本升級的第二請求消息,以便於所述升級伺服器根 據所述第二請求消息返回所述軟體升級資源列表,所述第二請求消息包括新版本信息。
3. 根據權利要求1所述的軟體升級數據包的下載方法,其特徵在於,所述接收升級服 務器發送的軟體升級資源列表之後,在點到點網絡中,根據所述地址信息向至少一個客戶 端發送下載所述軟體升級數據包的第一請求消息之前包括加入到所述點到點網絡中的軟體升級多播組,並向所述軟體升級資源列表中的處於所 述軟體升級多播組的所述客戶端發送成為升級夥伴的第三請求消息;接收所述客戶端發送的所述第三請求消息的成功響應消息,並與所述客戶端建立升級 夥伴關係。
4. 根據權利要求1所述的軟體升級數據包的下載方法,其特徵在於,所述接收所述客 戶端根據所述第一請求消息發送的所述軟體升級數據包,包括應用斷點續傳技術,接收所述客戶端根據所述第一請求消息發送的所述軟體升級數據 包的分片數據。
5. 根據權利要求4所述的軟體升級數據包的下載方法,其特徵在於,所述方法還包括 在接收所述客戶端發送分片數據的過程中,向所述客戶端發送用於監測所述客戶端是否在線的心跳消息。
6. 根據權利要求1至5所述的任一軟體升級數據包的下載方法,其特徵在於,若所述接 收所述客戶端根據所述第一請求消息發送的所述軟體升級數據包發生中斷,則所述方法還 包括在所述點到點網絡中,根據所述地址信息向所述軟體升級資源列表中的其他客戶端發 送下載所述軟體升級數據包中未下載的分片數據的第四請求消息;接收所述其他客戶端根據所述第四請求消息發送的所述分片數據。
7. 根據權利要求1至5所述的任一軟體升級數據包的下載方法,其特徵在於,若所述接 收所述客戶端根據所述第一請求消息發送的所述軟體升級數據包發生中斷,則所述方法還 包括向資源伺服器發送下載所述軟體升級數據包中未下載的分片數據的第五請求消息; 接收所述資源伺服器根據所述第五請求消息發送的所述分片數據。
8. —種用戶設備,其特徵在於,包括第一接收模塊,用於接收升級伺服器發送的軟體升級資源列表,所述軟體升級資源列 表包括至少一個地址信息,每個地址信息對應的客戶端存儲有軟體升級數據包;第一數據請求模塊,用於在點到點網絡中,根據所述地址信息向至少一個客戶端發送下載所述軟體升級數據包的第一請求消息,並接收所述客戶端根據所述第一請求消息發送 的所述軟體升級數據包。
9. 根據權利要求8所述的用戶設備,其特徵在於,還包括版本升級請求模塊,用於向所述升級伺服器發送進行軟體版本升級的第二請求消息, 以便於所述升級伺服器根據所述第二請求消息返回所述軟體升級資源列表,所述第二請求 消息包括新版本信息。
10. 根據權利要求8或9所述的用戶設備,其特徵在於,所述第一數據請求模塊還用於在所述點到點網絡中,根據所述地址信息向所述軟體升級資源列表中的其他客戶端發 送下載所述軟體升級數據包中未下載的分片數據的第四請求消息,並接收所述其他客戶端 根據所述第四請求消息發送的所述分片數據。
11. 根據權利要求8或9所述的用戶設備,其特徵在於,所述第一數據請求模塊還用於向資源伺服器發送下載所述軟體升級數據包中未下載的分片數據的第五請求消息,並 接收所述資源伺服器根據所述第五請求消息發送的所述分片數據。
12. 根據權利要求8或9所述的用戶設備,其特徵在於,還包括第一存儲模塊,用於存儲所述軟體升級數據包。
13. —種升級伺服器,其特徵在於,包括第二接收模塊,用於接收用戶設備發送的進行軟體版本升級的第二請求消息,所述第 二請求消息包括新版本信息;第一發送模塊,用於根據所述第二請求消息向所述用戶設備發送軟體升級資源列表, 所述軟體升級資源列表包括數個客戶端的地址信息,所述客戶端存儲有與所述新版本信息 對應的軟體升級數據包。
14. 一種資源伺服器,其特徵在於,包括第三接收模塊,用於接收用戶設備發送的下載所述軟體升級數據包中分片數據的第五 請求消息;第二發送模塊,用於根據所述第五請求消息向所述用戶設備發送所述分片數據。
15. 根據權利要求14所述的資源伺服器,其特徵在於,還包括 第二存儲模塊,用於存儲所述軟體升級數據包。
16. —種軟體升級數據包下載系統,其特徵在於,包括升級伺服器,用於接收用戶設備發送的進行軟體版本升級的第二請求消息,所述第二 請求消息包括新版本信息,並根據所述第二請求消息向所述用戶設備發送軟體升級資源列 表,所述軟體升級資源列表包括數個客戶端的地址信息,所述客戶端存儲有與所述新版本 信息對應的軟體升級數據包;處於點到點網絡中的數個客戶端,用於接收所述用戶設備根據所述地址信息發送的下 載所述軟體升級數據包的第一請求消息,並根據所述第一請求消息發送的所存儲的所述軟 件升級數據包。
17. 根據權利要求16所述的軟體升級數據包下載系統,其特徵在於,還包括 資源伺服器,用於接收所述用戶設備發送的下載所述軟體升級數據包中分片數據的第五請求消息,並根據所述第五請求消息向所述用戶設備發送所存儲的所述分片數據。
全文摘要
本發明實施例提供一種軟體升級數據包的下載方法和裝置。該方法包括接收升級伺服器發送的軟體升級資源列表,軟體升級資源列表包括至少一個地址信息,每個地址信息對應的客戶端存儲有軟體升級數據包;在點到點網絡中,根據地址信息向至少一個客戶端發送下載軟體升級數據包的第一請求消息;接收客戶端根據第一請求消息發送的軟體升級數據包。本發明實施例中客戶端通過與升級伺服器的信令交互獲知能夠提供軟體升級數據包的種子源,客戶端從種子源上下載所需數據。通用客戶端之間P2P和斷點續傳進行軟體升級,適應終端並發量大的情況,佔用出口帶寬較小,減少伺服器的帶寬和負荷;而且可以提高軟體升級的下載速度和軟體升級成功率,提高服務質量。
文檔編號H04L12/24GK101795203SQ20091000711
公開日2010年8月4日 申請日期2009年2月3日 優先權日2009年2月3日
發明者梁秀品 申請人:華為軟體技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀