基于DPDK平台的SDN控制器的研究与实现
发布时间:2017-07-08 16:00
本文关键词:基于DPDK平台的SDN控制器的研究与实现
更多相关文章: SDN 控制器 Intel DPDK 用户空间 TCP/IP协议栈
【摘要】:SDN分离了网络的控制平面和数据平面,它允许通过抽象底层物理网络的复杂性对网络状态进行集中管理。随着SDN大规模的部署和应用,控制平面扮演着越来越重要的角色,在控制平面上进行开发的网络服务应用不但给网络提供了丰富的服务,更是对大规模网络进行监督和管理并使其健康运行的重要保障。处于SDN架构控制平面的控制器是整个网络的重要组成部分,是整个网络的核心,控制器的性能将影响整个网络的性能。而当前已经成熟的众多版本的控制器普遍存在性能较低问题,满足不了大规模网络的需求,因此控制器性能提升依然是急需解决的问题。本文的主要工作是分析和研究了主流开源控制器的性能,并且基于Intel DPDK设计了用户空间协议栈,开发完成了基于DPDK的KNI组件的协议栈支持,完成了基于该平台的SDN控制器。首先本文阐述了SDN控制器的研究现状及其意义,并且在虚拟环境下搭建了主流开源控制器,然后对它们进行延迟和吞吐量性能方面的测试,接着对测试结果进行了研究分析,得出这种传统的纯粹基于内核的TCP/IP协议栈的控制器已经凸显其吞吐量方面的不足,不能满足SDN大规划化的需求。其次本文设计了一种基于Intel公司数据平面开发包工具的SDN控制器方案,并给出了基于DPDK的用户空间协议栈的设计模型,详细分析了这一架构的性能方面优势,并着重对该协议栈的TCP协议模型进行了设计。本文最终开发实现了基于DPDK的KNI组件来完成TCP数据传输,这是在本文设计的用户空间协议栈模型上借助内核协议栈来完成TCP协议的支持。接着本文着重对控制器的整体框架及功能进行了设计和实现,并对控制器进行了二层转发模块应用的开发,这使得控制器具有根据主机物理地址信息下发正确流表的能力。在测试中,本文对协议栈及控制器二层转发模块进行了功能性的测试,最后对实现的控制器进行了延迟和吞吐量方面的性能测试,并将之与主流开源控制器进行比较分析,验证了基于DPDK平台实现的控制器的高效性。
【关键词】:SDN 控制器 Intel DPDK 用户空间 TCP/IP协议栈
【学位授予单位】:电子科技大学
【学位级别】:硕士
【学位授予年份】:2015
【分类号】:TP332.3
【目录】:
- 摘要5-6
- ABSTRACT6-12
- 缩略词表12-13
- 第一章 绪论13-17
- 1.1 课题背景及意义13-14
- 1.2 国内外研究现状14-16
- 1.3 课题主要研究内容和论文结构16-17
- 第二章 相关技术介绍17-33
- 2.1 SDN技术17-24
- 2.1.1 SDN网络架构介绍17-18
- 2.1.2 SDN架构与传统网络对比18-20
- 2.1.3 Openflow协议20-24
- 2.2 高速网络数据技术24-30
- 2.2.1 Linux网络数据技术24-28
- 2.2.2 DPDK技术28-30
- 2.3 TCP/IP协议栈30-32
- 2.3.1 TCP/IP简介30
- 2.3.2 TCP/IP模型30-32
- 2.4 Mininet32
- 2.5 本章小结32-33
- 第三章 控制器研究及协议栈设计33-48
- 3.1 SDN架构下设备特点研究33-35
- 3.1.1 SDN架构下基础网络设备特点33-34
- 3.1.2 控制器特点研究34-35
- 3.2 开源控制器及其性能研究35-44
- 3.2.1 基于内核协议栈的控制器研究及性能测试工具原理35-39
- 3.2.2 开源控制器性能研究39-44
- 3.3 用户空间协议栈设计44-47
- 3.3.1 TCP协议格式44-45
- 3.3.2 基于DPDK的用户空协议栈总体设计45-47
- 3.4 本章小结47-48
- 第四章 协议栈模块及控制器二层转发应用实现48-62
- 4.1 基于KNI的协议栈模块实现48-53
- 4.1.1 内核网卡接.应用与内核协议栈关系48-49
- 4.1.2 主要数据结构49-50
- 4.1.3 内核网卡接.应用实现50-53
- 4.2 控制器总体架构53-56
- 4.2.1 控制器层次架构53-55
- 4.2.2 控制器功能框架55-56
- 4.3 控制器二层转发模块实现56-61
- 4.3.1 二层转发模块下发流表项56-57
- 4.3.2 二层转发模块重要数据结构57-59
- 4.3.3 二层转发功能实现59-61
- 4.4 本章小结61-62
- 第五章 系统测试与性能分析62-74
- 5.1 测试环境62
- 5.1.1 测试硬件配置62
- 5.2 协议栈测试62-66
- 5.2.1 测试环境62-63
- 5.2.2 测试步骤63-64
- 5.2.3 测试结果64-66
- 5.3 二层转发模块测试66-70
- 5.3.1 测试环境66
- 5.3.2 测试步骤66-67
- 5.3.3 测试结果67-70
- 5.4 控制器性能测试及对比分析70-73
- 5.4.1 测试环境70
- 5.4.2 测试步骤70-71
- 5.4.3 测试结果分析71-73
- 5.5 本章小节73-74
- 第六章 结束语74-76
- 6.1 本文总结74
- 6.2 工作展望74-76
- 致谢76-77
- 参考文献77-79
- 研究生期间的研究成果79-80
【参考文献】
中国硕士学位论文全文数据库 前1条
1 吴宇文;基于OpenFlow的网络负载均衡算法的研究与设计[D];华东师范大学;2014年
,本文编号:535225
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/535225.html