注重体验与质量的电子书资源下载网站
分类于: 计算机基础 其它
简介
深入浅出DPDK 豆 7.1分
资源最后更新于 2020-08-23 08:25:24
作者:朱河清
出版社:机械工业出版社
出版日期:2016-01
ISBN:9787111537830
文件格式: pdf
标签: DPDK 网络开发 网络编程 软件开发 网络 programming UNIX&LINUX 性能优化
简介· · · · · ·
近年来,随着网络技术的不断创新和市场的发展,越来越多的网络设备基础架构开始向基于通用处理器平台的架构方向融合,期望用更低的成本和更短的产品开发周期来提供多样的网络单元和丰富的功能,如应用处理、控制处理、包处理、信号处理等。为了适应这一新的产业趋势, 英特尔公司联合第三方软件开发公司及时推出了基于Intel® x86架构DPDK (Data Plane Development Kit,数据平面开发套件) 实现了高效灵活的包处理解决方案。经过近6年的发展,DPDK已经发展成支持多种高性能网卡和多通用处理器平台的开源软件工具包,并在成为通用处理器平台上影响力最大的数据平面解决方案。
本书汇聚了最资深的DPDK技术专家精辟见解和实战体验,详细介绍了DPDK技术发展趋势,数据包处理,硬件加速技术,包处理和虚拟化 ,以及DPDK 技术在SDN,NFV ,网络存...
目录
DPDK基础篇
1 认识DPDK
1.1 主流包处理硬件平台
1.2 初识DPDK
1.3 解读数据包处理能力
1.4 探索IA处理器上最艰巨的任务
1.5 软件包处理的潜力– 再识DPDK
1.6 从融合的角度看DPDK
1.7 实例
2 Cache和内存
2.1 存储系统简介
2.2 Cache系统简介
2.3 Cache地址映象和变换
2.4 Cache的写策略
2.5 Cache预取
2.6 Cache一致性
2.7 TLB和大页
2.8 DDIO
2.9 NUMA系统
3 并行计算
3.1 多核性能和可扩展性
3.2 指令并发与数据并行
4 同步互斥机制
4.1 原子操作
4.2 读写锁
4.3 自旋锁
4.4 无锁机制
5 报文转发
5.1 网络处理模块划分
5.2 转发框架介绍
5.3 转发算法
6 PCIe与包处理I/O
6.1 从PCIe事务的角度看包处理
6.2 PCIe上的数据传输的能力
6.3 网卡DMA描述符环形队列
6.4 数据包收发— CPU和IO的协奏
6.5 PCIe的净荷转发带宽
6.6 Mbuf 与Mempool
7 网卡性能优化
7.1 DPDK的轮询模式
7.2 网卡I/O性能优化
7.3 平台优化及其配置调优
7.4 队列长度及各种阈值的设置
8 流分类与多队列
8.1 多队列
8.2 流分类
8.3 流分类技术的使用
8.4 可重构匹配表
9 硬件加速与功能卸载
9.1 硬件卸载简介
9.2 网卡硬件卸载功能
9.3 DPDK软件接口
9.4 硬件与软件功能实现
9.5 计算及更新功能卸载
9.6 分片功能卸载
9.7 组包功能卸载
DPDK 虚拟化技术篇
10 X86平台上的I/O虚拟化
10.1 X86平台虚拟化概述
10.2 I/O透传虚拟化
10.3 PCI-e网卡透传下的收发包流程
10.4 I/O透传虚拟化配置的常见问题
11 半虚拟化Virtio
11.1 Virtio使用场景
11.2 Virtio规范和原理
11.3 Virtio网络设备驱动设计
12 加速包处理的vhost优化方案
12.1 vHOST的演进和原理
12.2 基于DPDK的用户态vHOST设计
12.3 DPDK vHost编程实例
13 DPDK与网络功能虚拟化
13.1 NFV网络功能虚拟化
13.2 OPNFV与DPDK
13.3 NFV的部署
13.4 VNF部署的形态
13.5 VNF自身特性的评估
13.6 VNF的设计
13.7 实例解析和商业案例
14 Open vSwitch (OVS)中的DPDK性能加速
14.1 虚拟交换机简介
14.2 OVS简介
14.3 DPDK加速的OVS
15 基于DPDK的存储软件优化
15.1 基于以太网的存储系统
15.2 以太网存储系统的优化
15.3 SPDK 介绍
1 认识DPDK
1.1 主流包处理硬件平台
1.2 初识DPDK
1.3 解读数据包处理能力
1.4 探索IA处理器上最艰巨的任务
1.5 软件包处理的潜力– 再识DPDK
1.6 从融合的角度看DPDK
1.7 实例
2 Cache和内存
2.1 存储系统简介
2.2 Cache系统简介
2.3 Cache地址映象和变换
2.4 Cache的写策略
2.5 Cache预取
2.6 Cache一致性
2.7 TLB和大页
2.8 DDIO
2.9 NUMA系统
3 并行计算
3.1 多核性能和可扩展性
3.2 指令并发与数据并行
4 同步互斥机制
4.1 原子操作
4.2 读写锁
4.3 自旋锁
4.4 无锁机制
5 报文转发
5.1 网络处理模块划分
5.2 转发框架介绍
5.3 转发算法
6 PCIe与包处理I/O
6.1 从PCIe事务的角度看包处理
6.2 PCIe上的数据传输的能力
6.3 网卡DMA描述符环形队列
6.4 数据包收发— CPU和IO的协奏
6.5 PCIe的净荷转发带宽
6.6 Mbuf 与Mempool
7 网卡性能优化
7.1 DPDK的轮询模式
7.2 网卡I/O性能优化
7.3 平台优化及其配置调优
7.4 队列长度及各种阈值的设置
8 流分类与多队列
8.1 多队列
8.2 流分类
8.3 流分类技术的使用
8.4 可重构匹配表
9 硬件加速与功能卸载
9.1 硬件卸载简介
9.2 网卡硬件卸载功能
9.3 DPDK软件接口
9.4 硬件与软件功能实现
9.5 计算及更新功能卸载
9.6 分片功能卸载
9.7 组包功能卸载
DPDK 虚拟化技术篇
10 X86平台上的I/O虚拟化
10.1 X86平台虚拟化概述
10.2 I/O透传虚拟化
10.3 PCI-e网卡透传下的收发包流程
10.4 I/O透传虚拟化配置的常见问题
11 半虚拟化Virtio
11.1 Virtio使用场景
11.2 Virtio规范和原理
11.3 Virtio网络设备驱动设计
12 加速包处理的vhost优化方案
12.1 vHOST的演进和原理
12.2 基于DPDK的用户态vHOST设计
12.3 DPDK vHost编程实例
13 DPDK与网络功能虚拟化
13.1 NFV网络功能虚拟化
13.2 OPNFV与DPDK
13.3 NFV的部署
13.4 VNF部署的形态
13.5 VNF自身特性的评估
13.6 VNF的设计
13.7 实例解析和商业案例
14 Open vSwitch (OVS)中的DPDK性能加速
14.1 虚拟交换机简介
14.2 OVS简介
14.3 DPDK加速的OVS
15 基于DPDK的存储软件优化
15.1 基于以太网的存储系统
15.2 以太网存储系统的优化
15.3 SPDK 介绍