网络配置访问方法及装置的制造方法【
技术领域:
】[0001]本发明涉及网络通信
技术领域:
,尤其涉及网络管理系统中的网络配置访问方法及装直。【
背景技术:
】[0002]NETCONF(NetworkConfigurationProtocol,网络配置协议)是一种基于XML(可扩展标记语言)的网络管理协议,它提供了一种对网络设备进行配置和管理的方法。该协议允许网络设备对外提供一系列完整、规范化的编程接口。应用程序或用户可以通过该接口对网络设备设置参数、获取参数值、获取统计信息。[0003]NETCONF协议的配置及信息交互基于XML,相对于命令行、SNMP(SimpleNetworkManagementProtocol,简单网络管理协议)等方式,更易于数据及信息的解析。NETCONF协议的传输层独立于协议本身,支持的连接方式多,包括TELNET、SSH(SecureShell,安全外壳)、C0NS0LE、S0AP(SimpleObjectAccessProtocol,简单对象访问协议)、BEEP(BlocksExtensibleExchangeProtocol,块可扩展交换协议)等。[0004]在RFC6241中定义的NETCONF协议层次结构如图1所示:[0005]其中,第(1)层为SecureTransport层,即NETCONF传输层。传输层协议和NETCONF协议本身相对独立,其作用为在网络设备和管理节点之间提供对应的会话(Session)载体。[0006]NETCONF传输层支持的协议包含但不限于如下类型:[0007]1)SSH;[0008]2)SOAP;[0009]3)BEEP。[0010]应用不同类型的传输层协议建立NETCONF会话时所需配置的参数各异,即使是同一种传输层协议,在不同厂商的网络设备中进行NETCONF连接的方式也有很大差别。[0011]例如:[0012]1)应用Telnet传输层协议与A公司的网络设备建立NETCONF会话,需要在网络设备命令行终端的用户视图下以命令[xml]进入xml视图。[0013]2)应用SSH传输层协议与B公司的网络设备建立NETCONF会话,需要在SSH登录时以子系统[netconf]进行登录。[0014]3)应用SOAP传输层协议与C公司的网络设备建立NETCONF会话,需要使用HTTP/HTTPS协议在连接URL(UniformResourceLocator,统一资源标识符)中以路径[/soap/netconf/]进行HTTP请求。[0015]传输层负责会话管理模式的维护,RFC规范中要求网络设备必须至少支持一个NETCONF会话,并应该支持多个。[0016]不同厂商的网络设备对NETCONF会话管理模式的实现各异,例如:A公司的网络设备同时最多能建立5个NETCONF会话,用户数超过上限后,新登录的用户将登录失败。而其他厂商设备的并发NETCONF会话数量与管理模式并不与此策略完全一致。[0017]第(2)层为Messages层,即NETC0NF消息层。消息层为NETC0NF配置协议提供了一个简洁的、传输协议无关的消息编码机制。[0018]消息层使用<rpc>元素来表示一个从客户端到服务器的NETC0NF请求,使用<rpc-reply>元素来表示一个从服务器到客户端的NETC0NF响应,<ok>元素作为<rpc-reply>响应子元素表示操作成功,<rpc-error>元素作为<rpc-reply>响应子元素反馈操作失败信息。[0019]第(3)层为Operations层,即NETC0NF操作层。操作层定义了一系列在RPC中应用的基本的原语操作集,这些操作将组成NETC0NF的基本能力。[0020]NETC0NF协议定义了九种基础操作,功能主要包括取值操作(〈get〉)、配置操作(〈get-config>/〈edit-config>)、锁操作(<lock>/〈unlock>)和会话(〈close-session>/〈kill_session>)操作。[0021]操作被根据功能及使用语义划分为能力集进行管理。建立NETC0NF连接过程中,客户端必须给设备发送〈hello〉信息,完成能力集的交互后,设备才会建立会话并处理客户端发送的后续请求。[0022]RFC规范中定义的主要能力集如下:[0023]base:基本能力集;[0024]writable-running:运行配置变更能力集;[0025]candidate-configuration:备选配置能力集;[0026]confirmed-commit:确认提交能力集;[0027]rollback-on-error:错误回滚能力集。[0028]下表中列出了主流设备厂商实现对NETC0NF能力集的支持状况,包括:完全支持(用"++"表示)、部分支持(用"+"表示)和不支持(用表示)。[0029][0030]表1主流设备厂商实现对NETC0NF能力集的支持状况[0031]由表1可见,不同厂商的实现对于RFC标准能力集的支持状况有很大差异。而且,不同厂商定义了一系列所属设备支持的专有扩展能力集,提供附加的NETC0NF配置操作功能。[0032]第(4)层为Content层,即NETC0NF内容层。内容层表示的是被管对象的集合,可以是配置数据、状态数据、统计信息等。内容层具体可读写的数据规范需要参阅各个厂商实现产品的XSD定义,并无规范化的统一标准。[0033]由NETC0NF协议的(1)、(3)、(4)层的分析中可以看出,不同生产厂商的网络设备在传输层协议支持及使用方式、操作层实现及扩展的操作原语、内容层中数据信息的表示模式实现均各不相同,与不同厂商的网络设备进行NETC0NF协议交互时需要知晓和运用上述信息和模式。[0034]因而,NETC0NF协议使用者通过SOAP客户端、Telnet/SSH客户端进行NETC0NF配置时,需要自行根据不同传输层协议构建传输信道,建立和维护会话,编写和解析<rpc>和〈rpc-reply〉协议区域内容,理解和填充操作及内容层的数据。与不同厂商的网络设备进行NETC0NF协议交互时需要知晓和运用的差异化的配置策略和配置内容存在较大的管理复杂度。[0035]因此,NETC0NF协议会话、操作及内容的维护和管理成为了NETC0NF协议在网络管理中广泛使用时所需细加考量的地方。【
发明内容】[0036]本发明提供网络配置访问方法及装置,以使得NETC0NF配置访问过程更加简明、_效。[0037]本发明的技术方案是这样实现的:[0038]-种网络配置访问方法,该方法包括:[0039]按照预设的NETC0NF配置框架中的元数据定义规范,在NETC0NF配置框架中的元数据定义文件中,对网络设备的类型、能力集、操作信息进行定义;按照预设的NETC0NF配置框架中的协议抽象体系结构,对网络设备的操作元素及操作参数元素进行定义,其中,协议抽象体系结构定义了NETC0NF协议层次结构在NETC0NF配置框架中的对应接口及实现;按照预设的NETC0NF配置框架中的传输层体系结构,对网络设备支持的各传输层协议,以及采用各传输层协议实现与网络设备的连接进行定义;[0040]网管系统使用NETC0NF配置框架对网络设备进行配置访问。[0041]所述网管系统使用NETC0NF配置框架对网络设备进行配置访问包括:[0042]网管系统根据网络设备的类型信息,在自身的NETC0NF配置框架中的传输层体系结构中,查找到对应的传输层协议,以及采用传输层协议实现与该设备的连接的定义信息,根据该设备支持的传输层协议以及采用传输层协议实现与该设备的连接的定义信息,与该设备建立NETC0NF会话;[0043]会话建立过程中,网管系统将从该设备获取的NETC0NF能力集与NETC0NF配置框架的元数据定义文件中定义的该设备的能力集进行比较,将两者的交集作为本会话的活动會泛;[0044]网管系统根据本会话的活动能力集,对该设备进行配置访问。[0045]所述网管系统根据本会话的活动能力集,对该设备进行配置访问包括:[0046]网管系统根据配置访问的操作名称在NETC0NF配置框架的协议抽象体系结构中查找到对应的接口,根据本会话的活动能力集并结合NETC0NF配置框架的元数据定义文件中定义的该设备的操作信息在该接口中创建操作实例,将操作实例组装成查询实例,然后设置查询实例中的各操作实例的各项属性,根据查询当前第1页1 2 3 4 5 
实例生成实际的NETCONF配置内容, 然后通过建立的NETCONF会话对该设备执行配置查询。
[0047] 按照预设的NETCONF配置框架中的元数据定义规范,在元数据定义文件中,对网 络设备的类型信息、或者支持的能力集,或者支持的操作信息进行扩展;
[0048] 或者,按照预设的NETCONF配置框架中的协议抽象体系结构,对网络设备的操作 元素及操作参数元素进行扩展;
[0049] 或者,按照预设的NETCONF配置框架中的传输层体系结构,对网络设备支持的传 输层协议,以及采用传输层协议实现与该设备的连接的定义进行扩展。
[0050] 所述方法进一步包括:
[0051] 网管系统保存各网络设备与该网络设备的本地网管系统的映射关系;
[0052] 所述网管系统使用NETCONF配置框架对网络设备进行配置访问包括:
[0053] 网管系统接收用户输入的针对一网络设备的配置访问请求,根据所述映射关系, 确定该网络设备的本地网管系统,若该本地网管系统为自己,则直接对该网络设备进行配 置访问;否则,向该本地网管系统转发该配置访问请求,以便由该本地网管系统执行对该网 络设备的配置访问。
[0054] -种网络配置访问装置,该装置包括:
[0055]NETCONF配置框架维护模块:按照预设的NETCONF配置框架中的元数据定义规范, 在NETCONF配置框架中的元数据定义文件中,对网络设备的类型、能力集、操作信息进行定 义;按照预设的NETCONF配置框架中的协议抽象体系结构,对网络设备的操作元素及操作 参数元素进行定义,其中,协议抽象体系结构定义了NETCONF协议层次结构在NETCONF配置 框架中的对应接口及实现;按照预设的NETCONF配置框架中的传输层体系结构,对网络设 备支持的各传输层协议,以及采用各传输层协议实现与网络设备的连接进行定义;
[0056] 配置访问模块:使用NETCONF配置框架对网络设备进行配置访问。
[0057] 所述配置访问模块使用NETCONF配置框架对网络设备进行配置访问包括:
[0058] 根据网络设备的类型信息,在NETCONF配置框架中的传输层体系结构中,查找到 对应的传输层协议,以及采用传输层协议实现与该设备的连接的定义信息,根据该设备 支持的传输层协议以及采用传输层协议实现与该设备的连接的定义信息,与该设备建立 NETCONF会话;会话建立过程中,将从该设备获取的NETCONF能力集与NETCONF配置框架的 元数据定义文件中定义的该设备的能力集进行比较,将两者的交集作为本会话的活动能力 集;根据本会话的活动能力集,对该设备进行配置访问。
[0059] 所述配置访问模块根据本会话的活动能力集,对该设备进行配置访问包括:
[0060] 网管系统根据配置访问的操作名称在NETCONF配置框架的协议抽象体系结构中 查找到对应的接口,根据本会话的活动能力集并结合NETCONF配置框架的元数据定义文件 中定义的该设备的操作信息在该接口中创建操作实例,将操作实例组装成查询实例,然后 设置查询实例中的各操作实例的各项属性,根据查询实例生成实际的NETCONF配置内容, 然后通过建立的NETCONF会话对该设备执行配置查询。
[0061] 所述NETCONF配置框架维护模块进一步用于,
[0062] 按照预设的NETCONF配置框架中的元数据定义规范,在元数据定义文件中,对网 络设备的类型信息、或者支持的能力集,或者支持的操作信息进行扩展;或者,按照预设的NETCONF配置框架中的协议抽象体系结构,对网络设备的操作元素及操作参数元素进行扩 展;或者,按照预设的NETCONF配置框架中的传输层体系结构,对网络设备支持的传输层协 议,以及采用传输层协议实现与该设备的连接的定义进行扩展。
[0063] 所述配置访问模块进一步用于,保存各网络设备与该网络设备的本地网管系统的 映射关系,且,
[0064] 所述配置访问模块使用NETCONF配置框架对网络设备进行配置访问包括:
[0065] 当接收到用户输入的针对一网络设备的配置访问请求时,根据所述映射关系,确 定该网络设备的本地网管系统,若该本地网管系统为自己,则直接对该网络设备进行配置 访问;否则,向该本地网管系统转发该配置访问请求,以便由该本地网管系统执行对该网络 设备的配置访问。
[0066] 可见,本发明中通过定义NETCONF配置框架,封装了NETCONF协议中能力集、操作 等在各类网络设备实现中差异化的协议元素,对不同传输层协议能力进行一致化的实现, 并基于NETCONF配置时的各项功能建立层次化的职责体系,使得NETCONF配置访问过程更 加简明、高效,并提升了NETCONF协议在网管系统中的使用价值及应用范围。
【附图说明】
[0067] 图1为现有的RFC6241中定义的NETCONF协议层次结构示意图;
[0068] 图2为本发明实施例提供的网络配置访问方法流程图;
[0069] 图3为本发明实施例提供的NETCONF配置框架实现方法流程图;
[0070] 图4为本发明实施例采用Java语言定义和实现的NETCONF配置框架中的协议抽 象体系结构;
[0071]图5为本发明实施例提供的NETCONF配置框架扩展方法流程图;
[0072] 图6为本发明实施例提供的采用NETCONF协议对网络设备进行配置访问的方法流 程图;
[0073] 图7为本发明实施例提供的网络配置访问装置的组成示意图。
【具体实施方式】
[0074] 下面结合附图及具体实施例对本发明再作进一步详细的说明。
[0075] 图2为本发明实施例提供的网络配置访问方法流程图,其具体步骤如下:
[0076] 步骤201:按照预设的NETCONF配置框架中的元数据定义规范,在NETCONF配置 框架中的元数据定义文件中,对网络设备的类型、能力集、操作信息进行定义;按照预设的 NETCONF配置框架中的协议抽象体系结构,对网络设备的操作元素及操作参数元素进行定 义,其中,协议抽象体系结构定义了NETCONF协议层次结构在NETCONF配置框架中的对应接 口及实现;按照预设的NETCONF配置框架中的传输层体系结构,对网络设备支持的各传输 层协议,以及采用各传输层协议实现与网络设备的连接进行定义。
[0077] 步骤202:网管系统使用NETCONF配置框架对网络设备进行配置访问。
[0078] 具体地,网管系统使用网络设备的类型信息,在自身的NETCONF配置框架中的传 输层体系结构中,查找到对应的传输层协议,以及采用传输层协议实现与该设备的连接的 定义信息,根据该设备支持的传输层协议以及采用传输层协议实现与该设备的连接的定义 信息,与该设备建立NETCONF会话;会话建立过程中,网管系统将从该设备获取的NETCONF 能力集与NETCONF配置框架的元数据定义文件中定义的该设备的能力集进行比较,将两者 的交集作为本会话的活动能力集;网管系统根据本会话的活动能力集,对该设备进行配置 访问。
[0079] 其中,网管系统使用本会话的活动能力集,对该设备进行配置访问包括:
[0080] 网管系统根据配置访问的操作名称在NETCONF配置框架的协议抽象体系结构中 查找到对应的接口,根据本会话的活动能力集并结合NETCONF配置框架的元数据定义文件 中定义的该设备的操作信息该接口中创建操作实例,将操作实例组装成查询实例,然后设 置查询实例中的各操作实例的各项属性,根据查询实例生成实际的NETCONF配置内容,然 后通过建立的NETCONF会话对该设备执行配置查询。
[0081] 图3为本发明实施例提供的NETCONF配置框架实现方法流程图,其具体步骤如 下:
[0082] 步骤301:按照预设的NETCONF配置框架中的元数据定义规范,在NETCONF配置框 架中的元数据定义文件中,对网络设备的类型信息进行定义。
[0083] 本步骤中的网络设备指的是已知的支持NETCONF协议的网络设备。
[0084] 这里,网络设备的类型信息通常指厂商或者型号信息。
[0085]NETCONF配置框架中的元数据定义文件主要对NETCONF配置框架的协议实现厂商 (Vendor)、能力集(Capability)、操作(Operation)进行定义及关系组织。需要预先设定 NETCONF配置框架元数据定义文件规范,例如:可采用XML格式。
[0086] 步骤302:按照预设的NETCONF配置框架中的元数据定义规范,在NETCONF配置框 架中的元数据定义文件中,对网络设备的能力集进行定义。
[0087] 步骤303:按照预设的NETCONF配置框架中的元数据定义规范,在NETCONF配置 框架中的元数据定义文件中,对网络设备支持的操作及其所属能力集及其实现类名进行定 义。
[0088] 在具体实现时,上述步骤301~303中的NETCONF配置框架中的元数据定义文件 可以采取任意格式进行描述,以下以XML
格式举例说明。
[0089] 1)厂商信息
[0090] 定义了NETCONF配置框架的协议实现厂商,RFC中定义的能力集的实现厂商为Common,其余各厂商自行实现的能力集的实现厂商标注为其厂商名称。
[0091] 〈vendors〉
[0092] 〈vendor〉
[0093] <vendorName>Common</vendorName>
[0094] 〈/vendor〉
[0095] 〈vendor〉
[0096] <vendorName>A</vendorName>
[0097] 〈/vendor〉
[0098] 〈vendor〉
[0099] <vendorName>B</vendorName>
[0100] 〈/vendor〉
[0101] 〈vendor〉
[0102] <vendorName>C</vendorName>
[0103] 〈/vendor〉
[0104] 〈vendor〉
[0105] <vendorName>D</vendorName>
[0106] 〈/vendor〉
[0107] 〈/vendors〉
[0108] 属性说明:
[0109]vendorName :厂商名称,唯一
[0110] 2)能力集信息
[0111] 定义了NETC0NF配置框架支持的能力集,其中,需要定义每种能力集的实现厂商。
[0112] 〈capabilities〉
[0113] 〈capability〉
[0114] <capabilityld>urn:ietf:params:netconf:base:1. 0</capabilityId>
[0115] <capabilityXmlns>urn: ietf :params:xml :ns:netconf :base : 1. 0</ capabilityXmlns>
[0116] <capabilityDesc>netconf. capability, base. desc</capabilityDesc>
[0117] <capabi1ityVendor>Common</capabi1ityVendor>
[0118] <capabi1itySupported>true</capabi1itySupported>
[0119] 〈/capability〉
[0120] 〈capability〉
[0121] 〈capabi lityld〉
[0122] urn:ietf:params:netconf:capability:A-netconf-ext:1.0</capabilityld>
[0123] <capabilityXmlns>urn:ietf:params:xml:ns:netconf:capability:A-netconf-ext:1.0</capabilityXmlns>
[0124] <capabi1ityVendor>A</capabi1ityVendor>
[0125] <capabi1itySupported>true</capabi1itySupported>
[0126] 〈/capability〉
[0127] 〈/capabilities〉
[0128] 属性说明:
[0129]capability Id:能力集ID,唯一
[0130]capabi 1 ityXmlns:能力集XML命名空间
[0131]capabilityDesc:能力集描述,可选
[0132]capabi 1 ityVendor:能力集实现厂商
[0133]capabilitySupported :NETC0NF配置框架是否支持该能力集,缺省为false
[0134] 3)操作信息
[0135] 定义了NETC0NF配置框架支持的操作及其所属的能力集与其实现类名。
[0136] 〈operations〉
[0137] 〈operation〉
[0138] <operationId>commonGet</operationId>
[0139] <operationName>get</operationName>
[0140] <operationCapabilities>
[0141] <capabilityld>urn:ietf:params:netconf:base:1. 0</capabilityId>
[0142] <capabilityld>urn:ietf:params:netconf:base:1. l</capabilityld>
[0143] </operationCapabilities>
[0144] <operationClass>com. A. imc.netconf. protocol, operation, common. Get</ operationClass>
[0145] 〈/operation〉
[0146] 〈operation〉
[0147] <operationId>AMockOperation</operationId>
[0148] <operationName>A-mock-〇peration</operationName>
[0149] <operationCapabilities>
[0150] <capabilityld>urn: ietf:params:netconf: capability :A-netconf-ext: 1. 0</ capabilityld>
[0151] </operationCapabilities>
[0152] <operationClass>com. A. imc. netconf. protocol, operation. A. AMockOperation</operationClass>
[0153] 〈/operation〉
[0154] 〈/operations〉
[0155] 属性说明:
[0156] operationld :操作ID,唯一
[0157] operationName :操作名称,操作的标签名
[0158] operationCapabilities :支持该操作的能力集,可以包含多个capabilityld
[0159] operationClass :操作实现类的全限定类名
[0160] 步骤304 :按照预设的NETCONF配置框架中的协议抽象体系结构,对网络设备的操 作元素及操作参数元素进行定义。
[0161] NETCONF配置框架中的协议抽象体系结构定义了RFC中定义的NETCONF协议层次 结构(如图1所示)在NETCONF配置框架中的对应接口及实现。RFC中定义的NETCONF协议 层次结构中的操作及各个厂商扩展实现的操作等协议元素通过实现或继承NETCONF配置 框架中的对应接口进行扩展。
[0162] NETCONF配置框架中的协议抽象可以采用任意适合的面向对象程序设计语言进行 定义和实现,图4给出了采用Java语言定义和实现的NETCONF配置框架中的协议抽象体系 结构。其中,各NETCONF配置框架中的协议抽象接口的含义如下:
[0163] NFElement接口:NETCONF配置框架中的协议元素的实现接口。
[0164] NFMessage接口:NETCONF配置框架对于RFC Level2消息层协议元素的封装接口。 Message类为其基本实现。
[0165] NFOperation接口:NETCONF配置框架对于RFC Level3操作层协议元素的封装接 口。Operation类为其基本实现。
[0166]NFOperationParameter接口:NETC0NF配置框架对于RFCLevel3操作层协议操作 参数元素的封装接口。
[0167]NFContent接口:NETC0NF框架对
于RFCLevel4内容层协议元素的封装接口。 Content类为其基本实现。
[0168] 图中的"A"为厂商名称(Vendorname)。
[0169] 步骤305:按照预设的NETC0NF配置框架中的传输层体系结构,对网络设备支持的 各传输层协议,以及采用各传输层协议实现与网络设备的连接进行定义。
[0170] 这里,对采用各传输层协议实现与网络设备的连接进行定义包括:对于每类传输 层协议,定义采用该传输层协议与网络设备建立连接所需的配置参数、以及上述参数在该 传输层协议下进行连接时所采用的方式、以及针对该网络设备的适配器,配置参数如:设备 的访问地址、端口、用户名及口令等。
[0171] 图3给出的是NETC0NF配置框架的初始实现流程,在实际应用中,在其它情况下, 例如:当有新类型的网络设备加入网管系统时,或者,当一类网络设备支持的NETC0NF能力 集扩展时,也需要对NETC0NF配置框架进行扩展。
[0172] 图5为本发明实施例提供的NETC0NF配置框架扩展方法流程图,其具体步骤如 下:
[0173] 步骤501:网管系统根据需要,按照预设的NETC0NF配置框架中的元数据定义规 范,在NETC0NF配置框架的元数据定义文件中,对网络设备的类型信息进行扩展。
[0174] 本步骤主要针对有新的厂商或型号的设备加入网管系统时的处理。
[0175] 步骤502:网管系统根据需要,按照预设的NETC0NF配置框架中的元数据定义规 范,在NETC0NF配置框架的元数据定义文件中,对网络设备支持的能力集进行扩展。
[0176] 例如:当已加入网管系统的网络设备的能力集发生更新时,需要对该设备对应的 能力集进行更新。
[0177] 步骤503:网管系统根据需要,按照预设的NETC0NF配置框架中的元数据定义规 范,在NETC0NF配置框架的元数据定义文件中,对网络设备支持的操作及其所属能力集与 其实现类名进行扩展。
[0178] 例如:当已加入网管系统的网络设备的能力集支持的操作更新时,需要增加新的 操作及其所属能力集及其实现类名。
[0179] 步骤504:网管系统根据需要,按照预设的NETC0NF配置框架中的协议抽象体系结 构,对网络设备的操作元素及操作参数元素进行扩展。
[0180] 例如:当已加入网管系统的网络设备的能力集支持的操作更新时,需要在 NETC0NF配置框架中的协议抽象体系结构中增加对应的操作元素及操作参数元素。
[0181] 步骤505:网管系统根据需要,按照预设的NETC0NF配置框架中的传输层体系结 构,对网络设备支持的传输层协议,以及采用传输层协议实现与该设备的连接的定义进行 扩展。
[0182] 例如:当已加入网管系统的网络设备支持的传输层协议发生更新,或者支持的传 输层协议的连接实现发生更新,此时需要在NETC0NF配置框架的传输层体系结构中对支持 的传输层协议,或者传输层协议的连接实现定义进行更新。
[0183] 图6为本发明实施例提供的采用NETC0NF协议对网络设备进行配置访问的方法流 程图,其具体步骤如下:
[0184] 步骤601 :网管系统需要采用NETC0NF协议对网络设备进行配置访问。
[0185] 配置访问的触发者为用户,当用户要对一个网络设备进行配置访问时,会向网管 系统输入针对该设备的配置访问请求。
[0186] 配置访问可以是向网络设备下发配置,或者在完成对网络设备的配置下发后根据 管理需要向网络设备获取配置,例如:网管系统要管理网络设备时,可能需要获取网络设备 的接口配置(如:接口索引、接口描述等)、启动配置、运行配置等。
[0187] 步骤602 :网管系统根据该网络设备的类型,在自身的NETC0NF配置框架的传输层 体系结构中,查找到对应的传输层协议,以及采用传输层协议实现与该设备的连接的定义 信息。
[0188] 步骤603:网管系统根据该设备支持的传输层协议以及采用传输层协议实现与该 设备的连接的定义信息,与该设备建立NETC0NF会话。
[0189] 步骤604:会话建立过程中,该设备将自身支持的NETC0NF能力集发送给网管系 统,网管系统将该NETC0NF能力集与NETC0NF配置框架的元数据定义文件中定义的该设备 的能力集进行比较,将两者的交集作为本会话的活动能力集。
[0190] 步骤605:网管系统根据配置访问的操作名称在NETC0NF配置框架的协议抽象体 系结构中查找到对应的接口,根据本会话的活动能力集并结合NETC0NF配置框架的元数据 定义文件中定义的该设备的操作信息该接口中创建操作实例,将操作实例组装成查询实 例,然后设置查询实例中的各操作实例的各项属性,根据查询实例生成实际的NETC0NF配 置内容,然后通过建立的NETC0NF会话对该设备执行配置访问。
[0191] 例如:网管系统在进行配置访问时,首先根据配置访问的操作名称(如"get"),在 NETC0NF配置框架兀数据定义文件中查找对应的operationClass(如"getClass"),然后在 NETC0NF配置框架协议抽象体系结构中查找到operationClass对应的接口,根据本会话的 活动能力集(如:网络设备的厂商信息、支持的NETC0NF协议版本号等)并结合NETC0NF配 置框架元数据定义文件中定义的该设备的操作信息在该接口下创建操作实例,将操作实例 组装成查询实例,然后设置查询实例中的各操作实例的各项属性,根据查询实例生成实际 的NETC0NF配置内容,然后通过建立的NETC0NF会话对该设备执行配置查询。
[0192] 步骤606:配置访问完毕,网管系统关闭与该设备间的NETC0NF会话。
[0193] 需要说明的是,在实际应用中,用户访问的网络设备可能是远程设备,为了向用户 屏蔽远程访问过程,可以在每个网管系统上都配置各网络设备标识信息与其本地网络内的 网管系统标识信息之间的映射关系,当用户向网管系统输入针对一个网络设备的配置访问 请求时,该网管系统首先根据该网络设备的标识信息查找到其本地网络内的网管系统标识 信息,若查找到的网管系统标识信息指向自己,则自己执行步骤601~606,若不指向自己, 则将该配置访问请求转发给查找到的网管系统,由该查找到网管系统完成步骤601~606。
[0194] 从本发明实施例可以看出,本发明的优势如下:
[0195] 1)低使用复杂度:NETC0NF协议的使用者或第三方开发者通过NETC0NF配置框架 的协议抽象体系结构中的接口进行配置访问及操作信息扩展,无需关注使用者或第三方开 发者的位置、会话的创建方式及维护策略、不同传输层协议的使用差异等细节,最小化使用 复杂度。
[0196] 2)高可扩展性:提供NETC0NF协议能力集及操作扩展的框架性支持。可进行厂 商、能力集、操作等NETC0NF配置框架的元数据定义的扩展,操作元素及操作参数元素实现 等协议抽象的扩展。
[0197] 3)-致的信道建立模式:S0AP (HTTP/HTTPS)、SSH、BEEP等多种传输层协议信道 采取统一的构筑策略建立。第三方实现者可以根据NETC0NF配置框架的传输层接口扩展实 现其它的传输层协议适配支持。
[0198] 4)透明的会话管理机制:由NETC0NF配置框架进行NETC0NF会话的建立的维护。 使用者只需要关注操作等协议配置信息,无需关注会话、传输层等交互和实现细节。
[0199] 图7为本发明实施例提供的网络配置访问装置的组成示意图,该装置主要包括: NETC0NF配置框架维护模块71和配置访问模块72,其中:
[0200] NETC0NF配置框架维护模块71:按照预设的NETC0NF配置框架中的元数据定义规 范,在NETC0NF配置框架中的元数据定义文件中,对网络设备的类型、能力集、操作信息进 行定义;按照预设的NETC0NF配置框架中的协议抽象体系结构,对网络设备的操作元素及 操作参数元素进行定义,其中,协议抽象体系结构定义了NETC0NF协议层次结构在NETC0NF 配置框架中的对应接口及实现;按照预设的NETC0NF配置框架中的传输层体系结构,对网 络设备支持的各传输层协议,以及采用各传输层协议实现与网络设备的连接进行定义。
[0201] 配置访问模块72:使用NETC0NF配置框架维护模块71维护的NETC0NF配置框架 对网络设备进行配置访问。
[0202] 其中,配置访问模块72使用NETC0NF配置框架维护模块71维护的NETC0NF配置 框架对网络设备进行配置访问可包括:
[0203] 根据网络设备的类型信息,在NETC0NF配置框架中的传输层体系结构中,查找到 对应的传输层协议,以及采用传输层协议实现与该设备的连接的定义信息,根据该设备 支持的传输层协议以及采用传输层协议实现与该设备的连接的定义信息,与该设备建立 NETC0NF会话;会话建立过程中,将从该设备获取的NETC0NF能力集与NETC0NF配置框架的 元数据定义文件中定义的该设备的能力集进行比较,将两者的交集作为本会话
的活动能力 集;根据本会话的活动能力集,对该设备进行配置访问。
[0204] 其中,配置访问模块72使用本会话的活动能力集,对该设备进行配置访问可包 括:
[0205] 网管系统根据配置访问的操作名称在NETC0NF配置框架的协议抽象体系结构中 查找到对应的接口,根据本会话的活动能力集并结合NETC0NF配置框架的元数据定义文件 中定义的该设备的操作信息在该接口中创建操作实例,将操作实例组装成查询实例,然后 设置查询实例中的各操作实例的各项属性,根据查询实例生成实际的NETC0NF配置内容, 然后通过建立的NETC0NF会话对该设备执行配置查询。
[0206] 其中,NETC0NF配置框架维护模块71进一步用于,使用预设的NETC0NF配置框架 中的元数据定义规范,在元数据定义文件中,对网络设备的类型信息、或者支持的能力集, 或者支持的操作信息进行扩展;或者,按照预设的NETC0NF配置框架中的协议抽象体系结 构,对网络设备的操作元素及操作参数元素进行扩展;或者,按照预设的NETC0NF配置框架 中的传输层体系结构,对网络设备支持的传输层协议,以及采用传输层协议实现与该设备 的连接的定义进行扩展。
[0207] 其中,配置访问模块72进一步用于,保存各网络设备与该网络设备的本地网管系 统的映射关系,且,配置访问模块72使用NETC0NF配置框架维护模块71维护的NETC0NF配 置框架对网络设备进行配置访问包括:当接收到用户输入的针对一网络设备的配置访问请 求时,根据所述映射关系,确定该网络设备的本地网管系统,若该本地网管系统为自己,则 直接对该网络设备进行配置访问;否则,向该本地网管系统转发该配置访问请求,以便由该 本地网管系统执行对该网络设备的配置访问。
[0208] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【主权项】
1. 一种网络配置访问方法,其特征在于,该方法包括: 按照预设的NETCONF配置框架中的元数据定义规范,在NETCONF配置框架中的元数据 定义文件中,对网络设备的类型、能力集、操作信息进行定义;按照预设的NETC0NF配置框 架中的协议抽象体系结构,对网络设备的操作元素及操作参数元素进行定义,其中,协议抽 象体系结构定义了 NETCONF协议层次结构在NETCONF配置框架中的对应接口及实现;按照 预设的NETCONF配置框架中的传输层体系结构,对网络设备支持的各传输层协议,以及采 用各传输层协议实现与网络设备的连接进行定义; 网管系统使用NETCONF配置框架对网络设备进行配置访问。2. 根据权利要求1所述的方法,其特征在于,所述网管系统使用NETCONF配置框架对网 络设备进行配置访问包括: 网管系统根据网络设备的类型信息,在自身的NETCONF配置框架中的传输层体系结构 中,查找到对应的传输层协议,以及采用传输层协议实现与该设备的连接的定义信息,根据 该设备支持的传输层协议以及采用传输层协议实现与该设备的连接的定义信息,与该设备 建立NETCONF会话; 会话建立过程中,网管系统将从该设备获取的NETCONF能力集与NETCONF配置框架的 元数据定义文件中定义的该设备的能力集进行比较,将两者的交集作为本会话的活动能力 集; 网管系统根据本会话的活动能力集,对该设备进行配置访问。3. 根据权利要求2所述的方法,其特征在于,所述网管系统根据本会话的活动能力集, 对该设备进行配置访问包括: 网管系统根据配置访问的操作名称在NETCONF配置框架的协议抽象体系结构中查找 到对应的接口,根据本会话的活动能力集并结合NETCONF配置框架的元数据定义文件中定 义的该设备的操作信息在该接口中创建操作实例,将操作实例组装成查询实例,然后设置 查询实例中的各操作实例的各项属性,根据查询实例生成实际的NETCONF配置内容,然后 通过建立的NETCONF会话对该设备执行配置查询。4. 根据权利要求1所述的方法,其特征在于, 按照预设的NETCONF配置框架中的元数据定义规范,在元数据定义文件中,对网络设 备的类型信息、或者支持的能力集,或者支持的操作信息进行扩展; 或者,按照预设的NETCONF配置框架中的协议抽象体系结构,对网络设备的操作元素 及操作参数元素进行扩展; 或者,按照预设的NETCONF配置框架中的传输层体系结构,对网络设备支持的传输层 协议,以及采用传输层协议实现与该设备的连接的定义进行扩展。5. 根据权利要求1所述的方法,其特征在于,所述方法进一步包括: 网管系统保存各网络设备与该网络设备的本地网管系统的映射关系; 所述网管系统使用NETCONF配置框架对网络设备进行配置访问包括: 网管系统接收用户输入的针对一网络设备的配置访问请求,根据所述映射关系,确定 该网络设备的本地网管系统,若该本地网管系统为自己,则直接对该网络设备进行配置访 问;否则,向该本地网管系统转发该配置访问请求,以便由该本地网管系统执行对该网络设 备的配置访问。6. -种网络配置访问装置,其特征在于,该装置包括: NETCONF配置框架维护模块:按照预设的NETCONF配置框架中的元数据定义规范,在 NETC0NF配置框架中的元数据定义文件中,对网络设备的类型、能力集、操作信息进行定义; 按照预设的NETCONF配置框架中的协议抽象体系结构,对网络设备的操作元素及操作参数 元素进行定义,其中,协议抽象体系结构定义了 NETCONF协议层次结构在NETCONF配置框架 中的对应接口及实现;按照预设的NETCONF配置框架中的传输层体系结构,对网络设备支 持的各传输层协议,以及采用各传输层协议实现与网络设备的连接进行定义; 配置访问模块:使用NETCONF配置框架对网络设备进行配置访问。7. 根据权利要求6所述的装置,其特征在于,所述配置访问模块使用NETCONF配置框架 对网络设备进行配置访问包括: 根据网络设备的类型信息,在NETCONF配置框架中的传输层体系结构中,查找到对应 的传输层协议,以及采用传输层协议实现与该设备的连接的定义信息,根据该设备支持的 传输层协议以及采用传输层协议实现与该设备的连接的定义信息,与该设备建立NETCONF 会话;会话建立过程中,将从该设备获取的NETCONF能力集与NETCONF配置框架的元数据定 义文件中定义的该设备的能力集进行比较,将两者的交集作为本会话的活动能力集;根据 本会话的活动能力集,对该设备进行配置访问。8. 根据权利要求7所述的装置,其特征在于,所述配置访问模块根据本会话的活动能 力集,对该设备进行配置访问包括: 网管系统根据配置访问的操作名称在NETCONF配置框架的协议抽象体系结构中查找 到对应的接口,根据本会话的活动能力集并结合NETCONF配置框架的元数据定义文件中定 义的该设备的操作信息在该接口中创建操作实例,将操作实例组装成查询实例,然后设置 查询实例中的各操作实例的各项属性,根据查询实例生成实际的NETCONF配置内容,然后 通过建立的NETCONF会话对该设备执行配置查询。9. 根据权利要求6所述的装置,其特征在于,所述NETCONF配置框架维护模块进一步用 于, 按照预设的NETCONF配置框架中的元数据定义规范,在元数据定义文件中,对网络 设备的类型信息、或者支持的能力集,或者支持的操作信息进行扩展;或者,按照预设的 NETCONF配置框架中的协议抽象体系结构,对网络设备的操作元素及操作参数元素进行扩 展;或者,按照预设的NETCONF配置框架中的传输层体系结构,对网络设备支持的传输层协 议,以及采用传输层协议实现与该设备的连接的定义进行扩展。10. 根据权利要求6所述的装置,其特征在于,所述配置访问模块进一步用于,保存各 网络设备与该网络设备的本地网管系统的映射关系,且, 所述配置访问模块使用NETCONF配置框架对网络设备进行配置访问包括: 当接收到用户输入的针对一网络设备的配置访问请求时,根据所述映射关系,确定该 网络设备的本地网管系统,若该本地网管系统为自己,则直接对该网络设备进行配置访问; 否则,向该本地网管系统转发该配置访问请求,以便由该本地网管系统执行对该网络设备 的配置访问。
【专利摘要】本发明提出网络配置访问方法及装置。方法包括:按照预设的NETCONF配置框架中的元数据定义规范,在元数据定义文件中,对网络设备的类型、能力集、操作信息进行定义;按照预设的NETCONF配置框架中的协议抽象体系结构,对网络设备的操作元素及操作参数元素进行定义;按照预设的NETCONF配置框架中的传输层体系结构,对网络设备支持的各传输层协议,以及采用各传输层协议实现与该设备的连接进行定义;网管系统使用NETCONF配置框架对网络设备进行配置访问。本发明使得NETCONF配置访问过程更加简明、高效。
【IPC分类】H04L12/24, H04L29/06
【公开号】CN104883266
【申请号】CN201410070524
【发明人】刘梦雯
【申请人】杭州华三通信技术有限公司
【公开日】2015年9月2日
【申请日】2014年2月28日
【公告号】WO2015127866A1
转载请注明原文地址:https://www.famiwei.com/read-8136311.html