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