一种SDN资源的处理方法及装置与流程

文档序号:13033807阅读:157来源:国知局
一种SDN资源的处理方法及装置与流程
本申请涉及但不限于网络应用
技术领域
,尤指一种sdn(softwaredefinednetwork,软件定义网络)资源的处理方法及装置。
背景技术
:sdn的常见结构如图1所示,单域控制器直接访问本控制域内的网元,多域控制器直接链接各单域控制器,完成对各单域控制器所辖控制域的控制;各控制器配备一个app(application,应用软件),作为该控制器的管理工具;多域app除了和控制器交互,还需要和下层的单域app交互;由ems(elementmanagementsystem,网元管理系统)完成对一个控制域范围内的网元进行单网元管理。在sdn网络中,app需要将sdn网络设备的网元、接口、链路资源按照其归属的管理域抽象成虚拟节点、虚拟接口、虚拟链路资源,以便app依据这些虚拟资源来完成业务、性能等方面的管理。目前尚无相关技术方案可供借鉴。技术实现要素:本发明实施例提供一种sdn资源的处理方法及装置,以实现sdn网络资源的虚拟化。本发明实施例提供了一种软件定义网络sdn资源的处理方法,包括:通过应用软件向网元管理系统获取sdn网元的资源信息;根据所获取的资源信息创建所述sdn网元的虚拟资源,所述虚拟资源包括虚拟节点资源、虚拟接口资源和虚拟链路资源;在存在北向多域应用软件的情况下,将所述虚拟资源发送给控制器和所述北向多域应用软件;在不存在北向多域应用软件的情况下,将所述虚拟资源发送给控制器。可选地,所述通过应用软件向网元管理系统获取sdn网元的资源信息,包括:获取所述sdn网元的南向属性信息、所述sdn网元的接口资源及所述sdn网元相关的链路资源,其中,所述南向属性信息用于赋予相应的虚拟节点资源;所述接口资源用于创建相应的虚拟接口资源;所述链路资源用于筛选出已存在两端虚拟节点和虚拟接口的链路资源,并根据筛选出的链路资源创建相应的虚拟链路资源。可选地,所述方法还包括:管理所述sdn网元的虚拟资源。可选地,所述管理所述sdn网元的虚拟资源,包括:接收到删除指定虚拟节点资源的指令后,删除所述指定虚拟节点资源和所述指定虚拟节点资源关联的虚拟接口和虚拟链路资源;将删除的所述指定虚拟节点资源、所述虚拟接口和所述虚拟链路资源发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。可选地,所述管理所述sdn网元的虚拟资源,包括:接收到修改指定虚拟节点资源的指令后,修改所述指定虚拟节点资源的南向属性信息;将修改后的所述指定虚拟节点资源发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。可选地,所述管理所述sdn网元的虚拟资源,包括:接收到同步指令后,对指定网元的虚拟资源进行同步处理;将同步后的变更信息发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。可选地,所述对指定网元的虚拟资源进行同步处理,包括:向所述网元管理系统查询指定虚拟节点对应的网元,在查询到对应网元的情况下,将查询到的所述网元的相关属性覆盖对应的虚拟节点资源的属性值;在查询不到对应网元且接收到继续同步指令的情况下,删除所述指定虚拟节点资源。可选地,所述对指定网元的虚拟资源进行同步处理,包括:向所述网元管理系统查询指定网元的接口信息,将查询到的所述接口信息与对应的虚拟节点所有的虚拟接口信息进行比较,确定新增的接口、待更新属性的虚拟接口和待删除的虚拟接口,为新增的接口创建对应的虚拟接口资源,对于待更新属性的虚拟接口,将接口属性值覆盖给对应的虚拟接口资源,从数据库中删除待删除的虚拟接口。可选地,所述对指定网元的虚拟资源进行同步处理,包括:向所述网元管理系统查询指定网元的链路信息,将查询到的链路信息与对应的虚拟节点所有的虚拟链路进行比较,确定新增的链路、待更新的虚拟链路和待删除的虚拟链路,为新增的链路创建对应的虚拟链路资源,对于待更新属性的虚拟链路,将链路属性值覆盖给对应的虚拟链路资源,从数据库中删除待删除的虚拟链路。本发明实施例还提供一种软件定义网络sdn资源的处理装置,其特征在于,包括:获取模块,用于通过应用软件向网元管理系统获取sdn网元的资源信息;创建模块,用于根据所获取的资源信息创建所述sdn网元的虚拟资源,所述虚拟资源包括虚拟节点资源、虚拟接口资源和虚拟链路资源;发送模块,用于在存在北向多域应用软件的情况下,将所述虚拟资源发送给控制器和所述北向多域应用软件;在不存在北向多域应用软件的情况下,将所述虚拟资源发送给控制器。可选地,所述获取模块,通过应用软件向网元管理系统获取sdn网元的基础资源信息,包括:获取所述sdn网元的南向属性信息、所述sdn网元的接口资源及所述sdn网元相关的链路资源,其中,所述南向属性信息用于赋予相应的虚拟节点资源;所述接口资源用于创建相应的虚拟接口资源;所述链路资源用于筛选出已存在两端虚拟节点和虚拟接口的链路资源,并根据筛选出的链路资源创建相应的虚拟链路资源。可选地,所述装置还包括:管理模块,用于管理所述sdn网元的虚拟资源。可选地,所述管理模块包括:删除单元,用于接收到删除指定虚拟节点资源的指令后,删除所述指定虚拟节点资源和所述指定虚拟节点资源关联的虚拟接口和虚拟链路资源;所述发送模块,还用于将所述删除单元删除的所述指定虚拟节点资源、所述虚拟接口和所述虚拟链路资源发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。可选地,所述管理模块包括:修改单元,用于接收到修改指定虚拟节点资源的指令后,修改所述指定虚拟节点资源的南向属性信息;所述发送模块,还用于将所述修改单元修改后的所述指定虚拟节点资源发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。可选地,所述管理模块包括:同步单元,用于接收到同步指令后,对指定网元的虚拟资源进行同步处理;所述发送模块,还用于将同步后的变更信息发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。可选地,所述同步单元,对指定网元的虚拟资源进行同步处理包括:向所述网元管理系统查询指定虚拟节点对应的网元,在查询到对应网元的情况下,将查询到的所述网元的相关属性覆盖对应的虚拟节点资源的属性值;在查询不到对应网元且接收到继续同步指令的情况下,删除所述指定虚拟节点资源。可选地,所述同步单元,对指定网元的虚拟资源进行同步处理包括:向所述网元管理系统查询指定网元的接口信息,将查询到的所述接口信息与对应的虚拟节点所有的虚拟接口信息进行比较,确定新增的接口、待更新属性的虚拟接口和待删除的虚拟接口,为新增的接口创建对应的虚拟接口资源,对于待更新属性的虚拟接口,将接口属性值覆盖给对应的虚拟接口资源,从数据库中删除待删除的虚拟接口。可选地,所述同步单元,对指定网元的虚拟资源进行同步处理包括:向所述网元管理系统查询指定网元的链路信息,将查询到的链路信息与对应的虚拟节点所有的虚拟链路进行比较,确定新增的链路、待更新的虚拟链路和待删除的虚拟链路,为新增的链路创建对应的虚拟链路资源,对于待更新属性的虚拟链路,将链路属性值覆盖给对应的虚拟链路资源,从数据库中删除待删除的虚拟链路。综上,本发明实施例提供的一种sdn资源的处理方法及装置,可以实现sdn网络资源的虚拟化。附图说明图1为典型的分层sdn网络系统结构图;图2为本发明实施例的sdn资源的处理方法的流程图;图3为本发明实施例的sdn资源的处理装置的示意图。具体实施方式下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。图2为本发明实施例的sdn资源的处理方法的流程图,如图2所示,本实施例的方法包括:步骤11、通过app向ems获取sdn网元的资源信息;步骤12、根据所获取的资源信息创建所述sdn网元的虚拟资源,所述虚拟资源包括虚拟节点资源、虚拟接口资源和虚拟链路资源;步骤13、在存在北向多域应用软件的情况下,将所述虚拟资源发送给控制器和所述北向多域应用软件;在不存在北向多域应用软件的情况下,将所述虚拟资源发送给控制器。本实施例的新建资源,在app中依据ems相关数据创建节点、接口和链路的虚拟资源,并同时应用到控制器和同步到上层app。其中,所述通过应用软件向网元管理系统获取sdn网元的基础资源信息,包括:获取所述sdn网元的南向属性信息、所述sdn网元的接口资源及所述sdn网元相关的链路资源,所述根据所获取的基础资源信息创建所述sdn网元的虚拟资源,包括:将所述sdn网元的南向属性赋予虚拟节点资源;根据所述sdn网元的接口资源创建相应的虚拟接口资源;从所述sdn网元相关的链路资源中筛选出已存在两端虚拟节点和虚拟接口的链路资源,根据筛选出的链路资源创建虚拟链路资源。可选地,本实施例的方法还可以包括:管理所述sdn网元的虚拟资源。可选地,所述管理所述sdn网元的虚拟资源,可以包括:接收到删除指定虚拟节点资源的指令后,删除所述指定虚拟节点资源和所述指定虚拟节点资源关联的虚拟接口和虚拟链路资源;将删除的所述指定虚拟节点资源、所述虚拟接口和所述虚拟链路资源发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。本实施例的删除资源,在app中删除指定的虚拟的节点、接口和链路资源,并应用到控制器和同步到上层app。可选地,所述管理所述sdn网元的虚拟资源,还可以包括:接收到修改指定虚拟节点资源的指令后,修改所述指定虚拟节点资源的南向属性信息;将修改后的虚拟节点资源发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。本实施例的修改资源,在app中修改指定的虚拟节点、接口和链路资源的属性,并将变更应用到控制器和同步到上层app。可选地,所述管理所述sdn网元的虚拟资源,还可以包括:接收到同步指令后,对指定网元的虚拟资源进行同步处理;将同步后的变更信息发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。其中,所述对指定网元的虚拟资源进行同步处理,可以包括:向所述网元管理系统查询指定虚拟节点对应的网元,在查询到对应网元的情况下,将查询到的所述网元的相关属性覆盖对应的虚拟节点资源的属性值;在查询不到对应网元且接收到继续同步指令后,删除所述指定虚拟节点资源。其中,所述对指定网元的虚拟资源进行同步处理,还可以包括:向所述网元管理系统查询指定网元的接口信息,将查询到的所述接口信息与对应的虚拟节点所有的虚拟接口信息进行比较,确定新增的接口、待更新属性的虚拟接口和待删除的虚拟接口,为新增的接口创建对应的虚拟接口资源,对于待更新属性的虚拟接口,将接口属性值覆盖给对应的虚拟接口资源,从数据库中删除待删除的虚拟接口。其中,所述对指定网元的虚拟资源进行同步处理,还可以包括:向所述网元管理系统查询指定网元的链路信息,将查询到的链路信息与对应的虚拟节点所有的虚拟链路进行比较,确定新增的链路、待更新的虚拟链路和待删除的虚拟链路,为新增的链路创建对应的虚拟链路资源,对于待更新属性的虚拟链路,将链路属性值覆盖给对应的虚拟链路资源,从数据库中删除待删除的虚拟链路。本实施例的同步资源,将ems中的相关节点、接口和链路的数据与app中相应的虚拟资源做一次属性值覆盖,并将变更应用到控制器和同步到上层app中。本发明实施例的提供一种sdn资源的处理方法,网元、接口、链路资源在app中的虚拟化、app将其应用到控制器以及app向上层app上报虚拟资源,使得sdn网络的基础资源具备清晰的数据模型、简洁明确的关联关系和完整的生命周期,为后续开发的业务管理功能打下坚实的基础。下面结合图1对本技术方案的实施作进一步的详细描述,本方案主要涉及以下的功能或实体:sdn网络:与传统的网络相比,基于sdn网络的交换机或者路由器只存在转发面(数据面)的逻辑,主要是根据控制器的逻辑完成转发,通过openflow(开源)协议(或者其他协议)实现与本申请所述的sdn控制器互通。控制器:sdn网络中实现转发逻辑并向sdn网络设备发出转发指令的软件系统。sdn控制器(controller)通过openflow协议(或者其他协议)实现与sdn网络设备互通。单域控制器一般用于负责处理单个控制域内的转发逻辑并向本控制域的sdn设备发出转发指令;多域控制器一般通过restful(符合表现状态转换特征)接口和多个单域控制器进行交互,用于处理多域业务逻辑并向单域控制器下发分解后的处理任务。ems:在本方法描述的整个系统中,其将提供网元的自动发现,接口、链路资源的上传的功能,同时向app提供获取网元、接口、链路的资源数据的接口。app:本方法所述的app基于web(网页)实现,通过应用层协议(例如restfull接口等)调用控制器提供的控制和管理的接口。app和控制器一一对应,单域控制器配备一个单域app,多域控制器配置一个多域app。对于多域app,其下辖的所有单域app中的所有虚拟资源都是可视的。本发明实施例的虚拟资源的数据模型如表1-6,说明如下:表1为虚拟节点的主表结构;表2为虚拟节点的netconf(网络配置协议)参数的附属表结构;表3为虚拟节点的cli参数的附属表结构;表4为虚拟节点的snmp(simplenetworkmanagementprotocol,简单网络管理协议)参数的附属表结构;表5为虚拟接口的表结构;表6为虚拟链路的表结构;表1表2表3字段名称字段类型描述vnode_idstring虚拟节点编号cli_usernamestring用户名cli_pwdstring密码cli_portstring端口cli_protocolstring协议类型telnet/ssh表4字段名称字段类型描述vnode_idstring虚拟节点编号snmp_verstringsnmp版本snmp_portstringsnmp端口community_publicstring读团体串community_privatestring写团体串timeoutint超时时间(秒)retryint重试次数usernamestring用户名称,snmpv3属性secu_levelstring安全级别encode_protocolstring加密协议encode_pwdstring加密密码auth_protocolstring鉴权协议auth_pwdstring鉴权密码contextstring上下文表5表6本实施例的新建资源包括以下步骤:步骤101、用户在单域app中选择sdn设备(设备清单由单域app通过restfull接口从ems获取)加入当前控制器的控制域;步骤102、单域app根据选择的sdn网元创建虚拟节点资源,将sdn网元的南向属性(例如snmp参数、cli参数、netconf参数等)赋予虚拟节点资源;步骤103、单域app从ems中获取该sdn网元的接口资源并且利用这些数据在单域app中创建相应的虚拟接口资源;步骤104、单域app从ems中获取该sdn网元相关的链路资源,并且筛选出链路两端虚拟节点和虚拟接口都已存在于当前app中的链路资源,app再根据这些筛选出来的链路资源创建虚拟链路资源;步骤105、单域app将新增的虚拟节点资源、虚拟接口资源和虚拟链路资源通过restfull接口发送给控制器;步骤106、如果当前单域app具有北向的多域app,单域app将新增的虚拟节点资源、虚拟接口资源和虚拟链路资源通过restfull接口发送给此北向的多域app;多域app收到当前单域app发送来的新增资源清单,将创建这些资源的镜像资源,并且正确填写镜像关系字段。本实施例,在单域app中一般只提供针对虚拟节点资源的删除功能,虚拟节点、虚拟链路不提供直接的删除功能。本实施例的删除资源包括以下步骤:步骤201、用户在单域app中选择虚拟节点资源进行删除;步骤202、单域app自动删除所选虚拟节点关联的虚拟接口和虚拟链路资源;步骤203、单域app将需要删除的虚拟节点、虚拟接口和虚拟链路资源通过restfull接口发送给控制器以便控制器将相关设备从控制域中删除;步骤204、如果单域app还存在北向的多域app,那么还需要通过restfull接口通知北向多域app清理掉这些虚拟节点、虚拟接口和虚拟链路资源的镜像资源数据;本实施例,在单域app中一般只提供针对虚拟节点资源的修改功能,虚拟节点、虚拟链路数据相对稳定,不提供直接的修改功能。本实施例的修改资源包括以下步骤:步骤301、用户在单域app中选择虚拟节点进行修改,修改的主要是其南向属性(例如,snmp参数、cli参数、netconf参数);步骤302、app将修改的虚拟节点资源通过restfull接口发送给控制器以便控制器更新自身虚拟节点资源的属性值;步骤303、如果当前单域app还拥有北向的多域app,那么还需要通过restfull接口发送给多域app以便其更新镜像虚拟节点资源的属性值;本实施例中,由于ems和单域app为两个系统,单域app上通过“新建资源”生成的虚拟节点、虚拟接口和虚拟链路资源在经过一段时间后可能与ems上的对应网元、接口和链路存在差异,这种差异既可能是属性值的差异也可能是存亡与否的差异,同步资源就为了消除此种差异。本实施例的同步资源包括以下步骤:步骤401、用户在单域app上选择需要同步的虚拟节点资源;步骤402、单域app将用户选择的虚拟节点作为查询条件通过restfull接口查询ems中的对应网元,将查询到的网元的相关属性(名称、ip、类型、南向属性)覆盖对应的虚拟节点的属性值;如果网元不存在,则提醒操作用户是否继续同步。如果用户选择是,单域app将会删除此虚拟节点;如果用户选择否,单域app将终止此次同步,由用户通过其它维护手段保持一致性;步骤403、单域app以网元为单位通过restfull接口查询ems中网元包含的接口数据,再将这些数据和对应的虚拟节点所有的虚拟接口进行比较,计算出新增的接口、需要更新属性的虚拟接口和需要删除的虚拟接口。对于新增的接口,单域app为其创建对应的虚拟接口资源;对于需要更新属性的虚拟接口,单域app将接口属性值覆盖给对应的虚拟接口资源;对于需要删除的虚拟接口,单域app将会从数据库中对虚拟接口进行删除;步骤404、单域app以网元为单位通过restfull接口查询ems中和网元相关的链路数据,再将这些数据和对应的虚拟节点所有的虚拟链路进行比较,计算出新增的链路、需要更新的虚拟链路和需要删除的虚拟链路。对于新增的链路,单域app为其创建对应的虚拟链路资源;对于需要更新属性的虚拟链路,单域app将链路属性值覆盖给对应的虚拟链路资源;对于需要删除的虚拟链路,单域app将会从数据库中对虚拟链路进行删除。步骤405、单域app将同步带来的虚拟节点的变更(修改或者删除)、虚拟接口的变更(新增、修改和删除)和虚拟链路的变更(新增、修改和删除)通过restfull接口发送给控制器;步骤406、如果当前单域app拥有北向的多域app,当前单域app还会将上述步骤5中的变更情况同restfull接口发送给多域app,由此多域app处理相应的镜像资源使其和当前单域app保持一致性。图3为本发明实施例的sdn资源的处理装置的示意图,如图3所示,本实施例的处理装置包括:获取模块,用于通过应用软件向网元管理系统获取sdn网元的资源信息;创建模块,用于根据所获取的基础资源信息创建所述sdn网元的虚拟资源,所述虚拟资源包括虚拟节点资源、虚拟接口资源和虚拟链路资源;发送模块,用于在存在北向多域应用软件的情况下,将所述虚拟资源发送给控制器和所述北向多域应用软件;在不存在北向多域应用软件的情况下,将所述虚拟资源发送给控制器。其中,所述获取模块,通过应用软件向网元管理系统获取sdn网元的基础资源信息,包括:获取所述sdn网元的南向属性信息、所述sdn网元的接口资源及所述sdn网元相关的链路资源,其中,所述南向属性信息用于赋予相应的虚拟节点资源;所述接口资源用于创建相应的虚拟接口资源;所述链路资源用于筛选出已存在两端虚拟节点和虚拟接口的链路资源,并根据筛选出的链路资源创建相应的虚拟链路资源。可选地,本实施例的处理装置还可以包括:管理模块,用于管理所述sdn网元的虚拟资源。其中,所述管理模块包括:删除单元,用于接收到删除指定虚拟节点资源的指令后,删除所述指定虚拟节点资源和所述指定虚拟节点资源关联的虚拟接口和虚拟链路资源;所述发送模块,还用于将所述删除单元删除的所述指定虚拟节点资源、所述虚拟接口和所述虚拟链路资源发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。其中,所述管理模块还可以包括:修改单元,用于接收到修改指定虚拟节点资源的指令后,修改所述指定虚拟节点资源的南向属性信息;所述发送模块,还用于将所述修改单元修改后的所述指定虚拟节点资源发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。其中,所述管理模块还可以包括:同步单元,用于接收到同步指令后,对指定网元的虚拟资源进行同步处理;所述发送模块,还用于将同步后的变更信息发送给所述控制器,或发送给所述控制器和所述北向的多域应用软件。其中,所述同步单元,对指定网元的虚拟资源进行同步处理包括:向所述网元管理系统查询指定虚拟节点对应的网元,在查询到对应网元的情况下,将查询到的网元的相关属性覆盖对应的虚拟节点资源的属性值;在查询不到对应网元,提醒用户是否继续同步,接收到继续同步指令的情况下,删除所述指定虚拟节点资源。其中,所述同步单元,对指定网元的虚拟资源进行同步处理包括:向所述网元管理系统查询指定网元的接口信息,将查询到的接口信息与对应的虚拟节点所有的虚拟接口信息进行比较,确定新增的接口、待更新属性的虚拟接口和待删除的虚拟接口,为新增的接口创建对应的虚拟接口资源,对于待更新属性的虚拟接口,将接口属性值覆盖给对应的虚拟接口资源,从数据库中删除待删除的虚拟接口。其中,所述同步单元,对指定网元的虚拟资源进行同步处理包括:向所述网元管理系统查询指定网元的链路信息,将查询到的链路信息与对应的虚拟节点所有的虚拟链路进行比较,确定新增的链路、待更新的虚拟链路和待删除的虚拟链路,为新增的链路创建对应的虚拟链路资源,对于待更新属性的虚拟链路,将链路属性值覆盖给对应的虚拟链路资源,从数据库中删除待删除的虚拟链路。综上所述,本发明实施例的sdn网络资源的处理方法及装置,完成sdn网络基础资源的虚拟化和管理,使得基础的虚拟资源具备清晰的创建、修改、删除、同步的处理逻辑,能保证虚拟资源尽最大可能的和sdn网络设备的实际情况保持一致。本发明实施例还提供了一种计算机可读存储介质,其存储有计算机可执行指令,所述计算机可执行指令被执行时实现所述页面处理方法。本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。以上仅为本发明的优选实施例,当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1