学位论文 > 优秀研究生学位论文题录展示

面向多核网络处理器软件框架的研究与实现

作 者: 蒋汉平
导 师: 李腊元
学 校: 武汉理工大学
专 业: 计算机应用技术
关键词: 多核网络处理器 软件框架 控制平面 数据平面 快速路径 慢速路径
分类号: TP311.52
类 型: 博士论文
年 份: 2008年
下 载: 687次
引 用: 13次
阅 读: 论文下载
 

内容摘要


多核网络处理器是指在单个封装内集成多个执行核,每个执行核是独立的处理器,具有自己的体系结构资源。它兼有高速处理和灵活编程两种能力,能很好地适应高速网络和业务演化的需要。多核网络处理器可以高速处理控制/数据平面、处理应用感知内容、检测深度包、模式匹配和加密加速,被广泛的应用于各种网络设备,包括路由器、交换机、应用认知网关、无线局域网、3G接入和聚合设备以及网络存储设备等。在这些环境中,网络进化为一个承载数据、语音和视频内容的多元混合体,不仅要具备应用传输所需的线速处理高层数据的能力,还要进行加密、认证、入侵防护和防病毒等多层安全操作以及多功能的整合。因此,面向多核网络处理器的软件框架的高性能和通用性成为多核网络处理器的核心问题。多核网络处理器软件开发的困难主要来自于其微并行结构之复杂性和网络多平面处理环境之特殊性,突出表现为:缺乏高层编程模型和开发工具,缺乏网络通信处理算法组件库,缺乏适应多平面处理环境的OS支持。因此,基于多核网络处理器的软件框架的设计与实现都变得极为复杂。近年来,虽然国内外学者做了大量的研究工作,但基于多核网络处理器架构,提供高性能、面向高层应用的研究尚处于初期阶段。本文在总结前人研究工作的基础上,深入研究并设计实现了多核网络处理器的多平面分层软件框架、内核网络协议栈模块框架、管理平面框架等关键技术;分析和实现了IP网络中若干关键安全应用的设计,并进行了充分的测试以验证其达到了高性能、通用性的设计目标;提出了一种从硬件抽象层到应用管理的完整软件框架。本文就以下几个方面进行了创新性的研究工作:(1)提出并设计了可扩展的多平面软件框架。多平面框架面向多核网络处理器,实现了三平面的融合,即数据平面、控制平面共同完成复杂高层网络应用功能的实现过程;在管理平面内,通过统一管理系统,针对多核网络处理器主要的应用环境进行多业务的管理融合。(2)研究并实现了面向数据平面和控制平面的接口设汁框架。最新的Linux内核并没有对快速路径和慢速路径进行明确的区分,本文明确提出了两种路径的划分,通过一系列的接口设计来实现多核网络处理器性能发挥和内核功能实现之间的平衡,屏蔽底层硬件细节,提高网络应用可复用能力与跨平台可移植能力。(3)研究并设计了算法组件库。在多核网络处理器的快速路径中应用基于均匀服务队列的分组调度算法,使决策时间复杂性、公平性、调度时延特性均与数据流个数无关,具有良好的可扩展性;应用遗传式自动分配算法,在网络处理器上建立流水编程任务分配模型。(4)设计了内核虚拟网络块框架,在管理平面实现了配置的模块化。将面向对象的设计方法引入内核设计中,采用“低层处理”的策略,将所有的网络操作处理模块化,尽可能在最低层把非法的数据包屏蔽掉,在最低层对内存进行释放,使整个核心数据处理流程全部工作在内核一级,把相对耗费时间的匹配过程交给了用户进程去处理。同时,在管理平面内采用面向对象的模块化设计方法,利用事件机制,对不同的高层应用提供配置、管理功能。在多核网络处理器软件框架研究和设计的基础上,本文对多种IP安全技术进行了优化实现:对snort进行了并行多线程的重新设计;对NAT/PT进行了快速路径的优化设计;并对netflow进行了数据平面虚拟网络模块框架的实现;还对IPSec在数据平面利用API隐藏硬件特定细节,提供了统一接口。通过完善的测试方案,验证了软件框架设计方案的性能和适用性。

全文目录


摘要  5-7
Abstract  7-14
第1章 绪论  14-32
  1.1 多核网络处理器概念  14
  1.2 多核网络处理器的历史及发展趋势  14-18
    1.2.1 多核网络处理器的历史  14-15
    1.2.2 多核网络处理器的发展趋势  15-18
  1.3 多核网络处理器体系结构  18-21
  1.4 多核网络处理器体系结构特点  21-25
    1.4.1 并行  21-22
    1.4.2 分层存储结构  22-23
    1.4.3 协处理器  23-24
    1.4.4 PE间互联  24
    1.4.5 外部接口  24-25
  1.5 多核网络处理器软件框架定义  25-29
    1.5.1 多核网络处理器与软件框架的设计  25-26
    1.5.2 多核网络处理器的应用需求  26-27
    1.5.3 多核结构对软件框架的影响  27-29
  1.6 主要工作及创新  29-30
  1.7 论文结构  30-32
第2章 多核NP软件模式和系统框架设计  32-41
  2.1 多核NP软件框架的问题分析  32-33
  2.2 多核NP软件框架的需求分析和设计目标  33-34
  2.3 多核NP软件框架的结构和功能  34-40
    2.3.1 多核NP开发模式应考虑的问题  34-35
    2.3.2 多核NP开发模式的引入  35-36
    2.3.3 多核NP软件框架的结构  36-40
  2.4 小结  40-41
第3章 NP适应的网络处理算法的相关研究  41-75
  3.1 NP适应网络处理算法分类  41-43
  3.2 NP分组调度策略与实现机制  43-56
    3.2.1 队列调度算法的性能评价标准  45-47
    3.2.2 现有队列调度算法的性能比较  47-50
    3.2.3 DDR算法及其优化  50-54
    3.2.4 队列调度算法在NP上的实现  54-56
  3.3 NP流水型任务集自动分配  56-74
    3.3.1 NP任务分配模型  58-62
    3.3.2 遗传算法在NP任务分配中的实现  62-70
    3.3.3 NP遗传算法实现示例  70-71
    3.3.4 遗传算法在NP流水线软硬件设计过程中的应用  71-74
  3.4 小结  74-75
第4章 面向多核NP的OS设计扩展  75-95
  4.1 面向多核NP的OS优化  75-86
    4.1.1 内核调度与任务设计  75-78
    4.1.2 并行计算与对称多处理(SMP)的设计  78-82
    4.1.3 处理器亲和性设计  82-86
  4.2 多核NP数据包处理设计  86-94
    4.2.1 数据包处理性能评价模型  86-88
    4.2.2 数据包多核NP处理的设计实现  88-92
    4.2.3 数据包多核NP处理的测试结果  92-94
  4.3 小结  94-95
第5章 面向多核NP的数据平面设计框架  95-130
  5.1 多核NP的数据平面软件设计框架  95-98
    5.1.1 控制平面  96
    5.1.2 数据平面  96-98
  5.2 软件设计框架的基本功能  98-103
    5.2.1 控制平面和数据平面的功能划分  98-99
    5.2.2 快速路径与慢速路径的区分  99
    5.2.3 快速路径处理过程的设计  99-101
    5.2.4 慢速路径处理过程的设计  101-103
  5.3 快速路径虚拟接口设计  103-107
    5.3.1 快速路径虚拟接口(FPVI)定义  103-104
    5.3.2 FPVI例外定义  104-105
    5.3.3 FPVI基本例外处理示例  105-106
    5.3.4 FPVI复制例外处理示例  106
    5.3.5 FPVI本地发送例外处理示例  106-107
  5.4 快速路径与缓冲管理器接口(FPC)  107-115
    5.4.1 NetLink套接字接口  108-109
    5.4.2 FPC消息机制  109-112
    5.4.3 FPC的运行机制  112-115
  5.5 快速路径统计接口(FPS)  115-116
  5.6 多核NP路由器的多平面软件框架设计  116-117
  5.7 软件框架的性能测试  117-124
    5.7.1 高性能多核平台的选择  117-119
    5.7.2 控制平面与数据平面性能测试  119-121
    5.7.3 快速路径和慢速路径性能测试  121-124
  5.8 快速路径与慢速路径设计实例  124-128
    5.8.1 NAT-PT基本概念  124-125
    5.8.2 NAT-PT工作原理  125-126
    5.8.3 NAT-PT慢速路径设计  126-127
    5.8.4 NAT-PT快速路径设计  127-128
  5.9 小结  128-130
第6章 内核网络协议栈设计框架  130-147
  6.1 内核网络模块设计  130-142
    6.1.1 虚拟网络块(VNB)的技术基础  130-131
    6.1.2 VNB框架的构成  131-133
    6.1.3 VNB框架的数据流及接口设计  133-136
    6.1.4 虚拟网络块框架的核心模块  136-138
    6.1.5 虚拟网络块框架的网络应用  138-140
    6.1.6 VNB框架的构建过程  140-142
  6.2 VNB框架构建NETFLOW应用设计实例  142-146
  6.3 小结  146-147
第7章 管理平面设计框架  147-155
  7.1 管理平面设计  147-154
    7.1.1 网络应用系统管理平面基本概念  147-148
    7.1.2 统一管理系统的基本概念  148-149
    7.1.3 统一管理系统接口设计  149-154
  7.2 小结  154-155
第8章 基于多核处理器的IPSec的实现  155-172
  8.1 TPSec的技术基础  155-160
    8.1.1 IPSec安全体系结构  155-156
    8.1.2 IPSec的内核网络实现  156-158
    8.1.3 IPSec的包处理设计  158-160
  8.2 IPSec基于多核的架构设计  160-167
    8.2.1 TPSec控制平面与数据平面的设计实现  160-162
    8.2.2 IPSec快速路径的接口设计实现  162-164
    8.2.3 IPSec快速路径的数据流设计实现  164-167
  8.3 多核IPSec的性能测试  167-171
    8.3.1 IPSec性能测试方案  167-168
    8.3.2 IPSec双平面方案性能测试结果  168-169
    8.3.3 IPSec快速路径方案性能测试结果  169-171
  8.4 小结  171-172
第9章 总结与展望  172-175
  9.1 主要工作总结  172-173
  9.2 多核网络处理器应用的展望  173-175
参考文献  175-185
致谢  185-186
攻读博士学位期间发表的论文  186-188
攻读博士学位期间申请的发明专利  188-189
攻读博士学位期间参加科研项目情况  189-190
攻读博士学位期间完成的标准工作  190

相似论文

  1. 基于GMPLS的光突发交换光网络及其关键技术的研究,TN929.1
  2. 基于多平面的域间路由安全监测技术研究,TP393.08
  3. 银行管理软件开发框架研究及应用,TP311.52
  4. 网构软件模型转换技术应用研究,TP311.52
  5. 山西联通移动业务经营分析系统设计与实现,TN929.5
  6. 平面磁集成电压调整模块(VRM)无源控制的研究,TM46
  7. 基于JBPM工作流引擎的业务审批系统的设计与实现,TP311.52
  8. 显示表面上多触点手势研究,TP334.3
  9. 自动交换光网络的应用研究,TN929.1
  10. 基于Cavium平台的网络流分类系统的设计与实现,TP393.06
  11. 基于组件的信息化软件框架研究与实现,TP311.52
  12. 数字控制通信高频开关电源的研究,TM461
  13. 自动交换光网络(ASON)的生存性技术研究,TN929.1
  14. 基于界面设计模式的物探领域应用框架的设计与实现,TP311.52
  15. T-MPLS节点设备控制平面的设计与实现研究,TN929.1
  16. 模块化分布式路由器控制平面研究与实现,TN915.05
  17. WSON中面向传输损伤自适应控制的路由实现技术,TN929.1
  18. 有限元软件框架研究及其在线性静力学程序中的应用,TP311.52
  19. 基于组件技术的频谱分析仪系统软件开发,TP311.52
  20. 基于GeoTools的开源GIS应用的研究与实践,TP311.52
  21. PTDN体系结构研究与网管的实现,TN915.02

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 软件工程 > 软件开发
© 2012 www.xueweilunwen.com