本發(fā)明涉及通信技術(shù),尤指一種配置恢復(fù)方法及裝置。
背景技術(shù):
隨著通信技術(shù)以及計(jì)算機(jī)技術(shù)的發(fā)展,嵌入式通信設(shè)備已經(jīng)越來(lái)越廣泛的應(yīng)用在通信系統(tǒng)中。
通常,用戶可以通過(guò)網(wǎng)管服務(wù)器對(duì)嵌入式通信設(shè)備進(jìn)行設(shè)置。嵌入式通信設(shè)備中的中央處理器(Central Processing Unit,簡(jiǎn)稱CPU)獲取網(wǎng)管服務(wù)器下發(fā)的配置報(bào)文,其中,該配置報(bào)文包括設(shè)置信息,接著,CPU對(duì)該設(shè)置信息進(jìn)行處理,以將其轉(zhuǎn)換為對(duì)嵌入式通信設(shè)備上“掉電丟失配置功能元件”的配置信息,同時(shí),可以將配置報(bào)文存儲(chǔ)到隨機(jī)存取存儲(chǔ)器(Random-Access Memory,簡(jiǎn)稱RAM)中,即RAM中記錄了用戶的全部配置信息;因RAM為易失性存儲(chǔ)元件,所以需另外通過(guò)一個(gè)定時(shí)機(jī)制將RAM中存儲(chǔ)的配置報(bào)文存儲(chǔ)到大型閃存(FLASH)存儲(chǔ)元件中的設(shè)備配置文件,以備在嵌入式通信設(shè)備發(fā)生故障重啟后CPU可據(jù)此對(duì)“掉電丟失配置功能元件”執(zhí)行配置恢復(fù)操作,保證“掉電丟失配置功能元件”原有配置信息不丟失,盡快恢復(fù)設(shè)備原有承載的業(yè)務(wù)。
然而,本發(fā)明的發(fā)明人在實(shí)現(xiàn)上述現(xiàn)有技術(shù)的過(guò)程中發(fā)現(xiàn),在下一次定時(shí)寫入大型FLASH成功前,若嵌入式通信設(shè)備出現(xiàn)故障,RAM中在該定時(shí)時(shí)間間隔內(nèi)存儲(chǔ)的配置報(bào)文丟失,將導(dǎo)致嵌入式通信設(shè)備無(wú)法在重啟后正?;謴?fù),從而導(dǎo)致嵌入式通信設(shè)備的可靠性和易用性較差。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種配置恢復(fù)方法及裝置,用以解決嵌入式通信設(shè)備的可靠性和易用性較差的問(wèn)題。
為了達(dá)到本發(fā)明目的,本發(fā)明提供了一種配置恢復(fù)方法,包括:應(yīng)用于包含有第一存儲(chǔ)介質(zhì)、第二存儲(chǔ)介質(zhì)和第三存儲(chǔ)介質(zhì)的通信設(shè)備,其中所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)均為非易失性存儲(chǔ)器,所述第三存儲(chǔ)介質(zhì)為易失性存儲(chǔ)器;所述方法包括:
每新獲取到一個(gè)對(duì)所述通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文后,將該新獲取到的配置報(bào)文存儲(chǔ)至所述第三存儲(chǔ)介質(zhì),并備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì);
當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,備份存儲(chǔ)至所述第一存儲(chǔ)介質(zhì),并在備份存儲(chǔ)成功后刪除所述第二存儲(chǔ)介質(zhì)中已存儲(chǔ)至所述第一存儲(chǔ)介質(zhì)的配置報(bào)文;
根據(jù)所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行配置恢復(fù)。
進(jìn)一步的,所述方法還包括:每隔設(shè)定時(shí)間間隔觸發(fā)一次對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示。
進(jìn)一步的,所述方法還包括:當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第二存儲(chǔ)介質(zhì)中用于存儲(chǔ)配置報(bào)文的設(shè)定文件鎖定,并新建臨時(shí)文件;
將新獲取到的對(duì)通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì),包括:
檢測(cè)所述設(shè)定文件是否鎖定;如果是,則將新獲取到的對(duì)通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文存儲(chǔ)至所述臨時(shí)文件內(nèi);否則,則存儲(chǔ)至所述設(shè)定文件內(nèi);
所述在備份存儲(chǔ)成功后刪除所述第二存儲(chǔ)介質(zhì)中已存儲(chǔ)至所述第一存儲(chǔ)介質(zhì)的配置報(bào)文,包括:
在備份存儲(chǔ)成功后刪除所鎖定的設(shè)定文件,并將所述臨時(shí)文件設(shè)置為設(shè)定文件。
進(jìn)一步的,根據(jù)所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行配置恢復(fù),包括:
在所述通信設(shè)備掉電重啟后,獲取到配置恢復(fù)指令;
讀取所述第一存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行第一次配置恢復(fù);
讀取所述第二存儲(chǔ)介質(zhì)中所述設(shè)定文件存儲(chǔ)的所有配置報(bào)文,對(duì)掉電丟失配置功能元件進(jìn)行第二次配置恢復(fù);
讀取所述第二存儲(chǔ)介質(zhì)中所述臨時(shí)文件存儲(chǔ)的所有配置報(bào)文,對(duì)掉電丟失配置功能元件進(jìn)行第三次配置恢復(fù);
在根據(jù)所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行配置恢復(fù)之后,還包括:
刪除所述第二存儲(chǔ)介質(zhì)中所述設(shè)定文件和臨時(shí)文件,并新建空的設(shè)定文件。
進(jìn)一步的,所述方法還包括:
接收網(wǎng)管服務(wù)器通過(guò)通信鏈路依次下發(fā)的對(duì)通信設(shè)備上掉電丟失配置功能元件的各配置報(bào)文。
進(jìn)一步的,在將該配置報(bào)文存儲(chǔ)至所述第三存儲(chǔ)介質(zhì)之后,還包括:
解析該配置報(bào)文,并基于解析結(jié)果對(duì)所述掉電丟失配置功能元件進(jìn)行配置;
如果配置成功,則向所述網(wǎng)管服務(wù)器返回組裝錯(cuò)誤碼為成功的第一通知消息,并觸發(fā)執(zhí)行所述備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì)的操作;否則,刪除所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的該配置報(bào)文,并向所述網(wǎng)管服務(wù)器返回組裝錯(cuò)誤碼為失敗的通知消息。
本發(fā)明還提供了一種配置恢復(fù)裝置,包括:
第一存儲(chǔ)模塊,用于每新獲取到一個(gè)對(duì)所述通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文后,將該新獲取到的配置報(bào)文存儲(chǔ)至所述第三存儲(chǔ)介質(zhì),并備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì);
第二存儲(chǔ)模塊,用于當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,備份存儲(chǔ)至所述第一存儲(chǔ)介質(zhì),并在備份存儲(chǔ)成功后刪除所述第二存儲(chǔ)介質(zhì)中已存儲(chǔ)至所述第一存儲(chǔ)介質(zhì)的配置報(bào)文;
恢復(fù)模塊,用于根據(jù)所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行配置恢復(fù)。
進(jìn)一步的,所述裝置還包括:觸發(fā)模塊;
所述觸發(fā)模塊,用于每隔設(shè)定時(shí)間間隔觸發(fā)一次對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示。
進(jìn)一步的,所述裝置還包括:處理模塊,用于當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第二存儲(chǔ)介質(zhì)中用于存儲(chǔ)配置報(bào)文的設(shè)定文件鎖定,并新建臨時(shí)文件;
所述第二存儲(chǔ)模塊,具體用于:檢測(cè)所述設(shè)定文件是否鎖定;如果是,則將新獲取到的對(duì)通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文存儲(chǔ)至所述臨時(shí)文件內(nèi);否則,則存儲(chǔ)至所述設(shè)定文件內(nèi);在備份存儲(chǔ)成功后刪除所鎖定的設(shè)定文件,并將所述臨時(shí)文件設(shè)置為設(shè)定文件。
進(jìn)一步的,所述恢復(fù)模塊具體用于:
在所述通信設(shè)備掉電重啟后,獲取到配置恢復(fù)指令;
讀取所述第一存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行第一次配置恢復(fù);讀取所述第二存儲(chǔ)介質(zhì)中所述設(shè)定文件存儲(chǔ)的所有配置報(bào)文,對(duì)掉電丟失配置功能元件進(jìn)行第二次配置恢復(fù);讀取所述第二存儲(chǔ)介質(zhì)中所述臨時(shí)文件存儲(chǔ)的所有配置報(bào)文,對(duì)掉電丟失配置功能元件進(jìn)行第三次配置恢復(fù);
所述第二存儲(chǔ)模塊,還用于在所述恢復(fù)模塊執(zhí)行完第三次配置恢復(fù)后,刪除所述第二存儲(chǔ)介質(zhì)中所述設(shè)定文件和臨時(shí)文件,并新建空的設(shè)定文件。
進(jìn)一步的,還包括:接收模塊;
所述接收模塊,用于接收網(wǎng)管服務(wù)器通過(guò)通信鏈路依次下發(fā)的對(duì)通信設(shè)備上掉電丟失配置功能元件的各配置報(bào)文。
進(jìn)一步的,還包括:配置模塊;
所述配置模塊,用于解析所述接收模塊接收的網(wǎng)管服務(wù)器下發(fā)的配置報(bào)文,并基于解析結(jié)果對(duì)所述掉電丟失配置功能元件進(jìn)行配置;如果配置成功,則向所述網(wǎng)管服務(wù)器返回組裝錯(cuò)誤碼為成功的第一通知消息,并觸發(fā)所述第一存儲(chǔ)模塊執(zhí)行所述備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì)的操作;否則,刪除所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的該配置報(bào)文,并向所述網(wǎng)管服務(wù)器返回組裝錯(cuò)誤碼為失敗的通知消息。
與現(xiàn)有技術(shù)相比,本發(fā)明提供的配置恢復(fù)方法及裝置,包括:每新獲取到一個(gè)對(duì)所述通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文后,將該新獲取到的配置報(bào)文存儲(chǔ)至所述第三存儲(chǔ)介質(zhì),并備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì);當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,備份存儲(chǔ)至所述第一存儲(chǔ)介質(zhì),并在備份存儲(chǔ)成功后刪除所述第二存儲(chǔ)介質(zhì)中已存儲(chǔ)至所述第一存儲(chǔ)介質(zhì)的配置報(bào)文;根據(jù)所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行配置恢復(fù)。本發(fā)明實(shí)施例實(shí)現(xiàn)了通過(guò)第一存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文進(jìn)行所述通信設(shè)備的配置恢復(fù)操作,避免了由于第三存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文丟失導(dǎo)致的通信設(shè)備無(wú)法正常恢復(fù),進(jìn)而提高了通信設(shè)備的可靠性和易用性。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書中闡述,并且,部分地從說(shuō)明書中變得顯而易見(jiàn),或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在說(shuō)明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
附圖說(shuō)明
附圖用來(lái)提供對(duì)本發(fā)明技術(shù)方案的進(jìn)一步理解,并且構(gòu)成說(shuō)明書的一部分,與本申請(qǐng)的實(shí)施例一起用于解釋本發(fā)明的技術(shù)方案,并不構(gòu)成對(duì)本發(fā)明技術(shù)方案的限制。
圖1為本發(fā)明配置恢復(fù)方法一實(shí)施例的流程示意圖;
圖2為本發(fā)明配置恢復(fù)方法一實(shí)施例的通信設(shè)備的結(jié)構(gòu)示意圖;
圖3為本發(fā)明配置恢復(fù)裝置一實(shí)施例的結(jié)構(gòu)示意圖;
圖4為本發(fā)明配置恢復(fù)裝置二實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
本發(fā)明實(shí)施例提供的配置恢復(fù)方法具體可以應(yīng)用于但不限于嵌入式通信設(shè)備進(jìn)行配置恢復(fù)時(shí)。本實(shí)施例提供的配置恢復(fù)方法具體可以通過(guò)配置恢復(fù)裝置來(lái)執(zhí)行,該配置恢復(fù)裝置可以集成在嵌入式通信設(shè)備中,或者單獨(dú)設(shè)置,其中,該配置恢復(fù)裝置可以采用軟件和/或硬件的方式來(lái)實(shí)現(xiàn)。以下對(duì)本實(shí)施例提供的配置恢復(fù)方法及裝置進(jìn)行詳細(xì)地說(shuō)明。
圖1為本發(fā)明配置恢復(fù)方法一實(shí)施例的流程示意圖,圖2為本發(fā)明配置恢復(fù)方法一實(shí)施例的通信設(shè)備的結(jié)構(gòu)示意圖。如圖1所示,本實(shí)施例中的執(zhí)行主體可以是配置恢復(fù)裝置,本發(fā)明提供的配置恢復(fù)方法,應(yīng)用于包含有第一存儲(chǔ)介質(zhì)、第二存儲(chǔ)介質(zhì)和第三存儲(chǔ)介質(zhì)的通信設(shè)備,其中所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)均為非易失性存儲(chǔ)器,所述第三存儲(chǔ)介質(zhì)為易失性存儲(chǔ)器;所述方法包括:
步驟101、每新獲取到一個(gè)對(duì)通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文后,將該新獲取到的配置報(bào)文存儲(chǔ)至第三存儲(chǔ)介質(zhì),并備份存儲(chǔ)在第二存儲(chǔ)介質(zhì)。
如圖2所示,該通信設(shè)備可以為通過(guò)通信鏈路與網(wǎng)管服務(wù)器連接的嵌入式通信設(shè)備,包括CPU,CPU分別與第一存儲(chǔ)介質(zhì)、第二存儲(chǔ)介質(zhì)、第三存儲(chǔ)介質(zhì)以及掉電丟失配置功能元件連接。當(dāng)然,本發(fā)明實(shí)施例中所述的通信設(shè)備還可以是設(shè)置有掉電丟失配置功能元件的其他任何一種設(shè)備。舉例來(lái)講,第一存儲(chǔ)介質(zhì)與第二存儲(chǔ)介質(zhì)可以是不同的FLASH閃存芯片,第三存儲(chǔ)介質(zhì)可以是RAM,該掉電丟失配置功能元件可以是現(xiàn)場(chǎng)可編程門陣列(Field-Programmable Gate Array,簡(jiǎn)稱FPGA)。
步驟102、當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,備份存儲(chǔ)至所述第一存儲(chǔ)介質(zhì),并在備份存儲(chǔ)成功后刪除所述第二存儲(chǔ)介質(zhì)中已存儲(chǔ)至所述第一存儲(chǔ)介質(zhì)的配置報(bào)文。
對(duì)于當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),可以是以下兩種觸發(fā)方式中的一種:
第一觸發(fā)方式、每隔設(shè)定時(shí)間間隔觸發(fā)一次對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示。
第二觸發(fā)方式、用戶手動(dòng)觸發(fā)對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示。
步驟103、根據(jù)所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行配置恢復(fù)。
如果獲取到的各個(gè)配置報(bào)文在對(duì)通信設(shè)備進(jìn)行配置恢復(fù)時(shí)是具有順序的,例如為獲取到的時(shí)間順序,所以在本發(fā)明實(shí)施例中,可按照對(duì)配置報(bào)文的獲取順序,在各存儲(chǔ)介質(zhì)中存儲(chǔ)各配置報(bào)文。典型的,如果各配置報(bào)文是通過(guò)由與通信設(shè)備連接的網(wǎng)管服務(wù)器下發(fā)獲取得到的,則這些配置報(bào)文的存儲(chǔ)順序可以是網(wǎng)管服務(wù)器下發(fā)報(bào)文的順序??紤]到受網(wǎng)絡(luò)環(huán)境影響,通信設(shè)備對(duì)配置報(bào)文的接收順序不一定會(huì)與網(wǎng)管服務(wù)器對(duì)報(bào)文的下發(fā)順序一致,所以網(wǎng)管服務(wù)器可在下發(fā)的每一個(gè)配置報(bào)文中添加配置順序標(biāo)號(hào)。在通信設(shè)備側(cè),按照該配置順序標(biāo)號(hào)大小在各存儲(chǔ)介質(zhì)中存儲(chǔ)各配置報(bào)文。相應(yīng)的,在通信設(shè)備出現(xiàn)故障,需要進(jìn)行配置恢復(fù)時(shí),可首先通過(guò)第一存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文進(jìn)行配置恢復(fù),完成之后,再使用第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文進(jìn)行配置恢復(fù)。配置恢復(fù)時(shí)對(duì)各存儲(chǔ)介質(zhì)中的配置報(bào)文的讀取順序?yàn)榇鎯?chǔ)順序。也就是說(shuō),根據(jù)各配置報(bào)文的配置順序進(jìn)行配置恢復(fù)。
本實(shí)施例提供的配置恢復(fù)方法,通過(guò)在通信設(shè)備中增設(shè)一非易失性存儲(chǔ)介質(zhì),在將易失性存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置文件存儲(chǔ)至原有非易失性存儲(chǔ)介質(zhì)的存儲(chǔ)間隔內(nèi),能夠利用所增設(shè)的存儲(chǔ)介質(zhì)對(duì)該存儲(chǔ)間隔內(nèi)新獲取到的配置文件加以備份,這樣使得在下一次將易失性存儲(chǔ)介質(zhì)中的所有配置文件存儲(chǔ)至原有非易性性存儲(chǔ)介質(zhì)成功前,若通信設(shè)備出現(xiàn)故障,可以基于兩個(gè)非易失性存儲(chǔ)介質(zhì)中的文件恢復(fù)對(duì)設(shè)備中的掉電丟失配置功能元件的配置,從而解決了現(xiàn)有技術(shù)中配置定時(shí)存儲(chǔ)機(jī)制中存在的已成功部署配置丟失問(wèn)題,提高了通信設(shè)備的可靠性和易用性。
在本實(shí)施例中,實(shí)現(xiàn)了通過(guò)第一存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文進(jìn)行所述通信設(shè)備的配置恢復(fù)操作,避免了由于第三存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文丟失導(dǎo)致的通信設(shè)備無(wú)法正?;謴?fù),進(jìn)而提高了通信設(shè)備的可靠性和易用性。
在上述實(shí)施例的基礎(chǔ)上,所述方法,還可以包括:
當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第二存儲(chǔ)介質(zhì)中用于存儲(chǔ)配置報(bào)文的設(shè)定文件鎖定,并新建臨時(shí)文件;
將新獲取到的對(duì)通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì),包括:
檢測(cè)所述設(shè)定文件是否鎖定;如果是,則將新獲取到的對(duì)通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文存儲(chǔ)至所述臨時(shí)文件內(nèi);否則,則存儲(chǔ)至所述設(shè)定文件內(nèi);
所述在備份存儲(chǔ)成功后刪除所述第二存儲(chǔ)介質(zhì)中已存儲(chǔ)至所述第一存儲(chǔ)介質(zhì)的配置報(bào)文,包括:
在備份存儲(chǔ)成功后刪除所鎖定的設(shè)定文件,并將所述臨時(shí)文件設(shè)置為設(shè)定文件。
具體的,在觸發(fā)了對(duì)通信設(shè)備上掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),可首先鎖定第二存儲(chǔ)介質(zhì)中用于存儲(chǔ)配置報(bào)文的設(shè)定文件,然后將第三存儲(chǔ)介質(zhì)中的所有配置報(bào)文寫到第一存儲(chǔ)介質(zhì)。其中,鎖定表示該設(shè)定文件中的配置報(bào)文內(nèi)容處于寫往第一存儲(chǔ)介質(zhì)的中間狀態(tài),后續(xù)若寫入第一存儲(chǔ)介質(zhì)成功,則該設(shè)定文件需要被刪除。若寫入第一存儲(chǔ)介質(zhì)完成前通信設(shè)備出現(xiàn)故障,則需使用設(shè)定文件對(duì)掉電丟失配置功能元件進(jìn)行配置恢復(fù)。用戶不感知將第三存儲(chǔ)介質(zhì)中的所有配置文件寫入第一存儲(chǔ)介質(zhì)的過(guò)程,該過(guò)程中用戶仍可正常對(duì)通信設(shè)備進(jìn)行業(yè)務(wù)的配置,該過(guò)程中新獲取到的配置文件均寫入到第二存儲(chǔ)介質(zhì)中用于存儲(chǔ)配置報(bào)文的另外一個(gè)文件也即臨時(shí)文件中。
為更清楚的闡述本發(fā)明實(shí)施例所提供的技術(shù)方案,現(xiàn)以定時(shí)觸發(fā)配置存儲(chǔ)的方式為例加以說(shuō)明。舉例來(lái)講,假設(shè),定時(shí)向第一存儲(chǔ)介質(zhì)(例如主用FLASH)寫第三存儲(chǔ)介質(zhì)中的配置報(bào)文的周期為T;在某t1時(shí)刻(設(shè)為第一時(shí)刻),第三存儲(chǔ)介質(zhì)(例如RAM)中存儲(chǔ)有N條配置報(bào)文(例如有配置報(bào)文1、配置報(bào)文2和配置報(bào)文3共三條配置報(bào)文),第一存儲(chǔ)介質(zhì)中的配置報(bào)文文件3中共備份有所述N條配置報(bào)文,第二存儲(chǔ)介質(zhì)(例如備用FLASH)為空;
(1)在t1至t1+T時(shí)間段內(nèi),新接收到網(wǎng)管服務(wù)器下發(fā)的M條配置報(bào)文(例如為配置報(bào)文4和配置報(bào)文5共兩條),RAM中存儲(chǔ)該M條配置報(bào)文,若該過(guò)程中無(wú)用戶觸發(fā)的配置文件寫操作,同步備份該M條配置報(bào)文到備用FLASH中用于存儲(chǔ)配置報(bào)文的設(shè)定文件;
(2)在t1+T時(shí)間節(jié)點(diǎn)(設(shè)為第二時(shí)刻t2),定時(shí)器到時(shí),觸發(fā)向主用FLASH寫文件的執(zhí)行操作,此時(shí)將備用FLASH中用于存儲(chǔ)配置報(bào)文的設(shè)定文件鎖定,將RAM中的所有(M+N)條配置報(bào)文按序(例如可以為網(wǎng)管服務(wù)器下發(fā)報(bào)文的順序,或者為保證配置恢復(fù)的效率,重新排的序)重新寫到主用FLASH中的配置報(bào)文文件3;在寫配置報(bào)文文件3的過(guò)程中,若網(wǎng)管服務(wù)器再下發(fā)L條配置報(bào)文(例如為一條配置報(bào)文6),RAM中新增該L條配置報(bào)文,同時(shí)將該L條配置報(bào)文存儲(chǔ)到用于存儲(chǔ)配置報(bào)文的臨時(shí)文件中;在寫主用FLASH中的配置報(bào)文文件3成功后,刪除第二存儲(chǔ)介質(zhì)中原有的設(shè)定文件,將臨時(shí)文件重命名為設(shè)定文件,若無(wú)臨時(shí)文件則新建空的設(shè)定文件;
(3)在寫主用FLASH中的配置報(bào)文文件3成功后至某一時(shí)間點(diǎn)(該時(shí)間點(diǎn)小于t1+2T,設(shè)為第三時(shí)刻t3),新接收網(wǎng)管服務(wù)器下發(fā)的K條配置報(bào)文(設(shè)為配置報(bào)文7和配置報(bào)文8共兩條),RAM中存儲(chǔ)(M+N+L+K)條報(bào)文,備用FLASH中的設(shè)定文件存儲(chǔ)(L+K)條報(bào)文,主用FLASH中配置報(bào)文文件3存儲(chǔ)了(M+N)條報(bào)文;t3時(shí)刻接收到用戶觸發(fā)的配置報(bào)文指令后,將第二存儲(chǔ)介質(zhì)中的設(shè)定文件鎖定,將RAM存儲(chǔ)的所有配置報(bào)文寫到主用FLASH中的配置報(bào)文文件3中,該過(guò)程網(wǎng)管服務(wù)器不會(huì)進(jìn)行配置報(bào)文下發(fā),故寫配置報(bào)文文件3成功后,僅需將設(shè)定文件刪除,再在第二存儲(chǔ)介質(zhì)中新建一個(gè)空白的設(shè)定文件即可。
對(duì)于通信設(shè)備故障后的配置恢復(fù)流程:可首先采用主用FLASH中的配置報(bào)文文件3對(duì)設(shè)備上的掉電丟失配置功能元件進(jìn)行配置恢復(fù),完成之后,再讀取備用FLASH中設(shè)定文件中的各配置報(bào)文對(duì)設(shè)備上的掉電丟失配置功能元件進(jìn)行配置恢復(fù),之后讀取第二存儲(chǔ)介質(zhì)中存儲(chǔ)于臨時(shí)文件中的各配置報(bào)文對(duì)設(shè)備上的掉電丟失配置功能元件進(jìn)行配置恢復(fù);進(jìn)一步的,配置恢復(fù)完成之后,可將備用FLASH中原有的用于存儲(chǔ)配置報(bào)文的設(shè)定文件和臨時(shí)文件刪除,新建空的設(shè)定文件,后續(xù)就可以執(zhí)行定時(shí)向第一存儲(chǔ)介質(zhì)中存儲(chǔ)配置文件的操作了。
由于備用FLASH僅存儲(chǔ)定時(shí)時(shí)間間隔內(nèi)新獲取到的各配置報(bào)文,而這些配置報(bào)文相較于RAM存儲(chǔ)的所有配置報(bào)文相比,容量要小很多,所以對(duì)備用FLASH的讀寫速度較快,能夠及時(shí)將這些配置報(bào)文存儲(chǔ)起來(lái),有效地防止其掉電丟失。
需要說(shuō)明的是,在本發(fā)明實(shí)施例中,向各非易失性存儲(chǔ)介質(zhì)存儲(chǔ)數(shù)據(jù)的方式為覆蓋寫方式,也即先擦除存儲(chǔ)介質(zhì)中的原有數(shù)據(jù),再向該存儲(chǔ)介質(zhì)寫入數(shù)據(jù)。
進(jìn)一步的,在上述實(shí)施例的基礎(chǔ)上,所述方法還可以包括:
接收網(wǎng)管服務(wù)器通過(guò)通信鏈路依次下發(fā)的對(duì)通信設(shè)備上掉電丟失配置功能元件的各配置報(bào)文。
舉例來(lái)講,在獲取網(wǎng)管服務(wù)器通過(guò)通信鏈路依次下發(fā)的對(duì)通信設(shè)備的各配置報(bào)文后,首先檢查第二存儲(chǔ)介質(zhì)中用于存儲(chǔ)配置報(bào)文的設(shè)定文件是否鎖定,如未鎖定則將報(bào)文寫到該設(shè)定文件中,如該設(shè)定文件鎖定則將獲取到的配置報(bào)文寫到臨時(shí)文件中。或者,不鎖定設(shè)定文件,在向主用FLASH寫入配置文件的過(guò)程中,如果新接收到配置報(bào)文,則將其也存儲(chǔ)在備用FLASH的用于存儲(chǔ)配置報(bào)文的設(shè)定文件中,并將新接收到的報(bào)文加以特殊標(biāo)識(shí);之后,待向第一存儲(chǔ)介質(zhì)配置文件寫操作完成后,保留配置報(bào)文的設(shè)定文件中帶特殊標(biāo)識(shí)的配置內(nèi)容,其他的進(jìn)行刪除。
進(jìn)一步的,在上述實(shí)施例的基礎(chǔ)上,在將該配置報(bào)文存儲(chǔ)至所述第三存儲(chǔ)介質(zhì)之后,還包括:
解析該配置報(bào)文,并基于解析結(jié)果對(duì)所述掉電丟失配置功能元件進(jìn)行配置;
如果配置成功,則向所述網(wǎng)管服務(wù)器返回組裝錯(cuò)誤碼為成功的第一通知消息,并觸發(fā)執(zhí)行所述備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì)的操作;否則,刪除所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的該配置報(bào)文,并向所述網(wǎng)管服務(wù)器返回組裝錯(cuò)誤碼為失敗的通知消息。
圖3為本發(fā)明配置恢復(fù)裝置一實(shí)施例的結(jié)構(gòu)示意圖,如圖3所示,本發(fā)明提供的配置恢復(fù)裝置,包括:第一存儲(chǔ)模塊31、第二存儲(chǔ)模塊32和恢復(fù)模塊33。其中,
第一存儲(chǔ)模塊31,用于每新獲取到一個(gè)對(duì)所述通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文后,將該新獲取到的配置報(bào)文存儲(chǔ)至所述第三存儲(chǔ)介質(zhì),并備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì);
第二存儲(chǔ)模塊32,用于當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,備份存儲(chǔ)至所述第一存儲(chǔ)介質(zhì),并在備份存儲(chǔ)成功后刪除所述第二存儲(chǔ)介質(zhì)中已存儲(chǔ)至所述第一存儲(chǔ)介質(zhì)的配置報(bào)文;
恢復(fù)模塊33,用于根據(jù)所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行配置恢復(fù)。
在本實(shí)施例中,每新獲取到一個(gè)對(duì)所述通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文后,將該新獲取到的配置報(bào)文存儲(chǔ)至所述第三存儲(chǔ)介質(zhì),并備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì);當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,備份存儲(chǔ)至所述第一存儲(chǔ)介質(zhì),并在備份存儲(chǔ)成功后刪除所述第二存儲(chǔ)介質(zhì)中已存儲(chǔ)至所述第一存儲(chǔ)介質(zhì)的配置報(bào)文;根據(jù)所述第一存儲(chǔ)介質(zhì)和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行配置恢復(fù)。實(shí)現(xiàn)了通過(guò)第一存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文和第二存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文進(jìn)行所述通信設(shè)備的配置恢復(fù)操作,避免了由于第三存儲(chǔ)介質(zhì)存儲(chǔ)的配置報(bào)文丟失導(dǎo)致的通信設(shè)備無(wú)法正常恢復(fù),進(jìn)而提高了通信設(shè)備的可靠性和易用性。
圖4為本發(fā)明配置恢復(fù)裝置二實(shí)施例的結(jié)構(gòu)示意圖,如圖4所示,在上述實(shí)施例的基礎(chǔ)上,本發(fā)明提供的配置恢復(fù)裝置,還可以包括:觸發(fā)模塊34,所述觸發(fā)模塊34,用于每隔設(shè)定時(shí)間間隔觸發(fā)一次對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示。
進(jìn)一步的,所述裝置還可以包括:處理模塊35。
處理模塊35用于當(dāng)觸發(fā)了對(duì)所述掉電丟失配置功能元件的配置存儲(chǔ)指示時(shí),將所述第二存儲(chǔ)介質(zhì)中用于存儲(chǔ)配置報(bào)文的設(shè)定文件鎖定,并新建臨時(shí)文件;
所述第二存儲(chǔ)模塊32,具體用于檢測(cè)所述設(shè)定文件是否鎖定;如果是,則將新獲取到的對(duì)通信設(shè)備上掉電丟失配置功能元件的配置報(bào)文存儲(chǔ)至所述臨時(shí)文件內(nèi);否則,則存儲(chǔ)至所述設(shè)定文件內(nèi);在備份存儲(chǔ)成功后刪除所鎖定的設(shè)定文件,并將所述臨時(shí)文件設(shè)置為設(shè)定文件。
進(jìn)一步的,在上述實(shí)施例的基礎(chǔ)上,所述恢復(fù)模塊33具體用于:
在所述通信設(shè)備掉電重啟后,獲取到配置恢復(fù)指令;
讀取所述第一存儲(chǔ)介質(zhì)存儲(chǔ)的所有配置報(bào)文,對(duì)所述掉電丟失配置功能元件進(jìn)行第一次配置恢復(fù);讀取所述第二存儲(chǔ)介質(zhì)中所述設(shè)定文件存儲(chǔ)的所有配置報(bào)文,對(duì)掉電丟失配置功能元件進(jìn)行第二次配置恢復(fù);讀取所述第二存儲(chǔ)介質(zhì)中所述臨時(shí)文件存儲(chǔ)的所有配置報(bào)文,對(duì)掉電丟失配置功能元件進(jìn)行第三次配置恢復(fù);
所述第二存儲(chǔ)模塊32,還用于在所述恢復(fù)模塊執(zhí)行完第三次配置恢復(fù)后,刪除所述第二存儲(chǔ)介質(zhì)中所述設(shè)定文件和臨時(shí)文件,并新建空的設(shè)定文件。
進(jìn)一步的,在上述實(shí)施例的基礎(chǔ)上,還包括:接收模塊36;
所述接收模塊36,用于接收網(wǎng)管服務(wù)器通過(guò)通信鏈路依次下發(fā)上掉電丟失配置功能元件的對(duì)通信設(shè)備的各配置報(bào)文。
進(jìn)一步的,在上述實(shí)施例的基礎(chǔ)上,還可以包括:配置模塊37;
所述配置模塊37,用于解析所述接收模塊接收的網(wǎng)管服務(wù)器下發(fā)的配置報(bào)文,并基于解析結(jié)果對(duì)所述掉電丟失配置功能元件進(jìn)行配置;如果配置成功,則向所述網(wǎng)管服務(wù)器返回組裝錯(cuò)誤碼為成功的第一通知消息,并觸發(fā)所述第一存儲(chǔ)模塊執(zhí)行所述備份存儲(chǔ)在所述第二存儲(chǔ)介質(zhì)的操作;否則,刪除所述第三存儲(chǔ)介質(zhì)存儲(chǔ)的該配置報(bào)文,并向所述網(wǎng)管服務(wù)器返回組裝錯(cuò)誤碼為失敗的通知消息。
雖然本發(fā)明所揭露的實(shí)施方式如上,但所述的內(nèi)容僅為便于理解本發(fā)明而采用的實(shí)施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實(shí)施的形式及細(xì)節(jié)上進(jìn)行任何的修改與變化,但本發(fā)明的專利保護(hù)范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。