專利名稱:網(wǎng)絡(luò)設(shè)備在線升級方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)設(shè)備的升級維護技術(shù),尤其是涉及網(wǎng)絡(luò)設(shè)備的在線升級維 護方法及系統(tǒng)。
背景技術(shù):
網(wǎng)絡(luò)設(shè)備在線升級是指利用遠(yuǎn)程管理平臺或其它遠(yuǎn)程操作的方式,通過網(wǎng) 絡(luò),對正在工作的網(wǎng)絡(luò)設(shè)備的進(jìn)行軟件升級操作。該功能是電信級網(wǎng)絡(luò)設(shè)備必 須具備的功能。
分布式多點接入的網(wǎng)絡(luò)設(shè)備,如機頂盒,視頻監(jiān)控攝像機,家庭網(wǎng)關(guān)等, 通常分布面廣而分散,對于這樣的設(shè)備進(jìn)行升級,通常是通過電信的集中管理 平臺進(jìn)行。然而因為這些設(shè)備接入點多,工作環(huán)境復(fù)雜,有些還屬于高位固定 安裝,所以在線升級的可靠性和成功率顯得尤其重要。
現(xiàn)有技術(shù)中,在線升級一般都是通過網(wǎng)絡(luò)和基于TCP/IP的網(wǎng)絡(luò)傳輸協(xié)議, 用FTP (File Transfer Protocol,文件傳輸協(xié)議)、TFTP(Trivial File Transfer Protocol,簡單文件傳輸協(xié)議)等傳輸協(xié)議的軟件模塊將升級文件下載到待升級 設(shè)備的內(nèi)存中,再由設(shè)備執(zhí)行向非易失存儲器,如閃存(FLASH)等進(jìn)行擦除 舊文件,寫入新文件的操作。
現(xiàn)有的網(wǎng)絡(luò)設(shè)備在線升級功能,雖然大大減小了到實地進(jìn)行升級的負(fù)擔(dān), 卻存在一個很大的隱患,就是在擦寫FLASH的過程必須連續(xù)完成,系統(tǒng)不能 出現(xiàn)任何意外情況,如停電,系統(tǒng)突然不穩(wěn)定死機,及其他不當(dāng)操作等等。這 將導(dǎo)致升級文件寫入工作意外中止。因為FLASH上存儲的關(guān)鍵數(shù)據(jù)(主要是 搡作系統(tǒng)數(shù)據(jù))不完整,升級失敗后,設(shè)備將不能正常工作,而必須返回原廠 重新刷寫軟件后,才能夠恢復(fù)功能。
另外,根據(jù)設(shè)備CPU的性能不同,設(shè)備的功能不同,F(xiàn)LASH的擦寫速度也有所不同,升級過程一般需要3-10多分鐘的情況都非常多見,相對于復(fù)雜環(huán) 境下,這個升級的時間還是比較長的。升級時間越長,出現(xiàn)故障導(dǎo)致升級失敗 的可能性就越大。
針對高可靠性升級的要求,現(xiàn)有技術(shù)中釆用了映像文件雙備份的方法。即
在升級之前,將整個系統(tǒng)的軟件映像先備份到一個備用存儲器(如FLASH)上, 再對主存儲器進(jìn)行舊軟件映像的擦除和新軟件映像的寫入工作。對于這樣的設(shè) 備,其引導(dǎo)程序LOADER或是BIOS會在啟動時進(jìn)行判斷, 一旦發(fā)現(xiàn)主存儲器 (FLASH)上的映像文件有問題,不能正常啟動,就切至備用存儲器,引導(dǎo)其 上存儲的軟件進(jìn)行工作。這種方法非??煽浚秉c是用了兩片存儲器,增加 了成本,尤其對于一些對成本敏感的設(shè)備而言不是最理想的方案。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種網(wǎng)絡(luò)設(shè)備在線升級方法及系統(tǒng),可以
提高網(wǎng)絡(luò)設(shè)備升級的可靠性;同時,也使得網(wǎng)絡(luò)設(shè)備在線升級時可以盡可能減 少升級所占用的時間,減少意外的發(fā)生。
為了解決上述技術(shù)問題,本發(fā)明提供了一種網(wǎng)絡(luò)設(shè)備在線升級方法,包括
以下步驟將網(wǎng)絡(luò)設(shè)備的軟件映像按照功能分成操作系統(tǒng)映像和應(yīng)用程序映像,
分別存儲在網(wǎng)絡(luò)設(shè)備非易失存儲器的不同區(qū)域;網(wǎng)絡(luò)設(shè)備進(jìn)入正常工作流程, 接收到升級指令后,下載應(yīng)用程序映像的升級文件;擦除非易失存儲器中原有 的應(yīng)用程序映像并寫入所述下載到的應(yīng)用程序映像的升級文件,完成升級。
上述方法一個優(yōu)選的方案是上述網(wǎng)絡(luò)設(shè)備配置升級狀態(tài)參數(shù),并將升級 狀態(tài)參數(shù)的初始狀態(tài)設(shè)為不需要升級;網(wǎng)絡(luò)設(shè)備接收到升級指令后,修改升級 狀態(tài)為需要升級;完成升級后,網(wǎng)絡(luò)設(shè)備將升級狀態(tài)修改為不需要升級。
根據(jù)上述優(yōu)選方案,進(jìn)一步的,上述網(wǎng)絡(luò)設(shè)備系統(tǒng)啟動后,首先檢查升級 狀態(tài)參數(shù),如果升級狀態(tài)參數(shù)為不需要升級,網(wǎng)絡(luò)設(shè)備進(jìn)入正常工作流程;如果升級狀態(tài)參數(shù)為需要升級,執(zhí)行上述下載升級文件的步驟及其后續(xù)步驟。
上述方法另一個優(yōu)選的方案是上述網(wǎng)絡(luò)設(shè)備完成升級后,向遠(yuǎn)程控制平 臺發(fā)送升級成功消息。
上述方法再一個優(yōu)選的方案是上述網(wǎng)絡(luò)設(shè)備下載完所述應(yīng)用程序映像的 升級文件后,首先檢測升級文件完整性,如果升級文件不完整,重新下載所述 應(yīng)用程序映像的升級文件;如果升級文件完整,執(zhí)行所述擦除非易失存儲器中 原有的應(yīng)用程序映像并寫入所述下載到的應(yīng)用程序映像的升級文件的步驟。
本發(fā)明還提供了一種網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng),包括非易失存儲器,分成 至少兩個區(qū)域,分別用于存儲操作系統(tǒng)映像和應(yīng)用程序映像;網(wǎng)絡(luò)基本功能模 塊,用于實現(xiàn)網(wǎng)絡(luò)設(shè)備與遠(yuǎn)程控制臺之間的網(wǎng)絡(luò)通信;下載模塊,用于通過所 述網(wǎng)絡(luò)基本功能模塊從所述遠(yuǎn)程控制臺下載升級文件;升級維護模塊,用于在 接收到升級指令后,調(diào)用所述下載模塊下載升級文件,擦除所述非易失存儲器 上存儲的原有應(yīng)用程序映像并寫入下載到的升級文件。
上述系統(tǒng)的一個優(yōu)選的方案是上述升級維護模塊還用于設(shè)置升級狀態(tài)參 數(shù),并將升級狀態(tài)參數(shù)的初始狀態(tài)設(shè)為不需要升級;升級維護模塊接收到升級 指令后,首先修改升級狀態(tài)為需要升級;完成升級后,升級維護模塊將升級狀 態(tài)修改為不需要升級。
根據(jù)上述優(yōu)選方案,進(jìn)一步的,上述系統(tǒng)還包括啟動配置模塊,用于當(dāng) 網(wǎng)絡(luò)設(shè)備系統(tǒng)啟動后,檢查升級狀態(tài),如果不需要升級,控制上述網(wǎng)絡(luò)設(shè)備進(jìn) 入正常工作流程;如果需要升級,啟動升級維護模塊,執(zhí)行升級操作。
上述系統(tǒng)的另 一個優(yōu)選的方案是上述升級維護模塊還用于在升級完成后, 向所述遠(yuǎn)程控制平臺發(fā)送升級成功消息。
上述系統(tǒng)的再一個優(yōu)選的方案是上述升級維護模塊還用于檢測上述下載 的升級文件是否完整,如果升級文件不完整,調(diào)用下載模塊重新下載升級文件; 如果升級文件完整,執(zhí)行上述擦除非易失存儲器上存儲的原有應(yīng)用程序映像寫入下載到的升級文件的操作。
本發(fā)明利用網(wǎng)絡(luò)設(shè)備在線升級時多數(shù)都是升級應(yīng)用程序的規(guī)律,升級時只 對相應(yīng)的應(yīng)用程序進(jìn)行升級,這樣一旦出現(xiàn)升級失敗的情況,操作系統(tǒng)能再次 進(jìn)行升級,不必因為在線升級失敗,而返廠維修,這樣就大大提高了網(wǎng)絡(luò)設(shè)備 在線升級的可靠性,并使管理平臺可以在終端設(shè)備運行環(huán)境比較復(fù)雜的情況下 也能執(zhí)行批量在線升級,并大大減少工程維護的工作量,從而使網(wǎng)絡(luò)設(shè)備在升 級功能上擁有高可運行維護的電信級產(chǎn)品特質(zhì);并且每次升級時只對相應(yīng)的應(yīng) 用程序進(jìn)行升級,而不是像通常的升級過程是對非易失存儲器中的整個軟件映 像全部擦去升級,因此可以減少升級所占用的時間,減少意外的發(fā)生,進(jìn)一步 提高了網(wǎng)絡(luò)設(shè)備在線升級的可靠性。
圖i是本發(fā)明的網(wǎng)絡(luò)設(shè)備非易失存儲器中的軟件映像示意圖; 圖2是本發(fā)明的網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng)的模塊圖; 圖3是本發(fā)明的網(wǎng)絡(luò)設(shè)備在線升級方法的流程圖。
具體實施例方式
下面結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步說明,以使本領(lǐng)域的技術(shù)人 員可以更好的理解本發(fā)明并能予以實施,但所舉實施例不作為對本發(fā)明的限定。
如圖1所示,為本發(fā)明的一個網(wǎng)絡(luò)設(shè)備實施例的FLASH的存儲狀態(tài)示意 圖,網(wǎng)絡(luò)設(shè)備的FLASH被分成至少兩個區(qū)域,分別用于存儲網(wǎng)絡(luò)設(shè)備所使用 的軟件映像的搡作系統(tǒng)映像和應(yīng)用程序映像。在本實施例中,網(wǎng)絡(luò)設(shè)備的 FLASH還包括第三個區(qū)域,用于存儲系統(tǒng)引導(dǎo)程序。
如圖2所示,為本發(fā)明的網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng)的一個實施例的系統(tǒng)模塊圖。在本實施例中,網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng)包括非易失存儲器、網(wǎng)絡(luò)基本功能 模塊、下載模塊及升級維護模塊。其中,非易失存儲器被分成至少兩個區(qū)域, 分別用于存儲網(wǎng)絡(luò)設(shè)備所使用軟件映像的操作系統(tǒng)映像和應(yīng)用程序映像;網(wǎng)絡(luò)
基本功能模塊用于實現(xiàn)網(wǎng)絡(luò)設(shè)備與遠(yuǎn)程控制臺之間的網(wǎng)絡(luò)通信;下載模塊,用
于通過所述網(wǎng)絡(luò)基本功能模塊從所述遠(yuǎn)程控制臺下載升級文件,下載模塊可以
采用FTP協(xié)議、TCP/IP協(xié)議、TFTP協(xié)議或者其它可實現(xiàn)下載功能的協(xié)議實現(xiàn)
下載;升級維護模塊,用于在接收到升級指令后,調(diào)用所述下載模塊下載升級 文件,擦除所述非易失存儲器上存儲的原有應(yīng)用程序映像并寫入下載到的升級 文件。其中,上述的網(wǎng)絡(luò)基本功能模塊、下載模塊及升級維護模塊可以作為搡 作系統(tǒng)映像的一部分。另外,操作系統(tǒng)映像還包括操作系統(tǒng)內(nèi)核,用于實現(xiàn)操 作系統(tǒng)的基本功能。
另外,本發(fā)明的網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng)中,升級維護模塊還用于設(shè)置升級 狀態(tài)參數(shù),并將升級狀態(tài)參數(shù)的初始狀態(tài)設(shè)為不需要升級;所述升級維護模塊 接收到升級指令后,首先修改升級狀態(tài)為需要升級;完成升級后,所述升級維 護模塊將升級狀態(tài)修改為不需要升級。相應(yīng)地,網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng)還可以 包括啟動配置模塊,用于當(dāng)網(wǎng)絡(luò)設(shè)備系統(tǒng)啟動后,檢查升級狀態(tài),如果不需要 升級,控制所述網(wǎng)絡(luò)設(shè)備進(jìn)入正常工作流程;如果需要升級,啟動所述升級維 護模塊,執(zhí)行升級操作。
如圖3所示,為本發(fā)明的網(wǎng)絡(luò)設(shè)備在線升級方法的一個實施例的流程圖。 在本發(fā)明的網(wǎng)絡(luò)設(shè)備在線升級方法中,首先要將網(wǎng)絡(luò)設(shè)備的軟件映像按照功能 分成操作系統(tǒng)映像和應(yīng)用程序映像,分別存儲在網(wǎng)絡(luò)設(shè)備非易失存儲器的不同 區(qū)域,在需要升級時,由管理員在遠(yuǎn)程控制器準(zhǔn)備應(yīng)用程序映像的升級文件, 然后向網(wǎng)絡(luò)設(shè)備發(fā)送升級指令。網(wǎng)絡(luò)設(shè)備預(yù)先配置一升級狀態(tài)參數(shù),并將初始 值設(shè)為"不需要升級",執(zhí)行以下步驟
步驟ioi,網(wǎng)絡(luò)設(shè)備接收到遠(yuǎn)程控制平臺發(fā)送的升級指令;
步驟102,網(wǎng)絡(luò)設(shè)備根據(jù)配置,從遠(yuǎn)程控制平臺下載應(yīng)用程序映像的升級文件;
步驟103,檢測升級文件的完整性,如果升級文件不完整,返回步驟102,
重新下載升級文件;如果升級文件完整,執(zhí)行下一步驟;
步驟104,將升級狀態(tài)參數(shù)修改為"需要升級",表示開始升級,擦除非易 失存儲器上原有的應(yīng)用程序映像,寫入下載到的應(yīng)用程序映像的升級文件;
步驟105,檢測升級是否成功,如果升級不成功,返回步驟102;如果升級
成功,執(zhí)行下一步驟;
步驟106,將升級狀態(tài)參數(shù)修改為"不需要升級",表示升級完成;
步驟107,網(wǎng)絡(luò)設(shè)備向遠(yuǎn)程控制平臺發(fā)送升級成功消息。
對于升級后需要重新啟動的網(wǎng)絡(luò)設(shè)備,還包括步驟108,重啟網(wǎng)絡(luò)設(shè)備。
上述升級過程中,如果網(wǎng)絡(luò)狀態(tài)良好,網(wǎng)絡(luò)設(shè)備可以不配置升級狀態(tài)參數(shù), 同時,網(wǎng)絡(luò)設(shè)備下載完升級文件后,也可以不檢測升級文件的完整性。在網(wǎng)絡(luò) 設(shè)備配置了升級狀態(tài)參數(shù)的情況下,可以用值0和1分別代表"不需要升級" 和"需要升級"。另外,網(wǎng)絡(luò)設(shè)備也可以在接收到升級指令后即將升級狀態(tài)參數(shù) 修改為"需要升級",這樣可以避免在下載升級文件失敗時由于沒有記錄需要升 級的狀態(tài)而導(dǎo)致網(wǎng)絡(luò)設(shè)備重啟后不能主動重新升級。
網(wǎng)絡(luò)設(shè)備在啟動后,還可以執(zhí)行以下步驟
步驟201,檢查FLASH中升級狀態(tài)標(biāo)志是否為"需要升級"(例如是否等 于1),如果是,表示上次升級未能正確完成,需要重新升級,執(zhí)行上述步驟 102 108;如果否,表示不需要升級或者上次升級過程已經(jīng)正確完成,執(zhí)行下一
步驟202,加載應(yīng)用軟件虛擬設(shè)備;
步驟203,解壓并展開應(yīng)用軟件文件系統(tǒng);
步驟204,按設(shè)備要求將應(yīng)用軟件考入內(nèi)存,并啟動加載。以上所述實施例僅是為充分說明本發(fā)明而所舉的較佳的實施例,本發(fā)明的 保護范圍不限于此。本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明基礎(chǔ)上所作的等同替代或 變換,均在本發(fā)明的保護范圍之內(nèi)。本發(fā)明的保護范圍以權(quán)利要求書為準(zhǔn)。
權(quán)利要求
1、一種網(wǎng)絡(luò)設(shè)備在線升級方法,其特征是,包括以下步驟將網(wǎng)絡(luò)設(shè)備的軟件映像按照功能分成操作系統(tǒng)映像和應(yīng)用程序映像,分別存儲在網(wǎng)絡(luò)設(shè)備非易失存儲器的不同區(qū)域;網(wǎng)絡(luò)設(shè)備進(jìn)入正常工作流程,接收到升級指令后,下載應(yīng)用程序映像的升級文件;擦除非易失存儲器中原有的應(yīng)用程序映像并寫入所述下載到的應(yīng)用程序映像的升級文件,完成升級。
2、 根據(jù)權(quán)利要求i所述的網(wǎng)絡(luò)設(shè)備在線升級方法,其特征是,所述網(wǎng)絡(luò)設(shè) 備配置升級狀態(tài)參數(shù),并將升級狀態(tài)參數(shù)的初始狀態(tài)設(shè)為不需要升級;所述網(wǎng) 絡(luò)設(shè)備接收到升級指令后,修改升級狀態(tài)為需要升級;完成升級后,所述網(wǎng)絡(luò) 設(shè)備將升級狀態(tài)修改為不需要升級。
3、 根據(jù)權(quán)利要求2所述的網(wǎng)絡(luò)設(shè)備在線升級方法,其特征是,所述網(wǎng)絡(luò)設(shè) 備系統(tǒng)啟動后,首先檢查升級狀態(tài)參數(shù),如果所述升級狀態(tài)參數(shù)為不需要升級, 網(wǎng)絡(luò)設(shè)備進(jìn)入正常工作流程;如果所述升級狀態(tài)參數(shù)為需要升級,執(zhí)行所述下 載升級文件的步驟及其后續(xù)步驟。
4、 根據(jù)權(quán)利要求l所述的網(wǎng)絡(luò)設(shè)備在線升級方法,其特征是所述網(wǎng)絡(luò)設(shè) 備完成升級后,向遠(yuǎn)程控制平臺發(fā)送升級成功消息。
5、 根據(jù)權(quán)利要求l所述的網(wǎng)絡(luò)設(shè)備在線升級方法,其特征是,所述網(wǎng)絡(luò)設(shè)備下載完所述應(yīng)用程序映像的升級文件后,首先檢測升級文件完整性,如果升級文件不完整,重新下載所述應(yīng)用程序映像的升級文件;如果升級文件完整,執(zhí)行所述擦除非易失存儲器中原有的應(yīng)用程序映像并寫入所述下載到的應(yīng)用程 序映像的升級文件的步驟。
6、 一種網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng),其特征是,包括非易失存儲器,分成至少兩個區(qū)域,分別用于存儲操作系統(tǒng)映像和應(yīng)用程 序映像;網(wǎng)絡(luò)基本功能模塊,用于實現(xiàn)網(wǎng)絡(luò)設(shè)備與遠(yuǎn)程控制臺之間的網(wǎng)絡(luò)通信; 下載模塊,用于通過所述網(wǎng)絡(luò)基本功能模塊從所述遠(yuǎn)程控制臺下載升級文件;升級維護模塊,用于在接收到升級指令后,調(diào)用所述下載模塊下載升級文 件,擦除所述非易失存儲器上存儲的原有應(yīng)用程序映像并寫入下載到的升級文 件。
7、 根據(jù)權(quán)利要求6所述的網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng),其特征是,所述升級維 護模塊還用于設(shè)置升級狀態(tài)參數(shù),并將升級狀態(tài)參數(shù)的初始狀態(tài)設(shè)為不需要升 級;所述升級維護模塊接收到升級指令后,首先修改升級狀態(tài)為需要升級;完 成升級后,所述升級維護模塊將升級狀態(tài)修改為不需要升級。
8、 根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng),其特征是,還包括啟動配置模塊,用于當(dāng)網(wǎng)絡(luò)設(shè)備系統(tǒng)啟動后,檢查升級狀態(tài),如果不需要 升級,控制所述網(wǎng)絡(luò)設(shè)備進(jìn)入正常工作流程;如果需要升級,啟動所述升級維 護模塊,執(zhí)行升級操作。
9、 根據(jù)權(quán)利要求6所述的網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng),其特征是所述升級維護模塊還用于在升級完成后,向所述遠(yuǎn)程控制平臺發(fā)送升級成功消息。
10、根據(jù)權(quán)利要求6所述的網(wǎng)絡(luò)設(shè)備在線升級系統(tǒng),其特征是所述升級 維護模塊還用于檢測所述下載的升級文件是否完整,如果升級文件不完整,調(diào) 用下載模塊重新下載升級文件;如果升級文件完整,執(zhí)行所述擦除非易失存儲 器上存儲的原有應(yīng)用程序映像并寫入下載到的升級文件的操作。
全文摘要
本發(fā)明公開了一種網(wǎng)絡(luò)設(shè)備在線升級方法和系統(tǒng)。其中的方法包括如下步驟將網(wǎng)絡(luò)設(shè)備的軟件映像按照功能分成操作系統(tǒng)映像和應(yīng)用程序映像,分別存儲在網(wǎng)絡(luò)設(shè)備非易失存儲器的不同區(qū)域;網(wǎng)絡(luò)設(shè)備進(jìn)入正常工作流程,接收到升級指令后,下載應(yīng)用程序映像的升級文件;擦除非易失存儲器中原有的應(yīng)用程序映像并寫入所述下載到的應(yīng)用程序映像的升級文件,完成升級。其中的系統(tǒng)包括非易失存儲器;網(wǎng)絡(luò)基本功能模塊;下載模塊;升級維護模塊。本發(fā)明可以提高網(wǎng)絡(luò)設(shè)備升級的可靠性,也使得網(wǎng)絡(luò)設(shè)備在線升級時可以盡可能減少升級所占用的時間,減少意外的發(fā)生。
文檔編號H04L12/24GK101453374SQ20081018949
公開日2009年6月10日 申請日期2008年12月29日 優(yōu)先權(quán)日2008年12月29日
發(fā)明者黃婷熙 申請人:武漢烽火網(wǎng)絡(luò)有限責(zé)任公司