CN1956394A - 进行网络设备业务配置的方法及装置 - Google Patents

进行网络设备业务配置的方法及装置 Download PDF

Info

Publication number
CN1956394A
CN1956394A CN 200610138417 CN200610138417A CN1956394A CN 1956394 A CN1956394 A CN 1956394A CN 200610138417 CN200610138417 CN 200610138417 CN 200610138417 A CN200610138417 A CN 200610138417A CN 1956394 A CN1956394 A CN 1956394A
Authority
CN
China
Prior art keywords
template
order
file
collection
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 200610138417
Other languages
English (en)
Other versions
CN100440809C (zh
Inventor
张学明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou Huawei 3Com Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Huawei 3Com Technology Co Ltd filed Critical Hangzhou Huawei 3Com Technology Co Ltd
Priority to CNB200610138417XA priority Critical patent/CN100440809C/zh
Publication of CN1956394A publication Critical patent/CN1956394A/zh
Application granted granted Critical
Publication of CN100440809C publication Critical patent/CN100440809C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种进行网络设备业务配置的方法,当进行某一业务的配置时,根据输入的参数集确定业务类型,并针对任一网络设备执行构造配置命令的步骤:获取设备版本信息,根据预先设置的模板集索引文件查找与版本信息以及业务类型相对应的模板集文件,根据输入的参数集和模板集文件,自动构造配置命令;将配置命令下发给网络设备。还公开了一种进行网络设备业务配置的装置,包括输入输出单元、模板集文件组织单元、模板集索引文件构造单元、参数集识别单元、版本信息获取单元、模板集索引单元和配置命令构造单元。通过本方法和装置,实现了对不同命令行设备的兼容和对网络业务和网络设备的动态适配,缩短了业务部署时间,提高了网络管理的效率。

Description

进行网络设备业务配置的方法及装置
技术领域
本发明涉及网络设备控制领域,特别是一种进行网络设备业务配置的方法及装置。
背景技术
在对网络设备进行业务配置的过程中,需要对各网络设备分别进行大量命令行的配置,以实现各网络设备对于某一业务的支持和处理。但对于比较复杂的网络部署进行分散配置,比如接入控制列表(Access Control List,简称ACL)、多协议标记变换(Multi-Protocol Label Switching,简称MPLS)、虚拟专用网(Virtual Private Network,简称VPN)等,往往由于配置的次序和命令行相互关联等问题容易造成配置错误,从而导致部属时间加长,甚至于影响网络的使用。
目前,通过基于TCP/IP的网络管理可以将网络配置统一起来,由网络管理站(manager,也称管理进程)集中实现对网络设备(也称被管单元)的管理;网络管理站和网络设备之间通过网络管理协议进行通信,简单网络管理协议(Simple Network Management Protocol,简称SNMP)是应用最为广泛的网络管理协议。由于利用网络管理的可视化界面可以直观的了解网络部署、配置的状态,因此能够实现各网络设备的集中部署和监控。但这种方案同时也面临着许多问题,比较突出的一点是设备对SNMP协议支持的程度不一样,而且很多业务涉及的管理信息库(Management Information Base,简称MIB)节点为私有的,因而不能很好的通过SNMP协议对设备进行业务配置。虽然设备普遍支持Telnet协议,但Telnet协议存在的问题是:网络环境一般由许多厂商的设备组成,即使同一厂商的设备也存在版本差异,而不同设备、不同版本的配置命令行语法之间存在差异,这些差异的存在,使不同的设备具有各不相同的版本信息,导致即使是对各网络设备集中进行部署,也不得不具体针对每一个网络设备分别进行配置而非统一配置和下发。因此,虽然通过网络管理能够克服命令行关联等问题,但仍存在着部署时间较长,网络管理人员工作量庞大以及任意出错造成网络管理效率低下的问题。
发明内容
本发明的目的是提供一种进行网络设备业务配置的方法及装置,解决现有技术中网络设备业务难以统一配置下发的问题。
为实现上述目的,本发明提供了一种进行网络设备业务配置的方法,包括以下步骤:
当进行某一业务的配置时,根据输入的参数集确定业务类型,并针对任一网络设备执行构造配置命令的步骤以及将所述配置命令下发给网络设备;所述针对任一网络设备执行构造配置命令的步骤包括:获取所述设备的版本信息;根据预先设置的模板集索引文件查找与所述版本信息以及所述业务类型相匹配的模板集文件;根据所述输入的参数集和所述模板集文件,自动构造配置命令。
还可包括设置模板集文件以及模板集索引文件的步骤:
针对不同的网络设备命令构造命令行模板,所述命令行模板为进行网络设备业务配置的基本元素;基于命令行模板构造模板集;根据模板集组织模板集文件,所述模板集文件与一定的设备版本信息以及业务类型相匹配;以及针对所述模板集文件构造模板集索引文件。
其中,构造命令行模板可以包括:对命令行与已构造的命令行不同的网络设备,构造命令行模板名称、有效/无效响应语句和模板节点,并设置所述命令行模板具有唯一名称,设置任一所述模板节点对应一关键字或者一变量。
为了增强命令行模板对复杂功能的适应性,构造命令行模板还包括:在命令行模板中嵌套命令行模板,所述被嵌套的命令行模板构成子模板。构造模板集可以包括:基于命令行模板构造普通模板、条件模板:直接引用的命令行模板构造为普通模板,对命令行模板设定执行条件构造为条件模板,并设置所述普通模板、条件模板具有唯一名称,以实现区分调用;将构造出的普通模板、条件模板组合构成模板集或者模板集和子模板集,并设置所述子模板集和所述模板集具有唯一名称,以实现区分调用;所述子模板集为嵌套在模板集中的模板集。
为了在可识别的程度提高查找匹配几率,在模板集索引文件中查找与所述版本信息以及所述业务类型相对应的模板集文件可包括:
查询是否存在与设备的版本信息及业务信息匹配的模板集文件,是则将所述匹配的模板集文件设置为与版本信息以及业务类型相对应的模板集文件,否则删减版本信息中的标识流水号信息,再次查询是否存在与设备的版本信息及业务信息匹配的模板集文件,是则设置为与版本信息以及业务类型相对应的模板集文件,否则结束;所述标识流水号信息为版本信息之一。
自动构造配置命令包括:遍历所述模板集文件,在任一模板的节点列表处根据参数集中的参数,构造出一命令;对构造出的命令,发送到输出命令列表。
遍历所述模板集文件可包括:
步骤B1、将模板集文件位置设置为开始;
步骤B2、获取模板集文件的当前模板;
步骤B3、检查所述模板是否为空,是则执行步骤B7,否则执行步骤B4;
步骤B4、检查所述模板是否为子模板集,是则进行子模板集的遍历,然后执行步骤B7;否则执行步骤B5;
步骤B5、检查所述模板是否为条件模板,是则进行条件模板的遍历,然后执行步骤B7;否则执行步骤B6;
步骤B6、所述模板为普通模板,根据所述普通模板的模板节点列表,根据参数集中的参数,构造出一命令;
步骤B7、检查所述模板集文件是否存在下一条模板,是则将下一条模板设为模板集文件的当前模板,重新执行步骤B2;否则遍历完成。
其中,进行条件模板的遍历包括:使用参数集的参数值对条件模板求值,确定是否使用条件模板中的命令行模板,是则对所述条件模板中的下级子模板集、下级条件模板和普通模板进行遍历;
进行子模板集的遍历包括:依次对所述子模板集的下级子模板集、下级条件模板和普通模板进行遍历,直至最后一级子模板集解析为条件模板和普通模板遍历完成。
在实际应用中,存在同时输入多个参数集的情况,则根据输入的参数集确定业务类型,并针对任一网络设备执行构造配置命令的步骤包括:
步骤A1、参数集位置设为开始;
步骤A2、判断当前参数集是否为空,是则执行步骤A5,否则执行步骤A3;
步骤A3、根据所述当前参数集确定业务类型,并针对任一网络设备执行构造配置命令的步骤;
步骤A4、选择下一参数集为当前参数集,重新执行步骤A2;
步骤A5、按照参数集次序排序配置命令。
本发明还提供了一种进行网络设备业务配置的装置,包括:
输入输出单元,用于为接收参数集、设备版本信息和构造指令,以及发送配置命令提供接口;
参数集识别单元,与所述输入输出单元连接,用于接收输入的参数集,识别参数集的数目,并根据该参数集识别业务信息;
版本信息获取单元,与所述输入输出单元连接,用于获取待生成配置命令的网络设备的版本信息;
模板集索引单元,与所述参数集识别单元和版本信息获取单元连接,用于根据模板集索引文件查找与所述版本信息以及所述业务类型相对应的模板集文件;
配置命令构造单元,与所述参数集识别单元和模板集索引单元连接,用于根据所述参数集和模板集索引单元查找的模板集文件,自动构造配置命令;还与输入输出单元连接,用于向所述网络设备发送配置命令。
本装置中也可进一步提供模板集的构造功能,即本装置还包括:
命令行模板构造单元,与所述输入输出单元连接,用于构造网络设备的命令行模板;
模板集构造单元,与所述输入输出单元和命令行模板构造单元连接,用于构造并保存网络设备的模板集;
模板集文件组织单元,与所述输入输出单元和模板集构造单元连接,用于区分不同的版本信息以及业务类型,分别组织、保存并提供模板集文件;
模板集索引文件构造单元,与所述输入输出单元和模板集文件组织单元连接,用于根据模板集文件的情况构造并保存模板集索引文件。
为了实现对子模板集、条件模板和普通模板的遍历,较佳的技术方案为所述配置命令构造单元包括:
普通模板构造器,用于根据所述普通模板的模板节点列表,调用参数集中的参数,构造出一命令;
条件模板构造器,用于使用参数集的参数值对条件模板求值,对于使用条件模板中的命令行模板的情况,则进行所述条件模板中的下级条件模板的构造,以及调用普通模板构造器对所述条件模板中的普通模板进行命令构造;
子模板集构造器,用于对所述子模板集的下级子模板集进行遍历,以及调用条件模板构造器对所述子模板集中的条件模板进行命令构造,调用普通模板构造器对所述子模板集中的普通模板进行命令构造,直至最后一级子模板集解析为条件模板和普通模板构造完成。
由上述技术方案可知,本发明通过提供模板集文件,采用遍历模板集文件实现业务配置定制下发的方法,具有以下有益效果:
1、对于任一业务,网络管理站能够集中对网络设备进行自动部署,实现了对不同命令行设备的兼容;
2、对于新的业务部署和新的设备,只需要构建新的模板集文件,实现了对网络业务和网络设备的动态适配;
3、缩短了业务部署的时间,提高了网络管理的效率。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为一流程图,描述了本发明所提供的进行网络设备业务配置的方法的实施例1;
图2为图1所示实施例中进行模板集文件查找的流程图;
图3为图1所示实施例中遍历模板集文件的流程图;
图4为一流程图,描述了本发明所提供的进行网络设备业务配置的方法的实施例2;
图5为一系统框图,描述了本发明所提供的进行网络设备业务配置的装置的实施例;
图6为一系统框图,描述了本发明所提供的进行网络设备业务配置的装置的另一实施例;
图7为图6所示实施例中,配置命令构造单元的一个具体实施例。
具体实施方式
由于在现有技术中,网络管理站不得不对各个网络设备分别进行配置来实现一项业务的部署,并由此导致了部署时间长、网络管理效率低的缺陷,本发明提供了一种进行网络设备业务配置的方法和一种进行网络设备业务配置的装置,下面分别进行具体描述。
本发明所提供的进行网络设备业务配置的方法,包括以下步骤:
当进行某一业务的配置时,根据输入的参数集确定业务类型,并针对任一网络设备执行构造配置命令的步骤以及将所述配置命令下发给网络设备;
所述针对任一网络设备执行构造配置命令的步骤包括:获取所述设备的版本信息;根据预先设置的模板集索引文件查找与所述版本信息以及所述业务类型相匹配的模板集文件;根据所述输入的参数集和所述模板集文件,自动构造配置命令。
其中,模板集文件和模板集索引文件是预先设置的,对于已有的业务和设备,在执行构造配置命令时调用即可,不需要每一次进行业务配置时都进行设置;但对于新的业务和设备,则需要进行补充设置。因此,较佳的技术方案还包括设置模板集文件和模板集索引文件的步骤:
针对不同的网络设备命令构造命令行模板,所述命令行模板为进行网络设备业务配置的基本元素;
基于命令行模板构造模板集;
根据模板集组织模板集文件,所述模板集文件与一定的设备版本信息以及业务类型相匹配;以及
针对所述模板集文件构造模板集索引文件。
参见图1,为实施例1的流程图,包括以下步骤:
步骤101、针对不同的网络设备命令构造命令行模板,所述命令行模板为进行网络设备业务配置的基本元素。
由于设备命令在不同厂商、同一厂商的不同设备系列、版本以及每一版本不同的流水号之间都存在着一定的差异,为了适配这些差异,本发明通过构造命令行模板进行区分,包括:对命令行与已构造的命令行不同的网络设备,构造命令行模板名称、有效/无效响应语句和模板节点,并设置所述命令行模板具有唯一名称,设置任一所述模板节点对应一关键字或者一变量。下面用一个具体的实例进行说明,该命令行模板的可扩展标记语言(ExtensibleMarkup Language,简称XML)格式如下:
<Templ name="rule"
    validResp="{the same rule already|Warning\:No such timerange|}″>
    rule[$id]$access:Access interface $interface
    [$logging:Logging][time-range $tr:String[1,32]]
</Templ>
其中包含了多种元素,具体为:
每个命令行模板必须有名称属性,用来定义模板的名字;在本例中,模板的属性为规则,因此定义模板的名字为rule。需要注意的是,为了区分调用不同的命令行模板,任一命令行模板的名称唯一;对于属性名称都为相同的模板,可以加入阿拉伯数字的后缀进行区分,比如rule1,rule2等。
validResp属性定义命令行模板的有效回显,invalidResp属性定义命令行模板的无效回显。当命令行模板执行时,对于定义了有效回显的情况,远程登录程序(telnet)能够获取在网络设备上命令执行的回显,则网络管理站能够获得命令执行的情况:当获得了命令回显时,说明该命令获得了执行,即执行成功;否则认为命令执行失败。对于定义了无效回显的情况,网络设备命令执行失败时返回无效回显,则网络管理站同样能够获得命令执行的情况:当获得了命令回显时,说明命令执行失败;否则认为执行成功。
为了增强命令行模板对复杂功能的适应性,构造命令行模板还包括:在命令行模板中构造子模板。
在具体规则方面,包括:
大括号:大括号内描述了一个或者多个子模板;在命令行模板中嵌套命令行模板,所述被嵌套的命令行模板构成子模板;对于多个子模板的情况,各子模板由‘|’号分隔,构造的时候可以多选一。在进行命令构造时必须有一条路径构造成功,而且路径上的必选参数值都提供,否则整条命令构造失败。如模板{A|}表示可以构造空行或命令A,如果是构造空行,则为空节点。
中括号:表示缺省的命令子模板;可以为多个子模板,各子模板由‘|’号分隔。构造时,如果参数没有提供,就不构造出命令。
黑体字:作为关键字,构造命令时生成一样的命令。
以‘$’号开头的名字:代表变量名,如果其后面不带″:",缺省定义为String类型,构造命令时可以输入任意值。
变量名称后紧跟的以冒号开头的名称:描述了变量的类型,如$access:Access即表示Access类型修饰了变量$access。
其中,关键字和变量都作为模板节点存在。
大括号和中括号可以进行任意层次的相互嵌套,如模板:rule $id $access:Access[source $srcAdd:AddAll[$srcMsk]][$fragment:Fragment][time-range $tr:String[1,32]]
可以看出,对于网络管理站所监控管理的全部网络设备,其设备命令差异都是体现在不同的变量或者执行次序中。则针对该不同,技术人员可以构建所有类型的命令行模板,通过对命令行建立模板,能够提供抽象语法,完成顺序、条件、嵌套等过程,作为进行网络设备业务配置的基本元素,实现对设备差异性的适配。当有新的设备或者业务需求时,通过对存在差异的部分构建新的命令行模板,能够实现动态扩展;而当设备的命令行未发生改变时,则直接调用原有的命令行模板构建模板集即可满足要求。
步骤102、基于命令行模板构造模板集,所述模板集为命令行模板的集合。
模板集是一组完成特定功能的所有命令行模板的集合,因此,当业务发生改变时,需要构造新的模板集,其中包括:基于命令行模板构造普通模板、条件模板:直接引用的命令行模板构造为普通模板,对命令行模板设定执行条件构造为条件模板,并设置所述普通模板、条件模板具有唯一名称;
将构造出的普通模板、条件模板组合构成模板集或者模板集和子模板集,并设置所述子模板集和所述模板集具有唯一名称;所述子模板集为嵌套在模板集中的模板集。下面以一个具体的XML例子加以说明:<TemplSet name="DefineIPSecProposal"><Main>ipsec proposal $IPSecProposalName</Main><Templ>encapsulation-mode $EncapMode</Templ><TemplSet name="transform">
 <Main>transform $IPSecProtocol</Main>
 <cond exp="$IPSecProtocol=esp|$IPSecProtocol=ah-esp">
   <Templ>esp encryption-algorithm
$EspEncryAlgorithm</Templ>
 </cond></TemplSet></TemplSet>
其中,标签TemplSet定义了一个模板集,名称为DefineIPSecProposal,用于定义IP字段协议。
标签Main中的模板为所属模板集的主模板,对于一个模板集,它的主模板最多只能有一个,而且可以没有。
标签Templ内的模板为普通模板,一个模板集中可以定义任意多个普通模板,名字要求不同。
标签cond定义了标签内模板/子模板集的条件;在实际应用中,读取其exp属性定义的表达式,并使用实际参数值对表达式求值来决定是否使用cond标签内的模板/子模板集。该条件表达式使用“参数=值”的形式来定义,该值可以是具体的一个值,或者一类类型,如果是类型需要在类型名前加‘:’,如表达式“$num=:IntRange[1000,3000]”定义了参数num的取值范围是1000到3000;如果有多个表达式,则使用空格来表示它们之间的和的关系,使用分隔符‘|’表示它们之间或的关系。构造命令时,只有条件模板构造成功,才构造其包含的普通模板/条件模板/子模板集。同样可以定义任意多个条件模板,名字要求不同。
标签TemplSet定义了一个子模板集,名称为transform,用于定义转换功能。子模板集和模板集的关系,也可视为模板集DefineIPSecProposal嵌套了子模板集transform,嵌套的子模板集同一般模板集,并且也可以嵌套下级子模板集,使用在标签TemplSet内嵌套TemplSet标签来定义。为了区分模板集中不同的子模板集,必须为每个模板集定义不同的名字,该名字不允许重复。
可以看出,当设备命令行和业务要求都未发生改变时,可以直接调用已有的模板集进行配置,无需重新设置命令行模板和模板集。
步骤103、根据模板集组织模板集文件,所述模板集文件为模板集的集合,与一定的设备版本信息以及业务类型相匹配;
为了完成一项业务,通常需要多于一个模板集实现,则根据不同的业务类型,将模板集组织成为模板集文件,便于配置命令的调用生成。例如,acl/AR46/VRP340/r0108/Construct.xml中可能包括多个模板集,用于对匹配acl业务、AR46设备系列、VRP340版本以及r0108的流水号条件的配置指令执行配置命令的构造。
比如,添加一台同样的网络设备,则可通过调用现有的模板集创建新的模板集文件,以上面提到的XML文件为例,添加一台设备,也属于AR46设备系列和VRP340版本,只有流水号发生改变,为r0109,显然,序列号或者说流水号的改变不会对命令行的要求产生差异,则对于acl业务,其创建的XML文件为acl/AR46/VRP340/r0109/Construct.xml,该文件中所包括的模板集与acl/AR46/VRP340/r0108/Construct.xml中包括的模板集相同。
步骤104、构造模板集索引文件;
由步骤103可以看出,不同业务、不同设备版本信息将组合出众多的模板集文件,为了实现自动适配业务,本发明提供了模板集索引文件,以一个具体XML文件templatPath.xml加以说明:
<Items>
  <!--AR46模板路径-->
  <Item manufacturer="h3c"operation="setAcl"device="AR46"version="VRP340"release="r0108">
acl/AR46/VRP340/r0108/Construct.xml</Item></Items>
其中manufacturer标识厂商,operation标识业务,device标识设备系列,version标识大版本,release标识版本流水号。
当然,上面仅列出了templatPath.xml中与acl/AR46/VRP340/r0108匹配的部分,根据实际业务和网络设备的数目,templatPath.xml可以任意调整。
步骤105、当进行某一业务的配置时,根据输入的参数集确定业务类型。
其中,参数集为{参数名字,参数值}对的列表。一个{参数名字,参数值}对对应命令行模板中的一个变量。一个参数集对应一条模板;参数集可以嵌套,从而可以对应模板集。参数集由用户根据网络设备以及业务要求的实际情况输入。
步骤106、获取任一当前设备的版本信息;在本实施例中包括:获取所述设备的标识厂商信息、标识系列信息、标识版本信息和标识流水号信息。本领域技术人员可以根据实际需要添加或者删减版本信息。
具体获取版本信息的方法可以为本领域技术人员所知的任一方法,比如,通过Telnet命令“display version”直接远程获取当前设备的版本。
一般来说,造成设备命令行不同的版本信息如本实施例中所述,其内容包括厂商不同、系列不同等硬件原因,还包括同一系列的不同版本或者实际安装时根据不同需要而在软件方面产生的差异。同时,本领域技术人员应当理解,上述提到的版本信息内容仅为举例说明,并不对本发明技术方案构成限制;技术人员可以根据实际造成命令行差异的软件、硬件问题,减少/增加版本信息的内容。
步骤107、根据所述版本信息以及所述业务类型,在模板集索引文件中查找相应的模板集文件;
在本实施例中,是根据版本信息以及业务类型,在templatPath.xml文件中找到与厂商、业务、设备、版本等相一致的模板集文件。
参见图2,为一个进行模板集文件查找的流程图,包括以下步骤:
在templatPath.xml中根据版本信息以及业务类型启动查找;查询是否存在与设备的版本信息及业务信息匹配的模板集文件,是则将该模板集文件设置为与版本信息以及业务类型相对应的模板集文件,继续执行步骤108;否则删减版本信息中的标识流水号信息,再次查询是否存在与设备的版本信息及业务信息匹配的模板集文件,是则设置为与版本信息以及业务类型相对应的模板集文件,继续执行步骤108,否则结束。
步骤108、根据所述输入的参数集和所述模板集文件,自动构造配置命令,包括:遍历所述模板集文件,在任一模板节点列表处根据参数集中的参数,构造出一命令;对构造出的命令,发送到输出命令列表。
遍历模板集文件的一个具体实施例参见图3,包括:
步骤B1、将模板集文件位置设置为开始;
步骤B2、获取模板集文件的当前模板;
步骤B3、检查所述模板是否为空,是则执行步骤B7,否则执行步骤B4;
步骤B4、检查所述模板是否为子模板集,是则进行子模板集的遍历,然后执行步骤B7;否则执行步骤B5;
步骤B5、检查所述模板是否为条件模板,是则进行条件模板的遍历,然后执行步骤B7;否则执行步骤B6;
步骤B6、所述模板为普通模板,根据所述普通模板的模板节点列表,根据参数集中的参数,构造出一命令,具体为对所述普通模板,根据其关键字、变量以及关键字是否可选构造出命令行,同时根据有效响应语句和无效响应语句设置有效回显和无效回显;
步骤B7、检查所述模板集文件是否存在下一条模板,是则将下一条模板设为模板集文件的当前模板,重新执行步骤B2;否则遍历完成。
其中,进行条件模板的遍历包括:使用参数集的参数值对条件模板求值,确定是否使用条件模板中的命令行模板,是则对所述条件模板中的下级子模板集、下级条件模板和普通模板进行遍历;
进行子模板集的遍历包括:依次对所述子模板集的下级子模板集、下级条件模板和普通模板进行遍历,直至最后一级子模板集解析为条件模板和普通模板遍历完成。
本领域技术人员很容易理解,进行下级条件模板和下级子模板集的遍历方法与遍历条件模板和模板集的方法一致。
步骤109、将所述配置命令下发给网络设备。
通过上述实施例可以看出,本发明满足了网络管理站使用命令行来配置数字通信产品的需求。由于可以通过增加模板的方式来支持对新设备的管理,即通过简单增加模板集文件,并根据业务需要制定不同的参数集,就可以实现对不同网络设备业务的自动的动态部署,为网管产品的发布和新业务的增加提供了极大的灵活性。由于业务部署是根据已有的模版进行,因此能够适配、屏蔽不同设备、不同版本、不同业务的差异性,提高了网络管理站对于多设备、多版本、多业务的适配能力和兼容性。同时,统一下发命令列表,缩短了业务部署的时间,提高了网络管理的效率,同时能够使配置业务结果可知、可预测。
但是在实施例1中,仅适合于处理单个参数集的情况,对于输入多个参数集的处理未提供处理顺序。参见图4,为本发明所提供的进行网络设备业务配置的方法的实施例2的流程图,适合于单个/多个参数集的情况,包括以下步骤:
步骤201、当进行某一业务的配置时,则将参数集位置设为开始;
步骤202、判断当前参数集是否为空,是则执行步骤205,否则执行步骤203;
步骤203、根据所述当前参数集确定业务类型,并针对任一网络设备执行构造配置命令,并将结果输出到命令列表的步骤;具体过程如实施例1中步骤106~步骤108所示;
步骤204、选择下一参数集为当前参数集,重新执行步骤202;
步骤205、按照参数集次序排序配置命令;
步骤206、将所述配置命令下发给网络设备,结束。
可以看出,对多参数集的处理,在实现对不同厂商、版本和配置业务的兼容基础上,还能够进行业务下发顺序的定义,即根据用户提供的参数和次序自动构造出下发的命令行列表。
本发明还提供了一种进行网络设备业务配置的装置,参见图5,为实施例1,包括:
输入输出单元1,为接收参数集、设备版本信息和构造指令,以及发送配置命令提供接口;用户与本装置的交互指令,包括构造指令,以及自动配置后的命令,都是通过该输入输出单元1发送给人机交互界面或者网络设备的。
参数集识别单元2,与所述输入输出单元1连接,用于接收输入的参数集,识别参数集的数目,并根据该参数集识别业务信息;
版本信息获取单元3,与所述输入输出单元1连接,用于获取待生成配置命令的网络设备的版本信息;
模板集索引单元4,与所述参数集识别单元2和版本信息获取单元3连接,用于根据所述版本信息以及所述业务类型,根据模板集索引文件查找与所述版本信息以及所述业务类型相对应的模板集文件;
配置命令构造单元5,与所述参数集识别单元2和模板集索引单元4连接,用于根据所述参数集和模板集索引单元4查找的模板集文件,自动构造配置命令;还与输入输出单元1连接,用于向所述网络设备发送配置命令。
配置命令构造单元5还用于在构造出命令后,按照参数集次序对配置命令进行排序,从而满足用户自定义的命令下发次序。
在上面的实施例中,模板集索引单元4是根据已有的模板集索引单元以及模板集进行构造的,较佳的技术方案是本装置内还包括模板集的构造部分,如图6所示,为实施例2,包括输入输出单元1、参数集识别单元2、版本信息获取单元3、模板集索引单元4和配置命令构造单元5。还包括:
命令行模板构造单元6,与所述输入输出单元1连接,用于构造网络设备的命令行模板;命令行模板作为进行网络设备业务配置的基本元素,涵盖了全部的设备、版本和业务,对于新增设备和业务,可以由网络管理人员通过输入输出单元1动态添加补充,实现功能的扩展。
模板集构造单元7,与所述输入输出单元1和命令行模板构造单元6连接,用于构造并保存网络设备的模板集;模板集是针对特定功能的命令行模板的集合,可以多重嵌套,也可以包括多个互相关联的模板集。
模板集文件组织单元8,与所述输入输出单元1和模板集构造单元7连接,用于区分不同的版本信息以及业务类型,分别组织、保存并提供模板集文件;该模板集文件是与厂商、业务、设备、版本等信息相一致配置的,以备调用。
模板集索引文件构造单元9,与所述输入输出单元1和模板集文件组织单元8连接,根据模板集文件的情况构造并保存模板集索引文件。
为了实现对子模板集、条件模板和普通模板的遍历,较佳的技术方案如图7所示,为所述配置命令构造单元5包括:
普通模板构造器51,也称为TemplBuilder,用于根据所述普通模板的模板节点列表,调用参数集中的参数,依次遍历构造出一命令;
条件模板构造器52,也称为CondTempBuilder,从TemplBuilder派生,用于使用参数集的参数值对条件模板求值,对于使用条件模板中的命令行模板的情况,则进行所述条件模板中的下级条件模板的构造,以及调用普通模板构造器51对所述条件模板中的普通模板进行命令构造;
子模板集构造器53,也称为TemplSetBuilder,用于对所述子模板集的下级子模板集进行遍历,以及调用条件模板构造器对所述子模板集中的条件模板进行命令构造,调用普通模板构造器对所述子模板集中的普通模板进行命令构造,直至最后一级子模板集解析为条件模板和普通模板构造完成。即,依次构造其包含的每条普通模板和条件模板,然后递归调用其每个子模板集进行构造。
当条件模板中再包括有子模板集时,条件模板构造器52也可以调用子模板集构造器53进行遍历处理。
最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。

Claims (13)

1、一种进行网络设备业务配置的方法,其特征在于当进行某一业务的配置时,根据输入的参数集确定业务类型,并针对任一网络设备执行构造配置命令的步骤以及将所述配置命令下发给网络设备;
所述针对任一网络设备执行构造配置命令的步骤包括:获取所述设备的版本信息;根据预先设置的模板集索引文件查找与所述版本信息以及所述业务类型相匹配的模板集文件;根据所述输入的参数集和所述模板集文件,自动构造配置命令。
2、根据权利要求1所述的方法,其特征在于还包括设置模板集文件和模板集索引文件的步骤:
针对不同的网络设备命令构造命令行模板,所述命令行模板为进行网络设备业务配置的基本元素;
基于命令行模板构造模板集;
根据模板集组织模板集文件,所述模板集文件与一定的设备版本信息以及业务类型相匹配;以及
针对所述模板集文件构造模板集索引文件。
3、根据权利要求2所述的方法,其特征在于构造命令行模板包括:对命令行与已构造的命令行不同的网络设备,构造命令行模板名称、有效/无效响应语句和模板节点,并设置所述命令行模板具有唯一名称,设置任一所述模板节点对应一关键字或者一变量。
4、根据权利要求3所述的方法,其特征在于构造命令行模板还包括:在命令行模板中嵌套命令行模板,所述被嵌套的命令行模板构成子模板。
5、根据权利要求2所述的方法,其特征在于构造模板集包括:
基于命令行模板构造普通模板、条件模板:直接引用的命令行模板构造为普通模板,对命令行模板设定执行条件构造为条件模板,并设置所述普通模板、条件模板具有唯一名称;
将构造出的普通模板、条件模板组合构成模板集或者模板集和子模板集,并设置所述子模板集和所述模板集具有唯一名称;所述子模板集为嵌套在模板集中的模板集。
6、根据权利要求1-5任一所述的方法,其特征在于在模板集索引文件中查找与所述版本信息以及所述业务类型相对应的模板集文件包括:
查询是否存在与设备的版本信息及业务信息匹配的模板集文件,是则将所述匹配的模板集文件设置为与版本信息以及业务类型相对应的模板集文件,否则删减版本信息中的标识流水号信息,再次查询是否存在与设备的版本信息及业务信息匹配的模板集文件,是则设置为与版本信息以及业务类型相对应的模板集文件,否则结束;所述标识流水号信息为版本信息之一。
7、根据权利要求1-5任一所述的方法,其特征在于所述自动构造配置命令包括:
遍历所述模板集文件,在任一模板的节点列表处根据参数集中的参数,构造出一命令;
对构造出的命令,发送到输出命令列表。
8、根据权利要求7所述的方法,其特征在于遍历所述模板集文件包括:
步骤B1、将模板集文件位置设置为开始;
步骤B2、获取模板集文件的当前模板;
步骤B3、检查所述模板是否为空,是则执行步骤B7,否则执行步骤B4;
步骤B4、检查所述模板是否为子模板集,是则进行子模板集的遍历,然后执行步骤B7;否则执行步骤B5;
步骤B5、检查所述模板是否为条件模板,是则进行条件模板的遍历,然后执行步骤B7;否则执行步骤B6;
步骤B6、所述模板为普通模板,根据所述普通模板的模板节点列表,根据参数集中的参数,构造出一命令;
步骤B7、检查所述模板集文件是否存在下一条模板,是则将下一条模板设为模板集文件的当前模板,重新执行步骤B2;否则遍历完成。
9、根据权利要求8所述的方法,其特征在于:
进行条件模板的遍历包括:使用参数集的参数值对条件模板求值,确定是否使用条件模板中的命令行模板,是则对所述条件模板中的下级子模板集、下级条件模板和普通模板进行遍历;
进行子模板集的遍历包括:依次对所述子模板集的下级子模板集、下级条件模板和普通模板进行遍历,直至最后一级子模板集解析为条件模板和普通模板遍历完成。
10、根据权利要求1-5任一所述的方法,其特征在于输入的参数集为多个,则根据输入的参数集确定业务类型,并针对任一网络设备执行构造配置命令的步骤包括:
步骤A1、参数集位置设为开始;
步骤A2、判断当前参数集是否为空,是则执行步骤A5,否则执行步骤A3;
步骤A3、根据所述当前参数集确定业务类型,并针对任一网络设备执行构造配置命令的步骤;
步骤A4、选择下一参数集为当前参数集,重新执行步骤A2;
步骤A5、按照参数集次序排序配置命令。
11、一种进行网络设备业务配置的装置,其特征在于包括:
输入输出单元,用于为接收参数集、设备版本信息和构造指令,以及发送配置命令提供接口;
参数集识别单元,与所述输入输出单元连接,用于接收输入的参数集,识别参数集的数目,并根据该参数集识别业务信息;
版本信息获取单元,与所述输入输出单元连接,用于获取待生成配置命令的网络设备的版本信息;
模板集索引单元,与所述参数集识别单元和版本信息获取单元连接,用于根据模板集索引文件查找与所述版本信息以及所述业务类型相对应的模板集文件;
配置命令构造单元,与所述参数集识别单元和模板集索引单元连接,用于根据所述参数集和模板集索引单元查找的模板集文件,自动构造配置命令;还与输入输出单元连接,用于向所述网络设备发送配置命令。
12、根据权利要求11所述的装置,其特征在于还包括:
命令行模板构造单元,与所述输入输出单元连接,用于构造网络设备的命令行模板;
模板集构造单元,与所述输入输出单元和命令行模板构造单元连接,用于构造并保存网络设备的模板集;
模板集文件组织单元,与所述输入输出单元和模板集构造单元连接,用于区分不同的版本信息以及业务类型,分别组织、保存并提供模板集文件;
模板集索引文件构造单元,与所述输入输出单元和模板集文件组织单元连接,用于根据模板集文件的情况构造并保存模板集索引文件。
13、根据权利要求11所述的装置,其特征在于所述配置命令构造单元包括:
普通模板构造器,用于根据所述普通模板的模板节点列表,调用参数集中的参数,构造出一命令;
条件模板构造器,用于使用参数集的参数值对条件模板求值,对于使用条件模板中的命令行模板的情况,则进行所述条件模板中的下级条件模板的构造,以及调用普通模板构造器对所述条件模板中的普通模板进行命令构造;
子模板集构造器,用于对所述子模板集的下级子模板集进行遍历,以及调用条件模板构造器对所述子模板集中的条件模板进行命令构造,调用普通模板构造器对所述子模板集中的普通模板进行命令构造,直至最后一级子模板集解析为条件模板和普通模板构造完成。
CNB200610138417XA 2006-11-13 2006-11-13 进行网络设备业务配置的方法及装置 Active CN100440809C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200610138417XA CN100440809C (zh) 2006-11-13 2006-11-13 进行网络设备业务配置的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200610138417XA CN100440809C (zh) 2006-11-13 2006-11-13 进行网络设备业务配置的方法及装置

Publications (2)

Publication Number Publication Date
CN1956394A true CN1956394A (zh) 2007-05-02
CN100440809C CN100440809C (zh) 2008-12-03

Family

ID=38063507

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200610138417XA Active CN100440809C (zh) 2006-11-13 2006-11-13 进行网络设备业务配置的方法及装置

Country Status (1)

Country Link
CN (1) CN100440809C (zh)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299679B (zh) * 2008-06-13 2010-07-14 南京邮电大学 泛在网络业务动态重配置方法
CN101321080B (zh) * 2007-06-04 2010-07-28 华为技术有限公司 配置网络设备的方法、网络设备、网络系统
CN101977220A (zh) * 2010-10-14 2011-02-16 中兴通讯股份有限公司 一种功能子系统间不同版本功能模块的匹配方法及装置
CN101552692B (zh) * 2008-04-02 2011-03-23 大唐移动通信设备有限公司 网元设备的操作及维护系统及其参数配置方法
CN102006183A (zh) * 2010-11-12 2011-04-06 百度在线网络技术(北京)有限公司 一种用于基于配置参数配置网络设备的方法与配置设备
CN101582794B (zh) * 2009-06-26 2011-12-07 西安电子科技大学 网络设备统一配置系统及其配置方法
CN101291252B (zh) * 2008-05-31 2011-12-07 成都市华为赛门铁克科技有限公司 业务部署的方法、装置和系统
CN102799460A (zh) * 2011-05-23 2012-11-28 中国移动通信集团公司 一种业务开发系统、方法和业务运行系统、方法
CN102932474A (zh) * 2012-11-14 2013-02-13 北京星网锐捷网络技术有限公司 报文解析方法、设备及系统
CN106227821A (zh) * 2016-07-21 2016-12-14 杭州华三通信技术有限公司 一种命令行命令的处理方法和装置
CN106899427A (zh) * 2016-09-19 2017-06-27 阿里巴巴集团控股有限公司 一种运维指令的执行方法、装置及系统
CN107547263A (zh) * 2017-07-26 2018-01-05 南京邮电大学 一种实现网元设备自动化查找模板配置的方法
CN107749800A (zh) * 2017-09-22 2018-03-02 安徽皖通邮电股份有限公司 一种实现通信设备自动化测试配置隐式删除的方法
CN107911249A (zh) * 2017-11-28 2018-04-13 新华三技术有限公司 一种网络设备的命令行发送方法、装置和设备
CN108365974A (zh) * 2018-01-17 2018-08-03 南京邮电大学 一种针对网元设备多业务自动化脚本配置的方法
CN109426514A (zh) * 2017-08-24 2019-03-05 北京金山云网络技术有限公司 服务自动化部署方法、装置、电子设备及存储介质
CN110324169A (zh) * 2018-03-30 2019-10-11 北京京东尚科信息技术有限公司 一种接口管理的方法和装置
CN110348201A (zh) * 2019-05-22 2019-10-18 中国科学院信息工程研究所 一种设备安全策略的配置方法及装置
CN111740851A (zh) * 2019-03-25 2020-10-02 华为技术有限公司 配置报文生成方法、设备以及系统
CN112436964A (zh) * 2020-11-12 2021-03-02 中国联合网络通信集团有限公司 一种设备适配方法及网络管理装置
CN113138673A (zh) * 2020-01-17 2021-07-20 华为技术有限公司 一种基于命令行界面的提示方法及相关设备
CN113746657A (zh) * 2020-05-30 2021-12-03 华为技术有限公司 一种业务配置方法及其装置
CN114553691A (zh) * 2022-04-28 2022-05-27 广东电网有限责任公司东莞供电局 创建网络配置模板及网络配置的方法、装置和设备
WO2024007788A1 (zh) * 2022-07-07 2024-01-11 中兴通讯股份有限公司 网元管理方法、电子设备、计算机可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7249170B2 (en) * 2000-12-06 2007-07-24 Intelliden System and method for configuration, management and monitoring of network resources
US20020161888A1 (en) * 2001-04-30 2002-10-31 Mcguire Jacob Template-based system for automated deployment and management of network devices
US7013331B2 (en) * 2002-12-20 2006-03-14 Nokia, Inc. Automated bulk configuration of network devices
CN1300983C (zh) * 2004-01-17 2007-02-14 华为技术有限公司 交换机动态配置恢复方法

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101321080B (zh) * 2007-06-04 2010-07-28 华为技术有限公司 配置网络设备的方法、网络设备、网络系统
CN101552692B (zh) * 2008-04-02 2011-03-23 大唐移动通信设备有限公司 网元设备的操作及维护系统及其参数配置方法
CN101291252B (zh) * 2008-05-31 2011-12-07 成都市华为赛门铁克科技有限公司 业务部署的方法、装置和系统
CN101299679B (zh) * 2008-06-13 2010-07-14 南京邮电大学 泛在网络业务动态重配置方法
CN101582794B (zh) * 2009-06-26 2011-12-07 西安电子科技大学 网络设备统一配置系统及其配置方法
CN101977220B (zh) * 2010-10-14 2015-06-03 中兴通讯股份有限公司 一种功能子系统间不同版本功能模块的匹配方法及装置
CN101977220A (zh) * 2010-10-14 2011-02-16 中兴通讯股份有限公司 一种功能子系统间不同版本功能模块的匹配方法及装置
CN102006183A (zh) * 2010-11-12 2011-04-06 百度在线网络技术(北京)有限公司 一种用于基于配置参数配置网络设备的方法与配置设备
CN102799460B (zh) * 2011-05-23 2015-08-19 中国移动通信集团公司 一种业务开发系统、方法和业务运行系统、方法
CN102799460A (zh) * 2011-05-23 2012-11-28 中国移动通信集团公司 一种业务开发系统、方法和业务运行系统、方法
CN102932474A (zh) * 2012-11-14 2013-02-13 北京星网锐捷网络技术有限公司 报文解析方法、设备及系统
CN106227821A (zh) * 2016-07-21 2016-12-14 杭州华三通信技术有限公司 一种命令行命令的处理方法和装置
CN106227821B (zh) * 2016-07-21 2019-08-06 新华三技术有限公司 一种命令行命令的处理方法和装置
CN106899427A (zh) * 2016-09-19 2017-06-27 阿里巴巴集团控股有限公司 一种运维指令的执行方法、装置及系统
CN107547263A (zh) * 2017-07-26 2018-01-05 南京邮电大学 一种实现网元设备自动化查找模板配置的方法
CN109426514A (zh) * 2017-08-24 2019-03-05 北京金山云网络技术有限公司 服务自动化部署方法、装置、电子设备及存储介质
CN109426514B (zh) * 2017-08-24 2022-09-02 北京金山云网络技术有限公司 服务自动化部署方法、装置、电子设备及存储介质
CN107749800B (zh) * 2017-09-22 2021-01-12 安徽皖通邮电股份有限公司 一种实现通信设备自动化测试配置隐式删除的方法
CN107749800A (zh) * 2017-09-22 2018-03-02 安徽皖通邮电股份有限公司 一种实现通信设备自动化测试配置隐式删除的方法
CN107911249A (zh) * 2017-11-28 2018-04-13 新华三技术有限公司 一种网络设备的命令行发送方法、装置和设备
CN108365974A (zh) * 2018-01-17 2018-08-03 南京邮电大学 一种针对网元设备多业务自动化脚本配置的方法
CN110324169A (zh) * 2018-03-30 2019-10-11 北京京东尚科信息技术有限公司 一种接口管理的方法和装置
CN111740851A (zh) * 2019-03-25 2020-10-02 华为技术有限公司 配置报文生成方法、设备以及系统
CN111740851B (zh) * 2019-03-25 2023-05-09 华为技术有限公司 配置报文生成方法、设备以及系统
CN110348201A (zh) * 2019-05-22 2019-10-18 中国科学院信息工程研究所 一种设备安全策略的配置方法及装置
CN113138673A (zh) * 2020-01-17 2021-07-20 华为技术有限公司 一种基于命令行界面的提示方法及相关设备
CN113746657A (zh) * 2020-05-30 2021-12-03 华为技术有限公司 一种业务配置方法及其装置
CN112436964A (zh) * 2020-11-12 2021-03-02 中国联合网络通信集团有限公司 一种设备适配方法及网络管理装置
CN112436964B (zh) * 2020-11-12 2022-08-26 中国联合网络通信集团有限公司 一种设备适配方法及网络管理装置
CN114553691A (zh) * 2022-04-28 2022-05-27 广东电网有限责任公司东莞供电局 创建网络配置模板及网络配置的方法、装置和设备
CN114553691B (zh) * 2022-04-28 2022-07-29 广东电网有限责任公司东莞供电局 创建网络配置模板及网络配置的方法、装置和设备
WO2024007788A1 (zh) * 2022-07-07 2024-01-11 中兴通讯股份有限公司 网元管理方法、电子设备、计算机可读存储介质

Also Published As

Publication number Publication date
CN100440809C (zh) 2008-12-03

Similar Documents

Publication Publication Date Title
CN1956394A (zh) 进行网络设备业务配置的方法及装置
CN100337235C (zh) 访问数据库的方法及装置
CN1291313C (zh) 操作系统的自动安装和配置的系统和方法
CN1529455A (zh) 网络故障实时相关性分析方法及系统
CN1756195A (zh) 网络管理
CN1859160A (zh) 用户驻地设备配置管理方法及其系统
CN1615480A (zh) 网络设备间配置文件的翻译
CN101042649A (zh) 一种配置信息处理方法及装置以及平台系统
CN101064641A (zh) 对Web服务资源的基于属性的索引和/或查询方法及系统
CN101061688A (zh) 基于简单网络管理协议的网络管理设备和方法
CN101035027A (zh) 网管接口信息交互方法、装置及通知上报方法
CN1896992A (zh) 基于应用定制解析xml文档的方法及装置
CN101051937A (zh) 一种基于xml的用户权限管理方法及系统
CN1643464A (zh) 用于集中监控工厂的设备和方法
CN1934538A (zh) 用于多代理系统的异常管理方案
CN1967485A (zh) 一种实现j2ee应用的方法及系统
CN1901547A (zh) 生成web服务策略协议的方法和设备
CN1812406A (zh) 通信设备、通信方法、通信程序和记录媒体
CN1669272A (zh) 用于服务预订规定的管理系统和方法
CN1925463A (zh) 包通信装置
CN1299467C (zh) 管理网络设备的装置及其方法
CN1756257A (zh) 大型网络中主机性能采集代理
CN1790957A (zh) 设备测试方法
CN1780261A (zh) 使用封装和单播的区分服务组播系统和方法
CN1155201C (zh) 一种对通信设备进行数据配置的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.