CN108737163B - 一种基于OpenFlow协议的SDN控制器应用性能分析方法 - Google Patents
一种基于OpenFlow协议的SDN控制器应用性能分析方法 Download PDFInfo
- Publication number
- CN108737163B CN108737163B CN201810375977.XA CN201810375977A CN108737163B CN 108737163 B CN108737163 B CN 108737163B CN 201810375977 A CN201810375977 A CN 201810375977A CN 108737163 B CN108737163 B CN 108737163B
- Authority
- CN
- China
- Prior art keywords
- controller
- application
- developer
- data
- network
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
Abstract
一种基于OpenFlow协议的SDN控制器应用性能分析方法属于计算机应用技术领域,该SDN控制器应用性能分析方法逻辑功能上由控制器及北向应用管理模块,南向底层设备管理模块,以及性能数据提取分析模块三部分组成。本发明解决了现有的控制器应用测试工具Cbench无法对应用进行实质有针对性的问题,允许开发者在测得延迟和吞吐量数据之外,进一步得到集群初始化时间、分布式集群中主控制器更换的时间、Packet‑in报文的处理时延、主动模式的流建立速度、被动模式的流建立速度、端到端的流建立时间等数据,使开发者可以得到对所开发应用更有针对性的分析数据。
Description
技术领域
本发明涉及一种基于OpenFlow协议的SDN控制器应用性能分析方法,属于计算机应用技术领域。
背景技术
随着软件定义网络(SDN)在网络世界中的新范式的转变,控制平面与数据平面的分离使得后者显着简化,并在控制平面把所有复杂处理工作负载解决。作为控制平面的核心元素,SDN控制器对SDN网络的整体性能起着至关重要的作用。SDN网络部署以来,网络用户对SDN控制器的性能越来越重视。其中控制层面对各种事务的处理方法由相对应的应用定义,这是SDN最大的特点,同时也是最难以统一并实现商业应用的部分。其中性能是业界关注的焦点,因为它是实现SDN规范化承诺的重要影响因素。
由于SDN概念提出的时间较短,目前仍缺乏统一的标准,特别是针对SDN控制层中的控制器研发,许多不同团体开发了多种支持OpenFlow协议的控制器,而不同种类的控制器所提供的服务和功能存在不一致性。同时南向和北向的接口协议纷繁复杂,实现统一短期内几乎不可能实现,因此在协调多个SDN控制器应用的行为方面,也需要比较详细的测评数据。
然而目前针对SDN控制器中应用部分的测试工具只有Cbench一款,而这款工具存在无法扩展,功能单一,并且无法对应用实际需要测试的指标进行针对性的测试与分析,无法为应用开发者提供全面的性能测试数据。同时个人ONOS分布式控制器应用开发者大部分很难得到物理机实验环境,难以对开发的应用进行测试。综上所述,对开发者开发的SDN应用进行性能测评是一个很大的挑战。
发明内容
针对现有技术存在的问题,本发明提供一种基于OpenFlow协议的SDN控制器应用性能分析方法,能够解决现有的控制器应用测试工具Cbench无法对应用进行实质有针对性的问题,允许开发者在测得延迟和吞吐量数据之外,进一步得到集群初始化时间、分布式集群中主控制器更换的时间、Packet-in报文的处理时延、主动模式的流建立速度、被动模式的流建立速度、端到端的流建立时间等数据,使开发者可以得到对所开发应用更有针对性的分析数据。
为了达到上述目的,本发明采取的技术方案如下:
一种基于OpenFlow协议的SDN控制器应用性能分析方法,该SDN控制器应用性能分析方法逻辑功能上由控制器及北向应用管理模块,南向底层设备管理模块,以及性能数据提取分析模块三部分组成。
所述的控制器及北向应用管理模块,是连接待测试应用的桥梁,保证整个控制器软件架构的稳定性以及在支持新应用方面的灵活性。控制器及北向应用管理模块负责对待测试的应用进行部署及启动,并允许开发者随时对测试的应用进行修改或二次开发。以及为测试环境提供可视化管理,使开发者随时掌握整个测试系统的拓扑情况及链路信息等。
所述的南向底层设备管理模块,是保证实验环境的灵活性与稳定性的基础,很多应用开发者为个人开发,很难获得足够的物理机资源,南向底层设备管理可以为开发者提供自由灵活的底层拓扑环境,负责建立支持Openflow协议的南向虚拟OVS和主机等设备,并允许开发者通过可视化界面自定义网络的拓扑结构。以及在控制器建立后,为控制器与南向设备建立稳定连接,并支持多控制器分布式对网络进行管理。
所述的性能数据提取分析模块,是应用性能分析方法的核心部分,负责在控制器启动并设置好网络拓扑状态后,对网络的网卡进行监听,掌握网络中所有数据传递情况,并对网络中的数据变化和传递进行记录,向开发者提供数据的发送端口、路径、数据包大小和发送时间等信息,以及对开发者需要的数据包信息进行计算,获得相应的性能指标数据,为开发者进一步改进应用提供参考。
SDN控制器应用性能分析方法具体步骤如下:
步骤一,加载待测试应用的信息:当开发者登录系统时,向系统提供所开发的应用程序信息,由控制器及北向接口管理模块对其中的控制器信息进行匹配,如果匹配到对应的控制器,则进行步骤二。
步骤二,部署待测试应用程序对应的控制器:将匹配到的控制器信息传递到镜像库中,从库中找到对应的控制器镜像并启动,并开启独立控制台和可视化界面。
步骤三,部署待测试应用:北向接口模块在已启动的控制器中安装待测试应用,允许开发者对应用进行启动和停止,并提供IDE,允许在对应用源代码随时进行修改。
步骤四,确认开发者对测试环境的需求:允许开发者通过控制台发送构建底层网络拓扑命令,也可以通过可视化界面对底层网络拓扑进行绘制,两者的功能相同。
步骤五,处理开发者对网络拓扑的需求:将开发者对测试环境的需求传递给南向底层设备管理模块,南向底层设备管理模块根据拓扑信息搭建底层网络,并与控制器连接。同时提供可视化界面,对网络结构进行监控。
步骤六,启动性能数据提取分析模块对测试网络中的数据包进行监控和抓取。此模块对网络中所有的端口进行监控,将网络中的数据记录并可视化展示给开发者。
步骤七,对记录下的数据包数据进行分析,性能数据提取分析模块为开发者提供部分性能数据计算选项,除此之外,开发者可以根据自己需要对其他的性能数据通过步骤六中的数据记录进行扩展分析。
与现有技术相比,本发明的有益效果在于:
(1)支持从ONOS控制器部署到数据转发策略等一系列应用的性能数据分析。相比于Cbench测试工具只能对控制器整体进行吞吐量及延迟两项指标的测试,允许应用开发者对控制器启动开始的每个环节进行监控,从而分析出应用对整体系统每个环节的影响。
(2)支持对延迟及吞吐量指标的进一步细化分析。现有的Cbench测试工具通过packet-in数据包的发送和收到的回复数据包取得延迟及吞吐量的数据,在具体到应用中例如数据转发算法应用中,无法进一步分析算法用时以及路径发送时间,对应用的实际测试分析没有实际意义。本方法允许开发者自定义发送数据的类型及大小,并获取针对应用的性能数据。
附图说明
图1是本发明的整体架构图。
具体实施方式
以下结合附图对本发明做进一步说明。
如图1,一种基于OpenFlow协议的SDN控制器应用性能分析方法,从整体架构来看,应用程序,即开发者开发的SDN控制器应用,由控制器及北向应用管理,与SDN控制器北向接口相连,负责SDN控制层面的各种决策。在SDN中,数据层面和控制层面一分为二,集群中的所有决策均是由控制层面,即应用程序作出,因此应用程序中存在着各式各样不同功能的应用。控制器与南向底层设备相连,为交换机提供数据转发决策,转发规则记录在交换机流表当中。作为控制器应用性能分析方法的核心部分,性能数据提取分析部分运行于控制层与物理层之间,获得的数据包信息来源于控制层与物理层的通信行为,记录在待测应用的影响下,数据包的信息,以便开发者对应用性能进行分析。依据模块的方式进行划分,一种基于OpenFlow协议的SDN控制器应用性能分析方法由由控制器及北向应用管理模块,南向底层设备管理模块,以及性能数据提取分析模块三部分组成。
所述的控制器及北向应用管理模块,是连接待测试应用的桥梁,保证了整个控制器软件架构的稳定性以及在支持新应用方面的灵活性。控制器及北向应用管理模块负责对待测试的应用进行部署及启动,并允许开发者随时对测试的应用进行修改或二次开发。以及为测试环境提供可视化管理,使开发者随时掌握整个测试系统的拓扑情况及链路信息等。
所述的南向底层设备管理是保证实验环境的灵活性与稳定性的基础,很多应用开发者为个人开发,很难获得足够的物理机资源,南向底层设备管理可以为开发者提供自由灵活的底层拓扑环境,负责建立支持Openflow协议的南向虚拟OVS和主机等设备,并允许开发者通过可视化界面自定义网络的拓扑结构。以及在控制器建立后,为控制器与南向设备建立稳定连接,并支持多控制器分布式对网络进行管理。
所述的性能数据提取分析部分是应用性能分析方法的核心部分,负责在控制器启动并设置好网络拓扑状态后,对网络的网卡进行监听,掌握网络中所有数据传递情况,并对网络中的数据变化和传递进行记录,向开发者提供数据的发送端口、路径、数据包大小和发送时间等信息,以及对开发者需要的数据包信息进行计算,获得相应的性能指标数据,为开发者进一步改进应用提供参考。
本方法需要对数据包信息进行分析,获得待测试应用程序对网络性能影响的具体数据。由于本方法可以对从控制器模块运行开始的一切数据包数据进行获取,因此理论上可以通过对数据包进行分析处理后,得到运行在SDN控制器上的应用程序的所有性能数据。以下为部分数据的分析方法:统计ONOS集群发起的第一条Hello报文和最后一条role_request报文之间的时间差,可以获得集群初始化时间;统计关闭Master控制器之前,最后一个packet_out、的到达时间T1和再次收到新Master控制器的第一个packet_out、到达时间T2,计算时间差T2–T1,可以获得分布式集群中主控制器更换的时间;统计仿真交换机上传第一个packet_in报文的时间T1,对应ONOS分布式控制器实例响应Packet-Out报文的时间T2,计算报文响应时延T2–T1,以及N条报文的算术平均值,可以获得Packet-in报文的处理时延;统计交换机收到的第一条添加流表项的Flow_Mod报文(ADD动作)时间T1和最后一条添加流表项的Flow_Mod报文T2,计算10000/(T2–T1)为下发流表的速度,可以获得主动模式的流建立速度;统计响应第N/2个Packet_in请求的Flow_Mod报文时间T1,最后一个Flow_Mod报文时间T2,计算N/2/(T2–T1)为被动模式的流建立速度,可以获得被动模式的流建立速度;记录控制器下发首个flow_mod报文的时间T1和最后一个flow_mod报文的时间T2,计算端到端的流建立时间T=T2-T1,可以获得端到端数据通道建立时间。
以上所述实施例仅表达了本发明的实施方式,但并不能因此而理解为对本发明专利的范围的限制,应当指出,对于本领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些均属于本发明的保护范围。
Claims (1)
1.一种基于OpenFlow协议的SDN控制器应用性能分析方法,其特征在于,所述的SDN控制器应用性能分析方法逻辑功能上由控制器及北向应用管理模块,南向底层设备管理模块,以及性能数据提取分析模块三部分组成;
所述的控制器及北向应用管理模块是连接待测试应用的桥梁,对待测试的应用进行部署及启动,并允许开发者随时对测试的应用进行修改或二次开发;以及为测试环境提供可视化管理,使开发者随时掌握整个测试系统的拓扑情况及链路信息;
所述的南向底层设备管理模块是保证实验环境的灵活性与稳定性的基础,建立支持Openflow协议的南向虚拟OVS和主机设备,并允许开发者通过可视化界面自定义网络的拓扑结构;以及在控制器建立后,为控制器与南向设备建立稳定连接,并支持多控制器分布式对网络进行管理;
所述的性能数据提取分析模块是应用性能分析方法的核心部分,负责在控制器启动并设置好网络拓扑状态后,对网络的网卡进行监听,并对网络中的数据变化和传递进行记录,向开发者提供数据的发送端口、路径、数据包大小和发送时间信息,以及对开发者需要的数据包信息进行计算,获得相应的性能指标数据;
SDN控制器应用性能分析方法具体步骤如下:
步骤一,加载待测试应用的信息:当开发者登录系统时,向系统提供所开发的应用程序信息,由控制器及北向接口管理模块对其中的控制器信息进行匹配,如果匹配到对应的控制器,则进行步骤二;
步骤二,部署待测试应用程序对应的控制器:将匹配到的控制器信息传递到镜像库中,从库中找到对应的控制器镜像并启动,并开启独立控制台和可视化界面;
步骤三,部署待测试应用:北向接口模块在已启动的控制器中安装待测试应用,允许开发者对应用进行启动和停止,并提供IDE,允许对应用源代码随时进行修改;
步骤四,确认开发者对测试环境的需求:允许开发者通过控制台发送构建底层网络拓扑命令,也可以通过可视化界面对底层网络拓扑进行绘制,两者的功能相同;
步骤五,处理开发者对网络拓扑的需求:将开发者对测试环境的需求传递给南向底层设备管理模块,南向底层设备管理模块根据拓扑信息搭建底层网络,并与控制器连接;同时提供可视化界面,对网络结构进行监控;
步骤六,启动性能数据提取分析模块对测试网络中的数据包进行监控和抓取;此模块对网络中所有的端口进行监控,将网络中的数据记录并可视化展示给开发者;
步骤七,对记录下的数据包数据进行分析,性能数据提取分析模块为开发者提供部分性能数据计算选项,另外,开发者可以根据自己需要对其他的性能数据通过步骤六中的数据记录进行扩展分析。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810375977.XA CN108737163B (zh) | 2018-04-18 | 2018-04-18 | 一种基于OpenFlow协议的SDN控制器应用性能分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810375977.XA CN108737163B (zh) | 2018-04-18 | 2018-04-18 | 一种基于OpenFlow协议的SDN控制器应用性能分析方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108737163A CN108737163A (zh) | 2018-11-02 |
CN108737163B true CN108737163B (zh) | 2021-03-26 |
Family
ID=63939232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810375977.XA Active CN108737163B (zh) | 2018-04-18 | 2018-04-18 | 一种基于OpenFlow协议的SDN控制器应用性能分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108737163B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110445604B (zh) * | 2019-07-01 | 2021-05-04 | 北京邮电大学 | 基于sdn的qkd网络及其业务请求的发送方法 |
CN112532405A (zh) * | 2019-09-17 | 2021-03-19 | 中兴通讯股份有限公司 | 软件定义网络sdn网络构建方法及装置 |
CN111478790B (zh) * | 2020-03-02 | 2022-07-01 | 烽火通信科技股份有限公司 | Sdn网络架构中支持南向协议虚拟化验证的方法及系统 |
CN111740858B (zh) * | 2020-06-08 | 2023-05-16 | 中国电信集团工会上海市委员会 | 一种软件定义网络控制器的运行监控系统和方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104009871A (zh) * | 2014-06-06 | 2014-08-27 | 中国科学院声学研究所 | Sdn控制器实现方法及sdn控制器 |
US9450817B1 (en) * | 2013-03-15 | 2016-09-20 | Juniper Networks, Inc. | Software defined network controller |
CN106293820A (zh) * | 2016-08-02 | 2017-01-04 | 山东大学 | 开发测试运维一体化系统、部署、全量以及增量更新方法 |
CN106656846A (zh) * | 2017-01-17 | 2017-05-10 | 大连理工大学 | 一种sdn体系架构中协调层的构建方法 |
-
2018
- 2018-04-18 CN CN201810375977.XA patent/CN108737163B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9450817B1 (en) * | 2013-03-15 | 2016-09-20 | Juniper Networks, Inc. | Software defined network controller |
CN104009871A (zh) * | 2014-06-06 | 2014-08-27 | 中国科学院声学研究所 | Sdn控制器实现方法及sdn控制器 |
CN106293820A (zh) * | 2016-08-02 | 2017-01-04 | 山东大学 | 开发测试运维一体化系统、部署、全量以及增量更新方法 |
CN106656846A (zh) * | 2017-01-17 | 2017-05-10 | 大连理工大学 | 一种sdn体系架构中协调层的构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108737163A (zh) | 2018-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10747569B2 (en) | Systems and methods of discovering and traversing coexisting topologies | |
CN108737163B (zh) | 一种基于OpenFlow协议的SDN控制器应用性能分析方法 | |
US11533231B2 (en) | Configuration and management of scalable global private networks | |
CN109388530B (zh) | 一种面向刀片式服务器的自动化测试平台以及测试方法 | |
US20140215077A1 (en) | Methods and systems for detecting, locating and remediating a congested resource or flow in a virtual infrastructure | |
EP3886367A1 (en) | Automating 5g slices using real-time analytics | |
US11032126B2 (en) | Diagnostic traffic generation for automatic testing and troubleshooting | |
US20190286509A1 (en) | Hierarchical fault determination in an application performance management system | |
US11729077B2 (en) | Configuration and management of scalable global private networks | |
US20220150154A1 (en) | Automatically managing a mesh network based on dynamically self-configuring node devices | |
US11336528B2 (en) | Configuration and management of scalable global private networks | |
JP2022033685A (ja) | 堅牢性を確定するための方法、装置、電子機器、コンピュータ可読記憶媒体、及びコンピュータプログラム | |
US20230214229A1 (en) | Multi-tenant java agent instrumentation system | |
US10999169B1 (en) | Configuration and management of scalable global private networks | |
WO2023276039A1 (ja) | サーバ管理装置、サーバ管理方法およびプログラム | |
US11223534B2 (en) | Systems and methods for hub and spoke cross topology traversal | |
Talhar et al. | An adaptive approach for controller placement problem in software defined networks | |
US11743108B1 (en) | Dynamic customization of network controller data path based on controller internal state awareness | |
US20230164022A1 (en) | Cloud Network Failure Auto-Correlator | |
CN111049699B (zh) | 一种sdn控制器的可靠性测试方法和装置 | |
US20240095156A1 (en) | Methods, systems, and computer readable media for using an impairment configuration manager | |
US11683228B2 (en) | Automatically managing a role of a node device in a mesh network | |
US20240069099A1 (en) | Methods, systems, and computer readable media for using a testbed transpiler | |
CN112398707B (zh) | 分布式自动化测试管理方法、装置、设备及存储介质 | |
US20230401072A1 (en) | Configuration validation in a disaggregated network os environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |