软件定义传送网中控制器网元管理能力测试系统及方法与流程

文档序号:15700578发布日期:2018-10-19 19:46阅读:219来源:国知局

本发明涉及通信技术领域,具体涉及一种软件定义传送网中控制器网元管理能力测试系统和一种软件定义传送网中控制器网元管理能力测试方法。



背景技术:

随着通信技术的发展,软件定义网络(Software Defined Network)成为信息通信领域最重要的技术方向。软件定义传送网(Software Defined Transport Network)是在传统的光传送网应用软件定义网络的思路和方法,通过控制功能和传送功能分离,在逻辑上对网络资源进行集中控制,并通过开放的控制接口将抽象后的传送网资源提供给应用层,实现传送网的可编程性、智能化网络控制,构建面向业务应用的灵活、开放、弹性的光传送网络体系架构。

在软件定义传送网架构中,控制器主要功能是通过南向接口控制传送平面的转发行为,并通过北向接口向应用平面开放网络能力。控制器作为整个架构的核心,掌控着全局网络资源,控制着传送平面的转发等,因此控制器的性能对整体网络的性能有直接的影响,而控制器的网元管理能力是衡量控制器性能乃至整体网络性能的重要指标。

但是,现有控制器网元管理能力测试方法实施时,存在以下难点或缺陷:

(1)实验室测试受场地和设备成本限制,真实物理网元数量有限,难以达到控制器管理网元数量的极限值。

(2)软件定义传送网传送平面设备形态众多(如PTN、OTN、IPRAN等),行业相关接口协议标准亦不成熟,不同传送网设备控制器南向接口协议也不同,而控制器的网元管理是通过南向接口协议进行交互,众多的南向接口协议增加了测试繁杂度。

(3)控制器网元管理能力测试通常采用手工测试进行,在网元数量满足需求的前提下,需要多次反复测试才能确定极限值,不仅测试效率较低,而且会受到测试人员主观因素的影响。



技术实现要素:

针对现有技术中存在的缺陷,本发明的目的在于提供一种软件定义传送网中控制器网元管理能力测试系统,能够极大的减少测试设备资源投入,测试效率高。

为达到以上目的,本发明采取的技术方案是,包括:

虚拟网元生成模块,其用于生成与被测控制器进行网元上/下线的协议报文交互的虚拟网元;

检测模块,其用于根据虚拟网元与被测控制器的协议报文交互,获取设定测试项目的测试数据;

管理模块,其用于将测试数据与期望结果进行比对,根据比对结果控制虚拟网元生成模块生成的虚拟网元数量。

在上述技术方案的基础上,所述测试项目包括控制器CPU占用率、控制器内存占用率、控制器管理网元数量、控制器与虚拟网元的协议报文交互时延、控制器与虚拟网元间的通信时延以及自定义添加的测试项目。

在上述技术方案的基础上,

所述虚拟网元生成模块与被测控制器的南向接口相连,所述检测模块与被测控制器的北向接口或管理接口相连;

所述管理模块还用于设置测试环境的全局参数、初始化虚拟网元生成模块和检测模块;

所述测试环境的全局参数包括被测控制器的南向接口的IP地址及协议类型、北向接口的IP地址、管理接口的IP地址;

所述初始化虚拟网元生成模块包括初始化虚拟网元初始生成数、虚拟网元上/下线步进值和网元拓扑连接参数;

所述初始化检测模块包括选择测试项目和预设期望结果。

在上述技术方案的基础上,所述虚拟网元生成模块生成的虚拟网元根据设置的被测控制器的南向接口的协议类型,与被测控制器的南向接口进行网元上/下线的协议报文交互。

在上述技术方案的基础上,所述管理模块具体用于:

将测试数据与期望结果进行比对;

若测试数据符合期望结果,则按照预设步进值控制虚拟网元生成模块不断增加生成的虚拟网元数量,并获取新的虚拟网元数量,继续进行比较,直至测试数据不符合期望结果,则停止比较,记录上一次获取的虚拟网元数量,然后输出测试结果;

若测试数据不符合期望结果,则按照预设步进值控制虚拟网元生成模块不断减少虚拟网元数量,并获取新的虚拟网元数量,继续进行比较,直至测试数据符合期望结果,则停止比较,记录此时的虚拟网元数量,然后输出测试结果。

本发明还提供一种软件定义传送网中控制器网元管理能力测试方法,包括以下步骤:

生成虚拟网元;

虚拟网元与被测控制器进行网元上/下线的协议报文交互;

根据虚拟网元与被测控制器的协议报文交互,获取设定测试项目的测试数据;

将测试数据与期望结果进行比对,根据比对结果控制生成的虚拟网元数量。

在上述技术方案的基础上,所述测试项目包括控制器CPU占用率、控制器内存占用率、控制器管理网元数量、控制器与虚拟网元的协议报文交互时延、控制器与虚拟网元间的通信时延以及自定义添加的测试项目。

在上述技术方案的基础上,所述生成虚拟网元之前,还包括以下步骤:

S101:虚拟网元生成模块与被测控制器的南向接口相连,检测模块与被测控制器的北向接口或管理接口相连,管理模块与检测模块和虚拟网元生成模块相连;

S102:设置测试环境的全局参数,所述测试环境的全局参数包括被测控制器的南向接口的IP地址及协议类型、北向接口的IP地址、管理接口的IP地址;

S103:初始化虚拟网元生成模块:初始化虚拟网元初始生成数、虚拟网元上/下线步进值和网元拓扑连接参数;

S104:初始化检测模块:选定测试项目,预设期望结果。

在上述技术方案的基础上,所述虚拟网元根据设置的被测控制器的南向接口的协议类型,与被测控制器的南向接口进行网元上/下线的协议报文交互。

在上述技术方案的基础上,所述将测试数据与期望结果进行比对,根据比对结果控制生成的虚拟网元数量,具体步骤为:

将测试数据与期望结果进行比对;

若测试数据符合期望结果,则按照预设步进值控制虚拟网元生成模块不断增加生成的虚拟网元数量,并获取新的虚拟网元数量,继续进行比较,直至测试数据不符合期望结果,则停止比较,记录上一次获取的虚拟网元数量,然后输出测试结果;

若测试数据不符合期望结果,则按照预设步进值控制虚拟网元生成模块不断减少虚拟网元数量,并获取新的虚拟网元数量,继续进行比较,直至测试数据符合期望结果,则停止比较,记录此时的虚拟网元数量,然后输出测试结果。

与现有技术相比,本发明的优点在于:采用虚拟网元与控制器进行协议报文交互来达到真实物理网元上线的效果,极大的减少了测试设备资源投入,根据需求动态调整虚拟网元数量,满足控制器管理网元数量极限值的测试需求,且能够动态选择控制器南向接口协议,满足不同接口协议下的测试需求,整个测试过程自动完成,测试效率高。

附图说明

图1为本发明实施例中一种软件定义传送网中控制器网元管理能力测试系统的流程图;

图2为本发明实施例中一种软件定义传送网中控制器网元管理能力测试方法的流程图;

图3为本发明实施例6中测试数据与期望结果进行比对的流程图。

具体实施方式

以下结合附图及实施例对本发明作进一步详细说明。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

实施例1

参见图1所示,本发明实施例提供一种软件定义传送网中控制器网元管理能力测试系统,通过虚拟网元与控制器进行协议报文交互来模拟真实物理网元上下线,并设置评估控制器网元管理能力的各项检测条件,进而对控制器的网元管理能力进行自动测试。本发明实施例的软件定义传送网中控制器网元管理能力测试系统包括虚拟网元生成模块、检测模块和管理模块。虚拟网元生成模块与被测控制器的南向接口相连,检测模块与被测控制器的北向接口或管理接口相连,检测模块和虚拟网元生成模块均与管理模块相连。

虚拟网元生成模块用于生成与被测控制器进行网元上/下线的协议报文交互的虚拟网元。具体的,虚拟网元生成模块生成的虚拟网元以选择的控制器南向接口协议与被测控制器的南向接口进行网元上/下线的协议报文交互。控制器南向接口协议包括OpenFlow、OF-CONFIG、NETCONF、OVSDB、BGP、PCEP和厂家私有协议。OpenFlow协议主要是通过对不同类型消息的处理来实现控制器与网元之间的路由控制。OF-CONFIG(OpenFlow Configuration and Management Protocol)的本质是提供一个开放接口,主要用于控制OpenFlow网元以及远程配置。NETCONF是一个全新的基于XML的网络配置协议。本发明实施例中,先对控制器的南向接口协议进行选择,然后基于选择的南向接口协议,虚拟网元与被测控制器的南向接口进行网元上/下线的协议报文交互。若生成的虚拟网元为多个,则多个虚拟网元均与被测控制器间进行协议报文交互。

对于虚拟网元与被测控制器进行网元上/下线的协议报文交互过程,以选择的控制器南向接口协议为OpenFlow为例进行说明,过程如下:

A:虚拟网元与被测控制器之间通过TCP(Transmission Control Protocol,传输控制协议)三次握手过程建立连接,使用的TCP端口号为6633。

B:TCP连接建立后,虚拟网元和被测控制器间互相发送Hello报文。Hello报文是使用OpenFlow协议的一个对称的数据包,Hello报文中唯一的内容是OpenFlow报文头中的“类型值=0”。

C:当Hello报文在虚拟网元和被测控制器相互交换后,被测控制器与虚拟网元之间就建立的连接。

D:被测控制器向虚拟网元发送Feature Request消息,请求获取虚拟网元参数,该Feature Request消息中OpenFlow数据头“类型值=5”,虚拟网元回复Feature Reply报文消息。

E:在Keep Alive连接保持阶段,虚拟网元和被测控制器互相发送Echo Request和Echo Reply报文,通常情况下,Echo Request使用OpenFlow数据头“类型值=2”,Echo Reply使用OpenFlow数据头“类型值=3”。

检测模块用于根据虚拟网元与被测控制器的协议报文交互,获取设定测试项目的测试数据,当虚拟网元与被测控制器间交互一段时间后,根据虚拟网元数量预先设置延时,检测模块对测试数据结果进行获取。测试项目包括控制器CPU占用率、控制器内存占用率、控制器管理网元数量、控制器与虚拟网元的协议报文交互时延、控制器与虚拟网元间的通信时延以及自定义添加的测试项目,根据需要进行测试时,选择上述测试项目中的一种或多种进行测试。被测控制器CPU占用率和内存占用率可登陆到被测控制器服务器OS中,通过命令行或脚本获取(如Linux系统,可以通过top命令获取);被测控制器管理网元数量可以通过向被测控制器的管理接口或北向接口下发查询命令获取;控制器与虚拟网元的协议报文交互时延可以调用网络抓包分析工具(如Wireshark)在被测控制器南向接口与虚拟网元连接处抓包,通过特定报文交互的时间戳计算;控制器与虚拟网元之间的通信时延可通过ping命令获得。

管理模块用于将测试数据与期望结果进行比对,根据比对结果控制虚拟网元生成模块生成的虚拟网元数量,即增加或减少虚拟网元数量。

本发明实施例的软件定义传送网中控制器网元管理能力测试系统,采用虚拟网元与控制器进行协议报文交互来达到真实物理网元上线的效果,极大的减少了测试设备资源投入,根据需求动态调整虚拟网元数量,满足控制器管理网元数量极限值的测试需求,且能够动态选择控制器南向接口协议,满足不同接口协议下的测试需求,整个测试过程自动完成,测试效率高。

实施例2

在实施例1的基础上,虚拟网元生成模块与被测控制器的南向接口相连,所述检测模块与被测控制器的北向接口或管理接口相连。

测试环境的全局参数包括被测控制器的南向接口的IP地址及协议类型、北向接口的IP地址、管理接口的IP地址,即测试环境的全局参数设置包括虚拟网元生成模块和检测模块与被测控制器连接接口的IP地址设置,以及控制器南向接口协议类型的选择,虚拟网元生成模块与被测控制器的南向接口相连,检测模块与被测控制器的北向接口或管理接口相连;

初始化虚拟网元生成模块包括初始化虚拟网元初始生成数、虚拟网元上/下线步进值和网元拓扑连接参数,即虚拟网元生成模块的初始化设置包括虚拟网元初始生成数、虚拟网元上/下线步进值和网元拓扑连接参数;

初始化检测模块包括选择测试项目和预设期望结果。在将测试数据与期望结果进行比对时,根据选择的测试项目,检测被测控制器所在服务器的CPU和内存占用情况是否达到预设阈值门限,控制器实际发现管理的网元数量与本次模拟的虚拟网元数量是否一致,被测控制器与虚拟网元的协议报文交互的时延或通信时延是否超过预设阈值门限,以及其他用户自定义的检测条件是否达标,即根据测试数据与期望结果的比对判断来评估被测控制器的网元管理能力。

本发明实施例的软件定义传送网中控制器网元管理能力测试系统,能够在测试时,能够动态对控制器南向接口协议、测试项目等进行选择设置,灵活度高。

实施例3

在实施例2的基础上,管理模块具体用于:

将测试数据与期望结果进行比对;

若测试数据符合期望结果,则按照预设步进值控制虚拟网元生成模块不断增加生成的虚拟网元数量,并获取新的虚拟网元数量,继续进行比较,直至测试数据不符合期望结果,则停止比较,记录上一次获取的虚拟网元数量,然后输出测试结果;

若测试数据不符合期望结果,则按照预设步进值控制虚拟网元生成模块不断减少虚拟网元数量,并获取新的虚拟网元数量,继续进行比较,直至测试数据符合期望结果,则停止比较,记录此时的虚拟网元数量,然后输出测试结果。

即初始化虚拟网元初始生成数,预设初始模拟的虚拟网元数量,然后将测得的测试数据和期望结果进行比对,以此来决定虚拟网元的增减,最终测得一个满足期望结果的最大虚拟网元数值,即找出控制器能够正常有效管理的最大网元数。

进一步的,在其它测试项目的测试中,对于测试数据是否符合期望结果的判断,如选择的测试项目为控制器CPU占用率,则被测控制器所在服务器的CPU占用率小于预设阈值时,测试数据符合期望结果;如选择的测试项目为控制器内存占用率,则被测控制器所在服务器的内存占用率小于预设阈值时,测试数据符合期望结果;如选择控制器管理的网元数量,则被测控制器上报的网元数量与虚拟网元生成模块模拟的虚拟网元数量一致时,测试数据符合期望结果;如选择的测试项目为控制器与虚拟网元的协议报文交互时延,则被控制器与虚拟网元的协议报文交互时延小于预设阈值时,测试数据符合期望结果;如选择的测试项目为控制器与虚拟网元间的通信时延,则被测控制器与虚拟网元间的通信时延小于预设阈值时,测试数据符合期望结果。

本发明实施例的软件定义传送网中控制器网元管理能力测试系统,通过将测试数据与期望结果进行比对,然后以按照预设步进值来动态调整虚拟网元的生成数量,最终获得被测控制器网元管理能力的极限值,测试结果更加精准。

实施例4

参见图2所示,本发明实施例提供一种使用实施例1中所述系统的软件定义传送网中控制器网元管理能力测试方法,包括以下步骤:

S1:生成虚拟网元;

S2:虚拟网元与被测控制器进行网元上/下线的协议报文交互。虚拟网元以选定的控制器南向接口协议与被测控制器的南向接口进行网元上/下线的协议报文交互。

S3:根据虚拟网元与被测控制器的协议报文交互,获取设定测试项目的测试数据。测试项目包括控制器CPU占用率、控制器内存占用率、控制器管理网元数量、控制器与虚拟网元的协议报文交互时延、控制器与虚拟网元间的通信时延以及自定义添加的测试项目。

S4:将测试数据与期望结果进行比对,根据比对结果控制生成的虚拟网元数量。

本发明实施例的软件定义传送网中控制器网元管理能力测试方法,采用虚拟网元与控制器进行协议报文交互来达到真实物理网元上线的效果,极大的减少了测试设备资源投入,根据需求动态调整虚拟网元数量,满足控制器管理网元数量极限值的测试需求,且能够动态选择控制器南向接口协议,满足不同接口协议下的测试需求,整个测试过程自动完成,测试效率高。

实施例5

在实施例4的基础上,生成虚拟网元之前,还包括以下步骤:

S101:虚拟网元生成模块与被测控制器的南向接口相连,检测模块与被测控制器的北向接口或管理接口相连,管理模块与检测模块和虚拟网元生成模块相连;

S102:设置测试环境的全局参数,所述测试环境的全局参数包括被测控制器的南向接口的IP地址及协议类型、北向接口的IP地址、管理接口的IP地址;

S103:初始化虚拟网元生成模块:初始化虚拟网元初始生成数、虚拟网元上/下线步进值和网元拓扑连接参数;

S104:初始化检测模块:选定测试项目,预设期望结果。

在测试时,能够动态对控制器南向接口协议、测试项目等进行选择设置,根据测试需要进行测试时的准备设置,灵活度高。

实施例6

在实施例4的基础上,将测试数据与期望结果进行比对,根据比对结果增加或减少生成的虚拟网元数量,具体步骤为:

将测试数据与期望结果进行比对;

若测试数据符合期望结果,则按照预设步进值控制虚拟网元生成模块不断增加生成的虚拟网元数量,并获取新的虚拟网元数量,继续进行比较,直至测试数据不符合期望结果,则停止比较,记录上一次获取的虚拟网元数量,然后输出测试结果;

若测试数据不符合期望结果,则按照预设步进值控制虚拟网元生成模块不断减少虚拟网元数量,并获取新的虚拟网元数量,继续进行比较,直至测试数据符合期望结果,则停止比较,记录此时的虚拟网元数量,然后输出测试结果。即对控制器管理网元的能力进行测试时,期望结果表示控制器能正常进行网元管理,测试数据反映被测控制器的实时网元管理能力情况,参见图3所示:

S401:将测试数据与期望结果进行比对,判断测试数据是否符合期望结果,若是,转到S402;若否,则转到S405;测试数据符合期望结果表示当前被测控制器能正常进行当前所有虚拟网元的管理,测试数据不符合期望结果表示当前被测控制器不能正常进行当前所有虚拟网元的管理。

S402:按照预设步进值增加虚拟网元数量,然后再次获取测试数据,转到S403:

S403:判断测试数据是否符合期望结果,若是,转到S402;若否,则转到S404;

S404:记录上一次测试数据符合期望结果时的虚拟网元数量,然后转到S408;

S405:按照预设步进值减少虚拟网元数量,然后再次获取测试数据,转到S406;

S406:判断测试数据是否符合期望结果,若否,转到S405;若是,转到S407;

S407:记录当前虚拟网元数量,然后转到S408;

S408:输出测试结果。测试结果文件可以为doc格式、xls格式、txt格式、pdf格式、html格式等文件格式。

本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1