專(zhuān)利名稱(chēng):一種分布式通信設(shè)備軟件升級(jí)方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種分布式通信設(shè)備軟件升級(jí)方法及系統(tǒng)。
背景技術(shù):
隨著人們對(duì)隨時(shí)隨地接入網(wǎng)絡(luò)以獲取信息的需求不斷擴(kuò)大,各種有線(xiàn)和無(wú)線(xiàn)終端不斷涌現(xiàn)并接入到網(wǎng)絡(luò)中。為了提升用戶(hù)體驗(yàn),網(wǎng)絡(luò)中用于承載用戶(hù)網(wǎng)絡(luò)業(yè)務(wù)的網(wǎng)絡(luò)設(shè)備就顯得越來(lái)越重要,網(wǎng)絡(luò)設(shè)備出現(xiàn)異常,輕則影響用戶(hù)接入體驗(yàn),導(dǎo)致用戶(hù)流失,重則影響企業(yè)的電子商務(wù)網(wǎng)絡(luò)的運(yùn)行,導(dǎo)致重大的經(jīng)濟(jì)損失。在網(wǎng)絡(luò)上運(yùn)行的網(wǎng)絡(luò)通信設(shè)備中,為了性能和可擴(kuò)展性等考慮,很多設(shè)備是基于多進(jìn)程操作系統(tǒng)實(shí)現(xiàn)的分布式的通信設(shè)備。在使用多進(jìn)程操作系統(tǒng)的通信設(shè)備中,通常采用多個(gè)業(yè)務(wù)進(jìn)程協(xié)同完成通信設(shè)備的路由學(xué)習(xí)、數(shù)據(jù)轉(zhuǎn)發(fā)功能。通信設(shè)備與外部設(shè)備進(jìn)行交互,學(xué)習(xí)網(wǎng)絡(luò)路由,并計(jì)算生成轉(zhuǎn)發(fā)面使用的最佳路由表。然后下發(fā)到轉(zhuǎn)發(fā)面,轉(zhuǎn)發(fā)面再根據(jù)最佳路由表完成數(shù)據(jù)的路由轉(zhuǎn)發(fā)。在網(wǎng)絡(luò)設(shè)備運(yùn)行過(guò)程中,因可能存在軟件故障或者新增功能特性,不得不面臨各種各樣的網(wǎng)絡(luò)設(shè)備軟件升級(jí)。為了避免網(wǎng)絡(luò)設(shè)備在軟件升級(jí)過(guò)程中引起業(yè)務(wù)中斷,需要考慮支持業(yè)務(wù)不中斷的軟件升級(jí)方法。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是,提供一種分布式通信設(shè)備軟件升級(jí)方法及系統(tǒng),避免軟件升級(jí)帶來(lái)不必要的業(yè)務(wù)中斷,提高業(yè)務(wù)的可靠性和可用性,提升用戶(hù)業(yè)務(wù)體驗(yàn)。本發(fā)明采用的技術(shù)方案是,所述分布式通信設(shè)備軟件升級(jí)方法,主控單元中包含基于物理冗余的主用主控單元和備用主控單元,該方法包括步驟一,主控單元軟件升級(jí)過(guò)程,包括主用主控單元通知備用主控單元啟動(dòng)新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)主用主控單元上的老版本軟件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換;步驟二,線(xiàn)卡軟件升級(jí)過(guò)程,包括線(xiàn)卡啟動(dòng)控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)當(dāng)前的主用主控單元對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,通過(guò)線(xiàn)卡上的控制面和管理面的老版本軟件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);線(xiàn)卡對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行;線(xiàn)卡刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。進(jìn)一步的,所述主用主控單元包括第一版本管理組件和第一主備管理組件;所述備用主控單元包括第二版本管理組件和第二主備管理組件;主控單元上的軟件中均包含數(shù)據(jù)恢復(fù)組件;
所述步驟一,具體包括第一版本管理組件通知第二版本管理組件在備用主控單元上啟動(dòng)新版本軟件;主用主控單元上的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,第一版本管理組件通知第一主備管理組件將主用主控單元的運(yùn)行狀態(tài)倒換成備用,同時(shí),第二版本管理組件通知第二主備管理組件將備用主控單元的運(yùn)行狀態(tài)倒換成主用。進(jìn)一步的,所述線(xiàn)卡包括第三版本管理組件;主控單元及線(xiàn)卡上的軟件均包含數(shù)據(jù)恢復(fù)組件;所述步驟二,具體包括 第三版本管理組件在主用主控單元與備用主控單元的主備狀態(tài)倒換完成后,啟動(dòng)線(xiàn)卡上的控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行;當(dāng)前的主用主控單元的新版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,線(xiàn)卡上的控制面和管理面的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,第三版本管理組件對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。進(jìn)一步的,所述步驟二還包括當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成之后且在刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)之前,升級(jí)線(xiàn)卡上的轉(zhuǎn)發(fā)面軟件。進(jìn)一步的,所述步驟一,還包括在主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換后,將原主用主控單元上的老版本軟件升級(jí)為新版本軟件并以備用狀態(tài)運(yùn)行。本發(fā)明還提供一種分布式通信設(shè)備軟件升級(jí)系統(tǒng),主控單元中包含基于物理冗余的主用主控單元和備用主控單元,該系統(tǒng)包括主用主控單元,用于通知備用主控單元啟動(dòng)新版本軟件;通過(guò)主用主控單元上的老版本軟件對(duì)備用主控單元上的新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,將運(yùn)行狀態(tài)倒換成備用;備用主控單元,用于啟動(dòng)新版本軟件并以備用狀態(tài)運(yùn)行;配合主用主控單元對(duì)新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,將運(yùn)行狀態(tài)倒換成主用;線(xiàn)卡,用于在主用主控單元與備用主控單元的主備狀態(tài)倒換完成后,啟動(dòng)線(xiàn)卡上的控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)當(dāng)前的主用主控單元對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,通過(guò)線(xiàn)卡上的控制面和管理面的老版本軟件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。進(jìn)一步的,所述主用主控單元包括第一版本管理組件和第一主備管理組件;所述備用主控單元包括第二版本管理組件和第二主備管理組件;主控單元上的軟件中均包含數(shù)據(jù)恢復(fù)組件;第一版本管理組件,用于通知第二版本管理組件在備用主控單元上啟動(dòng)新版本軟件;在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,通知第一主備管理組件將主用主控單元的運(yùn)行狀態(tài)倒換成備用;數(shù)據(jù)恢復(fù)組件,主用主控單元上的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);第二版本管理組件,用于在備用主控單元上啟動(dòng)新版本軟件;在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,通知第二主備管理組件將備用主控單元的運(yùn)行狀態(tài)倒換成主用;第一主備管理組件,用于對(duì)主用主控單元的運(yùn)行狀態(tài)進(jìn)行主備倒換;第二主備管理組件,用于對(duì)備用主控單元的運(yùn)行狀態(tài)進(jìn)行主備倒換。進(jìn)一步的,所述線(xiàn)卡包括第三版本管理組件;主控單元及線(xiàn)卡上的軟件均包含數(shù)據(jù)恢復(fù)組件;第三版本管理組件,用于在主用主控單元與備用主控單元的主備狀態(tài)倒換完成后,啟動(dòng)線(xiàn)卡上的控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行;當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài);數(shù)據(jù)恢復(fù)組件,當(dāng)前的主用主控單元的新版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,線(xiàn)卡上的控制面和管理面的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)。進(jìn)一步的,所述線(xiàn)卡,還用于當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后且在刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)之前,升級(jí)線(xiàn)卡上的轉(zhuǎn)發(fā)面軟件。進(jìn)一步的,所述主用主控單元,還用于在主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換后,將原主用主控單元上的老版本軟件升級(jí)為新版本軟件并以備用狀態(tài)運(yùn)行。采用上述技術(shù)方案,本發(fā)明至少具有下列優(yōu)點(diǎn)本發(fā)明所述分布式通信設(shè)備軟件升級(jí)方法及系統(tǒng),依次在主控單元和線(xiàn)卡上升級(jí)軟件,由于主控單元中包含基于物理冗余的主用主控單元和備用主控單元,線(xiàn)卡中可以使軟件以主狀態(tài)或者備狀態(tài)運(yùn)行即提供邏輯主備處理的功能,故本發(fā)明可以使新老版本軟件同時(shí)運(yùn)行,通過(guò)主用主控單元與備用主控單元的主備倒換、以及線(xiàn)卡上新版本軟件和老版本軟件的主備運(yùn)行狀態(tài)控制,使得新版本軟件無(wú)縫接替老版軟件本進(jìn)入工作狀態(tài)。另外,本發(fā)明在線(xiàn)卡上升級(jí)控制面和管理面的軟件,在需要的情況下再升級(jí)線(xiàn)卡的轉(zhuǎn)發(fā)面軟件,以避免軟件升級(jí)帶來(lái)不必要的業(yè)務(wù)中斷,提高業(yè)務(wù)的可靠性和可用性,避免業(yè)務(wù)中斷帶來(lái)重大的經(jīng)濟(jì)損失,提升用戶(hù)業(yè)務(wù)體驗(yàn)。
圖I為本發(fā)明第一實(shí)施例中的分布式通信設(shè)備軟件升級(jí)方法流程圖;圖2為本發(fā)明第二實(shí)施例中的分布式通信設(shè)備軟件升級(jí)方法流程圖3為本發(fā)明第二實(shí)施例中的分布式通信設(shè)備軟件升級(jí)系統(tǒng)組成示意圖;圖4為本發(fā)明應(yīng)用實(shí)例中分布式接入網(wǎng)關(guān)軟件升級(jí)交互序列圖;圖5為本發(fā)明應(yīng)用實(shí)例中分布式接入網(wǎng)關(guān)軟件升級(jí)前的狀態(tài)示意圖;圖6為本發(fā)明應(yīng)用實(shí)例中分布式接入網(wǎng)關(guān)主控2啟動(dòng)新版本軟件并進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)的示意圖;圖7為本發(fā)明應(yīng)用實(shí)例中分布式接入網(wǎng)關(guān)主控2的運(yùn)行狀態(tài)倒換為主用并啟動(dòng)線(xiàn)卡新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)的示意圖;圖8為本發(fā)明應(yīng)用實(shí)例中分布式接入網(wǎng)關(guān)線(xiàn)卡注銷(xiāo)老版本軟件的示意圖;
圖9為本發(fā)明應(yīng)用實(shí)例中分布式接入網(wǎng)關(guān)線(xiàn)卡的新版本軟件進(jìn)入工作狀態(tài)示意圖;圖10為本發(fā)明應(yīng)用實(shí)例中分布式接入網(wǎng)關(guān)主控I的老版本軟件升級(jí)到新版本軟件的示意圖。
具體實(shí)施例方式為更進(jìn)一步闡述本發(fā)明為達(dá)成預(yù)定目的所采取的技術(shù)手段及功效,以下結(jié)合附圖及較佳實(shí)施例,對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明如后。本發(fā)明第一實(shí)施例,一種分布式通信設(shè)備軟件升級(jí)方法,主控單元中包含基于物理冗余的主用主控單元和備用主控單元,主控單元主處理單元,也叫主控單元。在通信設(shè)備中的現(xiàn)有功能是負(fù)責(zé)系統(tǒng)管理、路由計(jì)算等。主用主控單元指的是主處理器上的軟件運(yùn)行在主狀態(tài),并對(duì)外界提供服務(wù)。備用主控單元指的是主處理器上的軟件運(yùn)行在備狀態(tài),不對(duì)外界提供服務(wù),只有轉(zhuǎn)為主狀態(tài)后才能對(duì)外界提供服務(wù)。線(xiàn)卡在通信設(shè)備中的現(xiàn)有功能是執(zhí)行轉(zhuǎn)發(fā)數(shù)據(jù)管理和數(shù)據(jù)轉(zhuǎn)發(fā)等業(yè)務(wù)。如圖I所示,該方法包括以下兩個(gè)階段第一階段,主控單元軟件升級(jí)過(guò)程,包括步驟S101,主用主控單元通知備用主控單元啟動(dòng)新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)主用主控單元上的老版本軟件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)。具體的,主用主控單元包括第一版本管理組件和第一主備管理組件;所述備用主控單元包括第二版本管理組件和第二主備管理組件;主控單元上軟件中均包含數(shù)據(jù)恢復(fù)組件。步驟SlOl,具體包括Al :第一版本管理組件通知第二版本管理組件在備用主控單元上啟動(dòng)新版本軟件;A2:主用主控單元上的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);步驟A2,具體包括A21 :主用主控單元與備用主控單元之間通過(guò)各自的數(shù)據(jù)恢復(fù)組件建立單條或多條通信鏈路;
A22:主用主控單元上的老版本軟件基于數(shù)據(jù)恢復(fù)組件向備用主控單元上的新版本軟件同步數(shù)據(jù)及數(shù)據(jù)狀態(tài)。相應(yīng)的,備用主控單元上的新版本軟件也基于數(shù)據(jù)恢復(fù)組件接收主用主控單元上的新版本軟件同步過(guò)來(lái)的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。步驟S102,主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換,使已經(jīng)完成軟件升級(jí)的備主控單元進(jìn)入主用工作狀態(tài),原主用主控單元進(jìn)入備用工作狀態(tài),其上的軟件等待升級(jí)。具體的,在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,第一版本管理組件通知第一主備管理組件將主用主控單元的運(yùn)行狀態(tài)倒換成備用,同時(shí),第二版本管理組件通知第二主備管理組件將備用主控單元的運(yùn)行狀態(tài)倒換成主用。第二階段,線(xiàn)卡軟件升級(jí)過(guò)程,包括步驟S103,當(dāng)前的主用主控單元通知線(xiàn)卡啟動(dòng)控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)當(dāng)前的主用主控單元對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,通過(guò)線(xiàn)卡上的控制面和管理面的老版本軟件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)·行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);具體的,線(xiàn)卡包括第三版本管理組件;主控單元及線(xiàn)卡上的軟件均包含數(shù)據(jù)恢復(fù)組件;第三版本管理組件在主用主控單元與備用主控單元的主備狀態(tài)倒換完成后,啟動(dòng)控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行;當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài);當(dāng)前的主用主控單元的新版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,線(xiàn)卡上的控制面和管理面的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)。在步驟S103中,所述通過(guò)當(dāng)前的主用主控單元對(duì)線(xiàn)卡上的所述控制面和管理面的新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),具體包括BI :當(dāng)前的主用主控單元與線(xiàn)卡之間基于數(shù)據(jù)恢復(fù)組件建立單條或多條通信鏈路;B2 :當(dāng)前的主用主控單元的新版本軟件基于數(shù)據(jù)恢復(fù)組件向線(xiàn)卡上的控制面和管理面的新版本軟件同步數(shù)據(jù)及數(shù)據(jù)狀態(tài)。相應(yīng)的,線(xiàn)卡上的控制面和管理面的新版本軟件基于數(shù)據(jù)恢復(fù)組件接收主用主控單元同步過(guò)來(lái)的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。在步驟S103中,通過(guò)線(xiàn)卡上的控制面和管理面的老版本軟件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),具體包括Cl :線(xiàn)卡上的控制面和管理面的老版本軟件與線(xiàn)卡上的所述新版本軟件之間基于數(shù)據(jù)恢復(fù)組件建立單條或多條通信鏈路;C2:線(xiàn)卡上的控制面和管理面的老版本軟件基于數(shù)據(jù)恢復(fù)組件向線(xiàn)卡上的所述新版本軟件同步數(shù)據(jù)及數(shù)據(jù)狀態(tài)。相應(yīng)的,線(xiàn)卡上的控制面和管理面的新版本軟件基于數(shù)據(jù)恢復(fù)組件接收線(xiàn)卡上的控制面和管理面的老版本軟件同步過(guò)來(lái)的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。步驟S104,當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,線(xiàn)卡對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。具體的,當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,第三版本管理組件對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。可選的 ,在本實(shí)施例所述方法的第一階段中,在步驟SlOl之前,將新版本軟件拷貝到通信設(shè)備的主控單元和線(xiàn)卡上;或者,在步驟SlOl之前,將新版本軟件拷貝到通信設(shè)備的主控單元,后續(xù)由線(xiàn)卡向主控單元請(qǐng)求獲取新版本軟件進(jìn)行升級(jí)。這里的主控單元指的是處于主用狀態(tài)的主控單元即主用主控單元,因?yàn)閭溆弥骺貑卧粚?duì)系統(tǒng)提供服務(wù)。本發(fā)明第二實(shí)施例,如圖2所示,一種分布式通信設(shè)備軟件升級(jí)方法,主控單元中包含基于物理冗余的主用主控單元和備用主控單元,該方法包括以下兩個(gè)階段第一階段,主控單元軟件升級(jí)過(guò)程,包括步驟S201,主用主控單元通知備用主控單元啟動(dòng)新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)主用主控單元上的老版本軟件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)。具體的,主用主控單元包括第一版本管理組件和第一主備管理組件;所述備用主控單元包括第二版本管理組件和第二主備管理組件;主控單元上軟件中均包含數(shù)據(jù)恢復(fù)組件。步驟S201,具體包括Al :第一版本管理組件通知第二版本管理組件在備用主控單元上啟動(dòng)新版本軟件;A2:主用主控單元上的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);步驟A2,具體包括A21 :主用主控單元與備用主控單元之間通過(guò)各自的數(shù)據(jù)恢復(fù)組件建立單條或多條通信鏈路;A22:主用主控單元上的老版本軟件基于數(shù)據(jù)恢復(fù)組件向備用主控單元上的新版本軟件同步數(shù)據(jù)及數(shù)據(jù)狀態(tài)。步驟S202,主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換,使已經(jīng)完成軟件升級(jí)的備主控單元進(jìn)入主用工作狀態(tài),原主用主控單元進(jìn)入備用工作狀態(tài),其上的軟件等待升級(jí)。具體的,在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,第一版本管理組件通知第一主備管理組件將主用主控單元的運(yùn)行狀態(tài)倒換成備用,同時(shí),第二版本管理組件通知第二主備管理組件將備用主控單元的運(yùn)行狀態(tài)倒換成主用。步驟S203,在主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換后,將原主用主控單元上的老版本軟件升級(jí)為新版本軟件并以備用狀態(tài)運(yùn)行。第二階段,線(xiàn)卡軟件升級(jí)過(guò)程,包括步驟S204,當(dāng)前的主用主控單元通知線(xiàn)卡啟動(dòng)控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)當(dāng)前的主用主控單元對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,通過(guò)線(xiàn)卡上的控制面和管理面的老版本軟件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)。具體的,線(xiàn)卡包括第三版本管理組件;主控單元及線(xiàn)卡上的軟件均包含數(shù)據(jù)恢復(fù)組件;第三版本管理組件在主用主控單元與備用主控單元的主備狀態(tài)倒換完成后,啟動(dòng)控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行;當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài);當(dāng)前的主用主控單元的新版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,線(xiàn)卡上的控制面和管理面的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)。步驟S205,當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,線(xiàn)卡對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,升級(jí)線(xiàn)卡上的轉(zhuǎn)發(fā)面軟件,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。具體的,當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,第三版本管理組件對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,升級(jí)線(xiàn)卡上的轉(zhuǎn)發(fā)面軟件,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。線(xiàn)卡上的第三版本管理組件對(duì)轉(zhuǎn)發(fā)面軟件升級(jí)過(guò)程與對(duì)線(xiàn)卡上的控制面和管理面軟件升級(jí)過(guò)程類(lèi)似,之所以把轉(zhuǎn)發(fā)面軟件升級(jí)放在最后,是因?yàn)檗D(zhuǎn)發(fā)面的功能直接影響通信設(shè)備的業(yè)務(wù)運(yùn)行,先升級(jí)線(xiàn)卡上的控制面和管理面軟件并不會(huì)對(duì)業(yè)務(wù)造成中斷,轉(zhuǎn)發(fā)面軟件升級(jí)的過(guò)程也須經(jīng)過(guò)轉(zhuǎn)發(fā)面老版本軟件注銷(xiāo)并啟動(dòng)轉(zhuǎn)發(fā)面的新版本軟件,通過(guò)當(dāng)前的主用主控單元上的新版本軟件對(duì)線(xiàn)卡上的所述轉(zhuǎn)發(fā)面的新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),刷新轉(zhuǎn)發(fā)面新版本軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài),使新版本轉(zhuǎn)發(fā)面的轉(zhuǎn)發(fā)表項(xiàng)生效。升級(jí)轉(zhuǎn)發(fā)面軟件的時(shí)間非常短,幾乎不影響業(yè)務(wù)運(yùn)行。可選的,在本實(shí)施例所述方法的第一階段中,在步驟S201之前,將新版本軟件拷貝到通信設(shè)備的主控單元和線(xiàn)卡上;或者,在步驟S201之前,將新版本軟件拷貝到通信設(shè)備的主控單元,后續(xù)由線(xiàn)卡向主控單元請(qǐng)求獲取新版本軟件。這里的主控單元指的是處于主用狀態(tài)的主控單元即主用主控單元,因?yàn)閭溆弥骺貑卧粚?duì)系統(tǒng)提供服務(wù)。本發(fā)明第三實(shí)施例,如圖3所示,一種分布式通信設(shè)備軟件升級(jí)系統(tǒng),主控單元10中包含基于物理冗余的主用主控單元20和備用主控單元30,該系統(tǒng)包括I)主用主控單元20,用于通知備用主控單元30啟動(dòng)新版本軟件;通過(guò)主用主控單元20上的老版本軟件對(duì)備用主控單元30上的新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,將運(yùn)行狀態(tài)倒換成備用。2)備用主控單元30,用于啟動(dòng)新版本軟件并以備用狀態(tài)運(yùn)行;配合主用主控單元·20對(duì)新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,將運(yùn)行狀態(tài)倒換成主用。具體的,主用主控單元20包括第一版本管理組件21和第一主備管理組件22,備用主控單元30包括第二版本管理組件31和第二主備管理組件32,主控單元10上的軟件中均包含數(shù)據(jù)恢復(fù)組件11。
第一版本管理組件21,用于通知第二版本管理組件31在備用主控單元30上啟動(dòng)新版本軟件;在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,通知第一主備管理組件22將主用主控單元20的運(yùn)行狀態(tài)倒換成備用,使老版本軟件進(jìn)入備用工作狀態(tài),等待升級(jí);數(shù)據(jù)恢復(fù)組件11,主用主控單元20上的老版本軟件基于數(shù)據(jù)恢復(fù)組件11對(duì)備用主控單元30上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);第二版本管理組件31,用于在備用主控單元30上啟動(dòng)新版本軟件;在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,通知第二主備管理組件32將備用主控單元30的運(yùn)行狀態(tài)倒換成主用,使升級(jí)完成后的新版本軟件進(jìn)入主用工作狀態(tài);
第一主備管理組件22,用于對(duì)主用主控單元20的運(yùn)行狀態(tài)進(jìn)行主備倒換;第二主備管理組件32,用于對(duì)備用主控單元30的運(yùn)行狀態(tài)進(jìn)行主備倒換。3)線(xiàn)卡40,用于在主用主控單元20與備用主控單元30的主備狀態(tài)倒換完成后,啟動(dòng)控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)當(dāng)前的主用主控單元對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,通過(guò)線(xiàn)卡上的控制面和管理面的老版本軟件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。具體的,線(xiàn)卡40包括第三版本管理組件41,主控單元及線(xiàn)卡上的軟件均包含數(shù)據(jù)恢復(fù)組件。第三版本管理組件41,用于在主用主控單元20與備用主控單元30的主備狀態(tài)倒換完成后,啟動(dòng)控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行;當(dāng)線(xiàn)卡40上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài);數(shù)據(jù)恢復(fù)組件11,當(dāng)前的主用主控單元20的新版本軟件基于數(shù)據(jù)恢復(fù)組件11對(duì)線(xiàn)卡40上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,線(xiàn)卡40上的控制面和管理面的老版本軟件基于數(shù)據(jù)恢復(fù)組件11對(duì)線(xiàn)卡40上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)。本發(fā)明第四實(shí)施例,如圖3所示,本實(shí)施例的分布式通信設(shè)備軟件升級(jí)系統(tǒng)與第三實(shí)施例大致相同,區(qū)別在于,本實(shí)施例的所述系統(tǒng)中,主用主控單元20,還用于在主用主控單元20與備用主控單元30進(jìn)行主備狀態(tài)倒換后,將原主用主控單元20上的老版本軟件升級(jí)為新版本軟件并以備用狀態(tài)運(yùn)行。另外,線(xiàn)卡40還用于當(dāng)線(xiàn)卡40上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后且在刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)之前,升級(jí)線(xiàn)卡40上的轉(zhuǎn)發(fā)面軟件。具體的,線(xiàn)卡40上的第三版本管理組件41對(duì)轉(zhuǎn)發(fā)面軟件升級(jí)過(guò)程與對(duì)線(xiàn)卡40上的控制面和管理面軟件升級(jí)過(guò)程類(lèi)似,之所以把轉(zhuǎn)發(fā)面軟件升級(jí)放在最后,是因?yàn)檗D(zhuǎn)發(fā)面的功能直接影響通信設(shè)備的業(yè)務(wù)運(yùn)行,先升級(jí)線(xiàn)卡40上的控制面和管理面軟件并不會(huì)對(duì)業(yè)務(wù)造成中斷,轉(zhuǎn)發(fā)面軟件升級(jí)的過(guò)程也須經(jīng)過(guò)轉(zhuǎn)發(fā)面老版本軟件注銷(xiāo)并啟動(dòng)轉(zhuǎn)發(fā)面的新版本軟件,通過(guò)當(dāng)前的主用主控單元20上的新版本軟件對(duì)線(xiàn)卡40上的所述轉(zhuǎn)發(fā)面的新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),刷新轉(zhuǎn)發(fā)面新版本軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài),使新版本轉(zhuǎn)發(fā)面的轉(zhuǎn)發(fā)表項(xiàng)生效。升級(jí)轉(zhuǎn)發(fā)面軟件的時(shí)間非常短,幾乎不影響業(yè)務(wù)運(yùn)行。
基于上述實(shí)施例,介紹一個(gè)本發(fā)明的應(yīng)用實(shí)例,該應(yīng)用實(shí)例的應(yīng)用場(chǎng)景和執(zhí)行過(guò)程如下場(chǎng)景接入網(wǎng)關(guān)軟件升級(jí)場(chǎng)景。
圖4為分布式接入網(wǎng)關(guān)軟件升級(jí)交互序列圖,圖5 圖10分別顯示了分布式接入網(wǎng)關(guān)進(jìn)行軟件升級(jí)時(shí)的各種狀態(tài),圖中的接入網(wǎng)關(guān)是完成用戶(hù)接入網(wǎng)絡(luò)的分布式通信設(shè)備,出于高可靠性、高可用性的要求,設(shè)備配置有主備用主控板,圖5為分布式接入網(wǎng)關(guān)軟件升級(jí)前的狀態(tài),主用主控板上的處理單元為主控1,備用主控板上的處理單元為主控2。同時(shí)配置有4塊線(xiàn)卡完成用戶(hù)的接入和轉(zhuǎn)發(fā)處理。主控單元上運(yùn)行有80個(gè)進(jìn)程,如支撐進(jìn)程、BGP進(jìn)程、RIP進(jìn)程、OSPF進(jìn)程、FIB進(jìn)程等。線(xiàn)卡有30個(gè)進(jìn)程,包括收發(fā)包進(jìn)程、路由轉(zhuǎn)發(fā)進(jìn)程、用戶(hù)接入進(jìn)程等。由于運(yùn)行的軟件版本存在故障,會(huì)導(dǎo)致業(yè)務(wù)隨機(jī)斷流。因此,需要考慮進(jìn)行軟件版本升級(jí),以解決設(shè)備故障。接入網(wǎng)關(guān)的4塊線(xiàn)卡采用的是逐線(xiàn)卡升級(jí)方案。即依次對(duì)每塊線(xiàn)卡升級(jí),先升級(jí)I號(hào)線(xiàn)卡,再升級(jí)2號(hào)線(xiàn)卡,然后升級(jí)3號(hào)線(xiàn)卡,最后升級(jí)4號(hào)線(xiàn)卡。接入網(wǎng)關(guān)軟件版本升級(jí)涉及如下組件老版本軟件、新版本軟件、版本管理組件,主備管理組件。其中,老版本軟件和新版本軟件實(shí)現(xiàn)的功能相同;版本管理組件負(fù)責(zé)管理軟件的版本升級(jí)、失敗回滾等;主備管理組件負(fù)責(zé)對(duì)新老版本軟件進(jìn)行主備管理,并在老版本向新版本完成數(shù)據(jù)及數(shù)據(jù)狀態(tài)的主備同步后觸發(fā)新版本軟件的主備倒換,以實(shí)現(xiàn)軟件新版本無(wú)縫接替老版本進(jìn)入工作狀態(tài),完成業(yè)務(wù)不中斷升級(jí);在網(wǎng)絡(luò)上實(shí)施分布式接入網(wǎng)關(guān)軟件升級(jí)的處理步驟如下階段一、主控軟件升級(jí)SI :在進(jìn)行軟件升級(jí)前,需要將待升級(jí)的新版本軟件拷貝到接入網(wǎng)關(guān)的主用主控上(設(shè)備自動(dòng)拷貝到備用主控)。線(xiàn)卡新版本軟件通過(guò)主控來(lái)請(qǐng)求獲??;S2 :在接入網(wǎng)關(guān)的主控I上的老版本軟件以主狀態(tài)運(yùn)行,用戶(hù)向主控I上的版本管理組件(Version Manager,以下簡(jiǎn)稱(chēng)VM)發(fā)起主控軟件升級(jí)指令;S3 :主控I上的VM收到主控軟件升級(jí)指令后,發(fā)送命令到主控2上的VM,在主控2上升級(jí)并啟動(dòng)新版本軟件,如圖6所示;S4 :主控2上的新版本軟件啟動(dòng)后以備狀態(tài)運(yùn)行。在主控2轉(zhuǎn)入主狀態(tài)運(yùn)行前,主控2上的新版本軟件不對(duì)系統(tǒng)外界提供服務(wù);S5 :主控2上的新版本軟件通過(guò)主控I上的老版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),以便進(jìn)入工作狀態(tài)后能無(wú)縫接管老版本軟件對(duì)外界提供的服務(wù)??蛇x的,數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)的通信鏈路,可以是單條或多條通信鏈路;S6 :主控2上的新版本軟件在數(shù)據(jù)及數(shù)據(jù)狀態(tài)的恢復(fù)完成后,通過(guò)主控2上的VM向主控I上的VM發(fā)起備用主控新版本啟動(dòng)完成通知;S7 :主控I上的VM收到備用主控新版本啟動(dòng)完成通知后,向主控I上的主備管理組件(Active-Standby Manager,以下簡(jiǎn)稱(chēng)ASM)觸發(fā)主用主控的主備倒換,如圖7所示。同時(shí),通過(guò)主控2上的VM向主控2上的ASM觸發(fā)備用主控的主備倒換;S8 :主控I主備倒換成新備用主控,主控2主備倒換成新主用主控。新主用主控上的新版本軟件接替老版本軟件進(jìn)入主工作狀態(tài),對(duì)外界提供服務(wù)。新備用主控上的老版本軟件不再對(duì)外界提供服務(wù);
S9 :可選的,如圖10所示,在主控I倒換成新備用主控的同時(shí),可以將主控I上的老版本軟件升級(jí)為新版本軟件并以備狀態(tài)啟動(dòng);S10:主控I上的VM將軟件升級(jí)成功的結(jié)果反饋給用戶(hù),指示可以進(jìn)行后續(xù)的線(xiàn)卡軟件升級(jí)。階段二、線(xiàn)卡軟件升級(jí)(逐線(xiàn)卡升級(jí),下面以升級(jí)I號(hào)線(xiàn)卡為例進(jìn)行詳細(xì)說(shuō)明,其他線(xiàn)卡類(lèi)似)Sll :在主控軟件升級(jí)成功后,用戶(hù)向主控2上的VM發(fā)起I號(hào)線(xiàn)卡軟件升級(jí)指令;S12 :主控2上的VM收到I號(hào)線(xiàn)卡軟件升級(jí)指令后,發(fā)送線(xiàn)卡軟件升級(jí)命令到I號(hào)線(xiàn)卡上的VM ;S13:如圖7所示,I號(hào)線(xiàn)卡上的VM收到線(xiàn)卡軟件升級(jí)命令后,從主控2獲取新版本軟件,啟動(dòng)線(xiàn)卡上的控制面和管理面的新版本軟件并以備用狀態(tài)運(yùn)行,在轉(zhuǎn)入主用狀態(tài)前,控制面和管理面的新版本軟件不對(duì)系統(tǒng)外界提供服務(wù);S14 :為了避免業(yè)務(wù)中斷,I號(hào)線(xiàn)卡上的控制面和管理面的新版本軟件在進(jìn)入工作狀態(tài)前,需要恢復(fù)對(duì)外提供服務(wù)所需要的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。接入網(wǎng)關(guān)的I號(hào)線(xiàn)卡上的新版本軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)過(guò)程采用多通信鏈路實(shí)現(xiàn);S15 1號(hào)線(xiàn)卡上的控制面和管理面的新版本軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)通過(guò)主控2進(jìn)行;S16 1號(hào)線(xiàn)卡上的控制面和管理面的新版本軟件在數(shù)據(jù)及數(shù)據(jù)狀態(tài)的恢復(fù)完成后,向線(xiàn)卡上的VM發(fā)起數(shù)據(jù)及數(shù)據(jù)狀態(tài)同步完成通知;S17 1號(hào)線(xiàn)卡上的VM收到新版本軟件恢復(fù)完成通知后,向I號(hào)線(xiàn)卡上的控制面和管理面的老版本軟件發(fā)起注銷(xiāo)指令。同時(shí),向I號(hào)線(xiàn)卡上的控制面和管理面的新版本軟件發(fā)起主備倒換指令;S18 :如圖8所示,I號(hào)線(xiàn)卡上的控制面和管理面的老版本軟件收到VM的注銷(xiāo)指令后,進(jìn)行注銷(xiāo)處理;S19 :如圖9所示,I號(hào)線(xiàn)卡上的控制面和管理面的新版本軟件收到VM的主備倒換指令后,執(zhí)行主備倒換,接替控制面和管理面的老版本軟件進(jìn)入工作狀態(tài);S20 1號(hào)線(xiàn)卡上的控制面和管理面的新版本軟件進(jìn)入工作狀態(tài)后,按需升級(jí)轉(zhuǎn)發(fā)面的新版本軟件,并觸發(fā)刷新轉(zhuǎn)發(fā)表,使得新版本轉(zhuǎn)發(fā)表項(xiàng)生效S21 1號(hào)線(xiàn)卡上的VM向主控2上的VM反饋線(xiàn)卡軟件升級(jí)結(jié)果。通過(guò)具體實(shí)施方式
的說(shuō)明,應(yīng)當(dāng)可對(duì)本發(fā)明為達(dá)成預(yù)定目的所采取的技術(shù)手段及功效得以更加深入且具體的了解,然而所附圖示僅是提供參考與說(shuō)明之用,并非用來(lái)對(duì)本發(fā)明加以限制。
權(quán)利要求
1.一種分布式通信設(shè)備軟件升級(jí)方法,其特征在于,主控單元中包含基于物理冗余的主用主控單元和備用主控單元,所述方法包括步驟一,主控單元軟件升級(jí)過(guò)程,包括主用主控單元通知備用主控單元啟動(dòng)新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)主用主控單元上的老版本軟件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換;步驟二,線(xiàn)卡軟件升級(jí)過(guò)程,包括線(xiàn)卡啟動(dòng)控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)當(dāng)前的主用主控單元對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,通過(guò)線(xiàn)卡上的控制面和管理面的老版本軟件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);線(xiàn)卡對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行;線(xiàn)卡刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。
2.根據(jù)權(quán)利要求I所述的分布式通信設(shè)備軟件升級(jí)方法,其特征在于,所述主用主控單元包括第一版本管理組件和第一主備管理組件;所述備用主控單元包括第二版本管理組件和第二主備管理組件;主控單元上的軟件中均包含數(shù)據(jù)恢復(fù)組件;所述步驟一,具體包括第一版本管理組件通知第二版本管理組件在備用主控單元上啟動(dòng)新版本軟件;主用主控單元上的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,第一版本管理組件通知第一主備管理組件將主用主控單元的運(yùn)行狀態(tài)倒換成備用,同時(shí),第二版本管理組件通知第二主備管理組件將備用主控單元的運(yùn)行狀態(tài)倒換成主用。
3.根據(jù)權(quán)利要求I所述的分布式通信設(shè)備軟件升級(jí)方法,其特征在于,所述線(xiàn)卡包括第三版本管理組件;主控單元及線(xiàn)卡上的軟件均包含數(shù)據(jù)恢復(fù)組件;所述步驟二,具體包括第三版本管理組件在主用主控單元與備用主控單元的主備狀態(tài)倒換完成后,啟動(dòng)線(xiàn)卡上的控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行;當(dāng)前的主用主控單元的新版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,線(xiàn)卡上的控制面和管理面的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,第三版本管理組件對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。
4.根據(jù)權(quán)利要求I所述的分布式通信設(shè)備軟件升級(jí)方法,其特征在于,所述步驟二還包括當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成之后且在刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)之前,升級(jí)線(xiàn)卡上的轉(zhuǎn)發(fā)面軟件。
5.根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的分布式通信設(shè)備軟件升級(jí)方法,其特征在于,所述步驟一,還包括在主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換后,將原主用主控單元上的老版本軟件升級(jí)為新版本軟件并以備用狀態(tài)運(yùn)行。
6.一種分布式通信設(shè)備軟件升級(jí)系統(tǒng),其特征在于,包括主控單元中包含基于物理冗余的主用主控單元和備用主控單元,所述系統(tǒng)包括主用主控單元,用于通知備用主控單元啟動(dòng)新版本軟件;通過(guò)主用主控單元上的老版本軟件對(duì)備用主控單元上的新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,將運(yùn)行狀態(tài)倒換成備用;備用主控單元,用于啟動(dòng)新版本軟件并以備用狀態(tài)運(yùn)行;配合主用主控單元對(duì)新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,將運(yùn)行狀態(tài)倒換成主用;線(xiàn)卡,用于在主用主控單元與備用主控單元的主備狀態(tài)倒換完成后,啟動(dòng)線(xiàn)卡上的控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行,并通過(guò)當(dāng)前的主用主控單元對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,通過(guò)線(xiàn)卡上的控制面和管理面的老版本軟件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)。
7.根據(jù)權(quán)利要求6所述的分布式通信設(shè)備軟件升級(jí)系統(tǒng),其特征在于,所述主用主控單元包括第一版本管理組件和第一主備管理組件;所述備用主控單元包括第二版本管理組件和第二主備管理組件;主控單元上的軟件中均包含數(shù)據(jù)恢復(fù)組件;第一版本管理組件,用于通知第二版本管理組件在備用主控單元上啟動(dòng)新版本軟件;在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,通知第一主備管理組件將主用主控單元的運(yùn)行狀態(tài)倒換成備用;數(shù)據(jù)恢復(fù)組件,主用主控單元上的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)備用主控單元上新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù);第二版本管理組件,用于在備用主控單元上啟動(dòng)新版本軟件;在所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,通知第二主備管理組件將備用主控單元的運(yùn)行狀態(tài)倒換成主用;第一主備管理組件,用于對(duì)主用主控單元的運(yùn)行狀態(tài)進(jìn)行主備倒換;第二主備管理組件,用于對(duì)備用主控單元的運(yùn)行狀態(tài)進(jìn)行主備倒換。
8.根據(jù)權(quán)利要求6所述的分布式通信設(shè)備軟件升級(jí)系統(tǒng),其特征在于,所述線(xiàn)卡包括第三版本管理組件;主控單元及線(xiàn)卡上的軟件均包含數(shù)據(jù)恢復(fù)組件;第三版本管理組件,用于在主用主控單元與備用主控單元的主備狀態(tài)倒換完成后,啟動(dòng)線(xiàn)卡上的控制面和管理面的新版本軟件且以備用狀態(tài)運(yùn)行;當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后,對(duì)控制面和管理面的老版本軟件進(jìn)行注銷(xiāo),同時(shí)將控制面和管理面的新版本軟件以主用狀態(tài)運(yùn)行,刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài);數(shù)據(jù)恢復(fù)組件,當(dāng)前的主用主控單元的新版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù),或者,線(xiàn)卡上的控制面和管理面的老版本軟件基于數(shù)據(jù)恢復(fù)組件對(duì)線(xiàn)卡上的所述新版本軟件進(jìn)行數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)。
9.根據(jù)權(quán)利要求6所述的分布式通信設(shè)備軟件升級(jí)系統(tǒng),其特征在于,所述線(xiàn)卡,還用于當(dāng)線(xiàn)卡上的所述數(shù)據(jù)及數(shù)據(jù)狀態(tài)恢復(fù)完成后且在刷新轉(zhuǎn)發(fā)面軟件的數(shù)據(jù)及數(shù)據(jù)狀態(tài)之前,升級(jí)線(xiàn)卡上的轉(zhuǎn)發(fā)面軟件。
10.根據(jù)權(quán)利要求6-9中任一項(xiàng)所述的分布式通信設(shè)備軟件升級(jí)系統(tǒng),其特征在于,所述主用主控單元,還用于在主用主控單元與備用主控單元進(jìn)行主備狀態(tài)倒換后,將原主用主控單元上的老版本軟件升級(jí)為新版本軟件并以備用狀態(tài)運(yùn)行。
全文摘要
本發(fā)明公開(kāi)了一種分布式通信設(shè)備軟件升級(jí)方法及系統(tǒng),依次在主控單元和線(xiàn)卡上升級(jí)軟件,由于主控單元中包含基于物理冗余的主用主控單元和備用主控單元,線(xiàn)卡中可以使軟件以主狀態(tài)或者備狀態(tài)運(yùn)行即提供邏輯主備處理的功能,故本發(fā)明可以使新老版本軟件同時(shí)運(yùn)行,通過(guò)主用主控單元與備用主控單元的主備倒換、以及線(xiàn)卡上新版本軟件和老版本軟件的主備運(yùn)行狀態(tài)控制,使得新版本軟件無(wú)縫接替老版軟件本進(jìn)入工作狀態(tài)。本發(fā)明在線(xiàn)卡上升級(jí)控制面和管理面的軟件,在需要的情況下再升級(jí)線(xiàn)卡的轉(zhuǎn)發(fā)面軟件,以避免軟件升級(jí)帶來(lái)不必要的業(yè)務(wù)中斷,提高業(yè)務(wù)的可靠性和可用性,避免業(yè)務(wù)中斷帶來(lái)重大的經(jīng)濟(jì)損失,提升用戶(hù)業(yè)務(wù)體驗(yàn)。
文檔編號(hào)G06F11/14GK102937925SQ20121042852
公開(kāi)日2013年2月20日 申請(qǐng)日期2012年11月1日 優(yōu)先權(quán)日2012年11月1日
發(fā)明者趙真富, 陳維 申請(qǐng)人:中興通訊股份有限公司