專利名稱:對通信設備中配置命令進行清除的方法和裝置的制作方法
技術領域:
本發明涉及電子技術領域,尤其涉及一種對通信設備中配置命令進行清除的方法和裝置。
背景技術:
當通信設備中配置命令很多時,需要對配置命令進行清除。現有技術中的一種配置命令的清除方法包括當通信設備中配置命令達到一定的數量后,對上述通信設備進行重啟,從而清除通信設備中所有配置命令。 上述現有技術中的配置命令的清除方法的缺點為需要對通信設備進行重啟,不能對通信設備中的配置命令進行部分清除,只能整體清除。
發明內容
本發明的實施例提供了一種對通信設備中配置命令進行清除的方法和裝置,以實現有效地地對通信設備中的配置命令進行清除。一種對通信設備中配置命令進行清除的方法,包括獲取通信設備中的各個網元的層次信息和各個網元上部署的配置命令信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,根據所有網元上部署的配置命令的層次信息構造初始狀態的配置命令樹,所述配置命令樹中每一個節點代表一個配置命令;根據用戶指定的所述通信設備需要恢復到的特定配置狀態得到配置命令樹的目標狀態,將所述配置命令樹的初始狀態和目標狀態進行比較,根據比較結果確定所述配置命令樹中需要清除的節點,按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除。一種對通信設備中配置命令進行清除的裝置,包括配置命令樹構造模塊,用于獲取通信設備中的各個網元的層次信息和各個網元上部署的配置命令信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,根據所有網元上部署的配置命令的層次信息,構造初始狀態的配置命令樹,所述配置命令樹中每一個節點代表一個配置命令;配置命令清除處理模塊,用于根據用戶指定的所述通信設備需要恢復到的特定配置狀態得到配置命令樹的目標狀態,將所述配置命令樹的初始狀態和目標狀態進行比較,根據比較結果確定所述配置命令樹中需要清除的節點,按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除。由上述本發明的實施例提供的技術方案可以看出,本發明實施例通過構造配置命令樹,按照通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除,可以有效地、快速地對通信設備中配置命令進行清除。
圖I為本發明實施例一提供的一種對通信設備中配置命令進行清除的方法的具體處理流程圖;圖2為本發明實施例一提供的一種通過系統命令將配置命令設置為branch或Leaf的示意圖;圖3為本發明實施例二提供的一種對通信設備中配置命令進行清除的裝置的具體結構圖。
具體實施例方式下面將參考附圖詳細說明本發明實施例。實施例一 該實施例提供的一種對通信設備中配置命令進行清除的方法,其具體處理流程如圖I所示,包括如下的處理步驟步驟11、獲取通信設備中的各個網元的層次信息和各個網元上部署的配置命令信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,根據所有網元上部署的配置命令的層次信息構造初始狀態的配置命令樹。向通信設備中各個網元下發命令,命令各個網元返回網元的層次等配置信息和各個網元上部署的配置命令信息。各個網元的層次關系代表了各個網元上部署的配置命令的層次關系。根據各個網元返回的上述信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息。即將處于第一層次的網元上部署的配置命令作為branch (枝干節點),將處于所述第一層次的網元之下的第二層次的網元上部署的配置命令作為Branch或Leaf (葉子節點)。Branch下可以含有Branch(允許出現多次嵌套),也可以含有Leaf, Leaf下不能含有Branch,即Leaf為最底層的節點。設定唯一的treerooW根節點),默認為配置樹里所有層次配置節點的‘根’節點。根據treeroot、所有的branch和Leaf構造出一個含有唯一 TreeNode的配置命令樹,所述配置命令樹中每一個節點代表一個配置命令。該實施例提供的一種將各個網元上部署的配置命令轉換為配置命令樹的示意圖如圖2所示,在圖2中,用不同的縮進量類分別表示treeroot、branch和Leaf,如果某節點還有下一級節點,則該節點為Branch,如果某節點沒有下一級節點,則該節點為Leaf。步驟12、根據用戶指定的所述通信設備需要恢復到的特定配置狀態得到配置命令樹的目標狀態,將所述配置命令樹的初始狀態和目標狀態進行比較,根據比較結果確定所述配置命令樹中需要清除的節點。上述構造的配置命令樹為初始狀態的配置命令樹,配置命令樹的目標狀態為清除了節點后的配置命令樹的狀態。根據用戶指定的所述通信設備需要恢復到的特定配置狀態得到配置命令樹的目標狀態,該目標狀態可以為空樹狀態、保留幾個分支的樹狀態等。然后,可以根據配置命令樹的目標狀態采取人工或者通過外部程序的方式構造相應的配置命令樹的樹形格式,保存在指定存儲空間中,再由系統進行讀取。根據所述配置命令樹的初始狀態和目標狀態,可以確定所述配置命令樹中需要清除的節點。將所述配置命令樹的初始狀態和目標狀態進行比較,根據比較結果確定所述配置命令樹中需要保留和需要清除的節點(branch, leaf)信息。步驟13、按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除。按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除。一個配置命令中可以包含多個參數,比如一個配置命令可以表示為Cmd$l{$2|$3$4} [$5]中,在該配置命令中,參數$1必選,|表示參數$2與參數$3$4選擇其一,[]表不參數$5是可選的。通信設備默認的清除規則為undo cmd,即在任一個配置命令前面加上undo (卸載)構造默認的清除規則的命令行,通過運行所述默認的清除規則的命令行來清除所述配、置命令。根據配置命令中包含的全部或者部分參數的信息和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行,通過運行所述自定義的清除規則的命令行來清除所述配置命令。比如,上述自定義的清除規則包括但不限于如下的幾種形式I、對于包含多個必選參數的配置命令,將其中的一個參數作為變量參數和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行。比如,對于包含3個必選參數的配置命令,cmd$l$2$3,自定義的清除規則為undo cmd[var => $2] [$3],則從命令中將$2作為變量參數來構造清除命令行。2、某些配置命令是enable cmd這種形式,即不能用undo來清除,這部分配置命令的清除需要加上disable,則自定義的清除規則為disable cmd。3、默認從后往前依次減少配置命令的參數和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行。比如,對于包含4個必選參數的配置命令,cmd$l$2$3$4,構造的自定義的清除規則依次為undo cmd$l$2$3 ;undo cmd$l$2 ;undo cmd$l。即首先用undo cmd$l$2$3來清除配置命令。如果不清除不成功,則用undo cmd$l$2來清除配置命令。如果清除仍然不成功,則用undo cmd$l來清除配置命令。4、當配置命令包含的參數小于設定的數值,比如<=4時,將配置命令中包含的所有參數分解為各個單獨的參數,根據各個單獨的參數的所有排列組合和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行。例如,對于cmd$l$2$3,自定義的清除規則可以為undo cmd$l$2, undo cmd$l$3,undo cmd$2$3, undo cmd$l, undo cmd$3, undo cmd$2。依次遍歷上述各種自定義的清除規
貝U,來清除上述配置命令。由上述本發明的實施例提供的技術方案可以看出,本發明實施例通過構造配置命令樹,按照通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除,可以有效地、快速地對通信設備中配置命令進行清除。實施例二該實施例提供的一種對通信設備中配置命令進行清除的裝置,其具體結構如圖3所示,包括如下的模塊
配置命令樹構造模塊31,用于獲取通信設備中的各個網元的層次信息和各個網元上部署的配置命令信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,根據所有網元上部署的配置命令的層次信息,構造初始狀態的配置命令樹,所述配置命令樹中每一個節點代表一個配置命令;配置命令清除處理模塊32,用于根據用戶指定的所述通信設備需要恢復到的特定配置狀態得到配置命令樹的目標狀態,將所述配置命令樹的初始狀態和目標狀態進行比較,根據比較結果確定所述配置命令樹中需要清除的節點,按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除。具體的,所述的配置命令樹構造模塊31,還用于向通信設備中各個網元下發命令,命令各個網元返回網元的層次信息和各個網元上部署的配置命令信息;根據所述各個網元返回的信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,將處于第一層次的網元上部署的配置命令作為枝干節點branch,將處于所述第一層次的網元之下的第二層次的網元上部署的配置命令作為Branch 或葉子節點Leaf,所述Leaf為最底層的節點,選定唯一的根節點treeroot,根據treeroot、所有的branch和Leaf構造出初始狀態的配置命令樹。具體的,所述的配置命令清除處理模塊32,還用于在配置命令前面加上undo卸載構造默認的清除規則的命令行,通過運行所述命令行來清除所述配置命令;根據配置命令中包含的全部或者部分參數的信息和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行,通過運行所述自定義的清除規則的命令行來清除所述配置命令。具體的,對于包含多個必選參數的配置命令,將其中的一個參數作為變量參數和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行;或者,默認從后往前依次減少配置命令的參數和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行;或者,當配置命令包含的參數小于設定的數值時,將配置命令中包含的所有參數分解為各個單獨的參數,根據各個單獨的參數的所有排列組合和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行。進一步地,所述的配置命令清除處理模塊32,還用于當一個需要清除的第一節點依賴于第二節點時,先清除所述第二節點再清除所述第一節點。應用本發明實施例的裝置對通信設備中配置命令進行清除的具體過程與前述方法實施例類似,此處不再贅述。本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質中,該程序在執行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random AccessMemory, RAM)等。綜上所述,本發明實施例通過構造配置命令樹,按照通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除,可以有效地、快速地對通信設備中配置命令進行清除,將通信設備恢復到特定的配置狀態,而不用重新啟動通信設備。本發明實施例的方法與組件裝置可以被采用華為VRP平臺的所有產品集成,并可應用于各種產品自動化驗證過程中,迅速清除通信設備殘留配置,使得設備處于“空”配置狀態。
以上所述,僅為本發明較佳的具體實施方式
,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應該以權利要求的保護范圍為準。
權利要求
1.一種對通信設備中配置命令進行清除的方法,其特征在于,包括 獲取通信設備中的各個網元的層次信息和各個網元上部署的配置命令信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,根據所有網元上部署的配置命令的層次信息構造初始狀態的配置命令樹,所述配置命令樹中每一個節點代表一個配置命令; 根據用戶指定的所述通信設備需要恢復到的特定配置狀態得到配置命令樹的目標狀態,將所述配置命令樹的初始狀態和目標狀態進行比較,根據比較結果確定所述配置命令樹中需要清除的節點; 按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除。
2.根據權利要求I所述的方法,其特征在于,所述的獲取通信設備中的各個網元的層次信息和各個網元上部署的配置命令信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,根據所有網元上部署的配置命令的層次信息構造初始狀態的配置命令樹,包括 向通信設備中各個網元下發命令,命令各個網元返回網元的層次信息和各個網元上部署的配置命令信息; 根據所述各個網元返回的信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,將處于第一層次的網元上部署的配置命令作為枝干節點branch,將處于所述第一層次的網元之下的第二層次的網元上部署的配置命令作為Branch或葉子節點Leaf,所述Leaf為最底層的節點,選定唯一的根節點treeroot,根據treeroot、所有的branch和Leaf構造出初始狀態的配置命令樹。
3.根據權利要求I或2所述的方法,其特征在于,所述的按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除,包括 在配置命令前面加上undo卸載構造默認的清除規則的命令行,通過運行所述命令行來清除所述配置命令。
4.根據權利要求I或2所述的方法,其特征在于,所述的按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除,包括 根據配置命令中包含的全部或者部分參數的信息和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行,通過運行所述自定義的清除規則的命令行來清除所述配置命令。
5.根據權利要求4所述的方法,其特征在于,所述的根據配置命令中包含的全部或者部分參數的信息和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行,包括 對于包含多個必選參數的配置命令,將其中的一個參數作為變量參數和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行; 或者, 默認從后往前依次減少配置命令的參數和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行; 或者,當配置命令包含的參數小于設定的數值時,將配置命令中包含的所有參數分解為各個單獨的參數,根據各個單獨的參數的所有排列組合和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行。
6.根據權利要求I所述的方法,其特征在于,所述的方法還包括 當一個需要清除的第一節點依賴于第二節點時,先清除所述第二節點再清除所述第一節點。
7.—種對通信設備中配置命令進行清除的裝置,其特征在于,包括 配置命令樹構造模塊,用于獲取通信設備中的各個網元的層次信息和各個網元上部署的配置命令信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,根據所有網元上部署的配置命令的層次信息,構造初始狀態的配置命令樹,所述配置命令樹中每一個節點代表一個配置命令; 配置命令清除處理模塊,用于根據用戶指定的所述通信設備需要恢復到的特定配置狀態得到配置命令樹的目標狀態,將所述配置命令樹的初始狀態和目標狀態進行比較,根據比較結果確定所述配置命令樹中需要清除的節點,按照所述通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除。
8.根據權利要求7所述的裝置,其特征在于 所述的配置命令樹構造模塊,還用于向通信設備中各個網元下發命令,命令各個網元返回網元的層次信息和各個網元上部署的配置命令信息; 根據所述各個網元返回的信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,,將處于第一層次的網元上部署的配置命令作為枝干節點branch,將處于所述第一層次的網元之下的第二層次的網元上部署的配置命令作為Branch或葉子節點Leaf,所述Leaf為最底層的節點,選定唯一的根節點treeroot,根據treeroot、所有的branch和Leaf構造出初始狀態的配置命令樹。
9.根據權利要求7或8所述的裝置,其特征在于 所述的配置命令清除處理模塊,還用于在配置命令前面加上undo卸載構造默認的清除規則的命令行,通過運行所述命令行來清除所述配置命令; 根據配置命令中包含的全部或者部分參數的信息和所述默認的清除規則的命令行,來構造自定義的清除規則的命令行,通過運行所述自定義的清除規則的命令行來清除所述配置命令。
10.根據權利要求7至9任一項所述的裝置,其特征在于 所述的配置命令清除處理模塊,還用于當一個需要清除的第一節點依賴于第二節點時,先清除所述第二節點再清除所述第一節點。
全文摘要
本發明實施例提供了一種對通信設備中配置命令進行清除的方法和裝置。該方法主要包括獲取通信設備中的各個網元的層次信息和各個網元上部署的配置命令信息,將所述各個網元的層次信息確定為所述各個網元上部署的配置命令的層次信息,根據所有網元上部署的配置命令的層次信息構造初始狀態的配置命令樹;根據用戶指定的所述通信設備需要恢復到的特定配置狀態得到配置命令樹的目標狀態,將所述配置命令樹的初始狀態和目標狀態進行比較,根據比較結果確定所述配置命令樹中需要清除的節點,按照通信設備默認的清除規則和/或自定義的清除規則對所述需要清除的節點進行清除。本發明實施例可以有效地、快速地對通信設備中配置命令進行清除。
文檔編號H04L12/24GK102742215SQ201280000105
公開日2012年10月17日 申請日期2012年2月17日 優先權日2012年2月17日
發明者周希鋒, 洪維江 申請人:華為技術有限公司