专利名称:对通信设备中配置命令进行清除的方法和装置的制作方法
技术领域:
本发明涉及电子技术领域,尤其涉及一种对通信设备中配置命令进行清除的方法和装置。
背景技术:
当通信设备中配置命令很多时,需要对配置命令进行清除。现有技术中的一种配置命令的清除方法包括当通信设备中配置命令达到一定的数量后,对上述通信设备进行重启,从而清除通信设备中所有配置命令。 上述现有技术中的配置命令的清除方法的缺点为需要对通信设备进行重启,不能对通信设备中的配置命令进行部分清除,只能整体清除。
发明内容
本发明的实施例提供了一种对通信设备中配置命令进行清除的方法和装置,以实现有效地地对通信设备中的配置命令进行清除。一种对通信设备中配置命令进行清除的方法,包括获取通信设备中的各个网元的层次信息和各个网元上部署的配置命令信息,将所述各个网元的层次信息确定为所述各个网元上部署的配置命令的层次信息,根据所有网元上部署的配置命令的层次信息构造初始状态的配置命令树,所述配置命令树中每一个节点代表一个配置命令;根据用户指定的所述通信设备需要恢复到的特定配置状态得到配置命令树的目标状态,将所述配置命令树的初始状态和目标状态进行比较,根据比较结果确定所述配置命令树中需要清除的节点,按照所述通信设备默认的清除规则和/或自定义的清除规则对所述需要清除的节点进行清除。一种对通信设备中配置命令进行清除的装置,包括配置命令树构造模块,用于获取通信设备中的各个网元的层次信息和各个网元上部署的配置命令信息,将所述各个网元的层次信息确定为所述各个网元上部署的配置命令的层次信息,根据所有网元上部署的配置命令的层次信息,构造初始状态的配置命令树,所述配置命令树中每一个节点代表一个配置命令;配置命令清除处理模块,用于根据用户指定的所述通信设备需要恢复到的特定配置状态得到配置命令树的目标状态,将所述配置命令树的初始状态和目标状态进行比较,根据比较结果确定所述配置命令树中需要清除的节点,按照所述通信设备默认的清除规则和/或自定义的清除规则对所述需要清除的节点进行清除。由上述本发明的实施例提供的技术方案可以看出,本发明实施例通过构造配置命令树,按照通信设备默认的清除规则和/或自定义的清除规则对所述需要清除的节点进行清除,可以有效地、快速地对通信设备中配置命令进行清除。
图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日
发明者周希锋, 洪维江 申请人:华为技术有限公司