成功加入购物车
全新塑封正版现货
唐宏 、 柴卓原 、 任平 、 王勇 著 / 人民邮电出版社 / 2016-08 / 平装
售价 ¥ 86.00
品相 全新
优惠 满包邮
延迟发货说明
上书时间2024-05-21
卖家超过10天未登录
DPDK应用基础
本书不仅深入浅出地介绍了DPDK的基础原理和安装调试方法,还详细介绍了DPDK在NFV中的应用场景和测试方法,并叙述了DPDK应用开发的技术细节和实践经验,是DPDK的入门必读,是了解NFV加速转发技术的**指南。
唐宏,男,中国电信股份有限公司广州研究院数据通信研究所所长,主要从事IP承载网、下一代互联网、网络新技术方面的研发与管理工作。
目录第一部分 基础原理 第 1 章 背景概述........................................................................................................ 3 1.1 产业背景.................................................................................................................. 3 1.1.1 x86 架构性能分析..............................................................................................4 1.1.2 NFV 中的网络转发性能分析..............................................................................5 1.1.3 DPDK 的引入.......................................................................................................7 1.1.4 本书范围............................................................................................................... 8 1.2 DPDK 开源社区.................................................................................................. 9 1.2.1 社区起源............................................................................................................... 9 1.2.2 社区网站............................................................................................................. 10 1.3 DPDK 源代码...................................................................................................... 11 1.3.1 版本总述............................................................................................................. 11 1.3.2 最新版本特性介绍.............................................................................................12 参考文献........................................................................................................................... 13 第 2 章 DPDK 技术简介.............................................................................................. 14 2.1 软件架构................................................................................................................. 14 2.2 巨页技术.................................................................................................................. 16 2.3 轮询技术.................................................................................................................. 16 2.4 CPU 亲和技术........................................................................................................ 16 2.5 DPDK 性能影响因素........................................................................................ 17 2.5.1 硬件结构............................................................................................................. 17 2.5.2 OS 版本及其内核...............................................................................................18 2.5.3 OVS 性能问题.................................................................................................... 20 2.5.4 内存管理............................................................................................................. 20 2.5.5 CPU 核间无锁通信 ............................................................................................22 2.5.6 目标 CPU 类型的正确设置 ...............................................................................22 第 3 章 DPDK 库函数.................................................................................................. 23 3.1 EAL 库................................................................................................................. 24 3.1.1 内核初始化与启动.............................................................................................24 3.1.2 内存..................................................................................................................... 25 3.1.3 多线程与亲和性.................................................................................................25 3.2 Ring 库.................................................................................................................. 26 3.2.1 单消费者入队..................................................................................................... 26 3.2.2 单消费者出队..................................................................................................... 28 3.3 Mempool 库 ......................................................................................................... 29 3.4 mbuf 库 .................................................................................................................. 30 3.4.1 数据存储............................................................................................................. 30 3.4.2 缓冲区分配与释放.............................................................................................31 3.4.3 相关操作............................................................................................................. 31 3.5 PMD 驱动........................................................................................................... 31 3.5.1 需求与设计......................................................................................................... 31 3.5.2 配置..................................................................................................................... 32 3.6 IVSHMEM 库........................................................................................................ 32 3.6.1 API 概述 ............................................................................................................. 33 3.6.2 环境配置............................................................................................................. 34 3.7 Timer 库.................................................................................................................... 34 3.8 LPM 库..................................................................................................................... 34 3.8.1 API 概述 ............................................................................................................. 35 3.8.2 实现说明............................................................................................................. 35 3.9 Hash 库................................................................................................................. 36 3.9.1 API 概述 ............................................................................................................. 36 3.9.2 实现说明............................................................................................................. 36 3.10 多进程支持....................................................................................................... 37 3.10.1 内存共享............................................................................................................. 38 3.10.2 局限性................................................................................................................. 38 参考文献........................................................................................................................... 39 第 4 章 DPDK 安装与部署.................................................................................... 40 4.1 系统要求.............................................................................................................. 40 4.1.1 BIOS 设置要求................................................................................................... 40 4.1.2 DPDK 编译要求................................................................................................. 40 4.1.3 运行 DPDK 应用程序要求................................................................................41 4.2 使用源代码编译 DPDK............................................................................................. 43 4.2.1 安装 DPDK 安装包............................................................................................43 4.2.2 安装 DPDK 目标环境........................................................................................43 4.2.3 查看已安装的 DPDK 环境................................................................................44 4.2.4 启用 DPDK 用户空间 I/O 的模块.....................................................................44 4.2.5 加载 VFIO 模块.................................................................................................. 45 4.2.6 在内核模块绑定/解除网络端口........................................................................45 4.3 编译和运行示例应用程序...............................................................................46 4.3.1 编译示例应用程序.............................................................................................46 4.3.2 运行示例应用程序.............................................................................................47 4.3.3 应用程序的逻辑核使用.....................................................................................47 4.3.4 应用程序巨页内存使用.....................................................................................48 4.3.5 其他应用示例程序.............................................................................................48 4.3.6 测试应用程序..................................................................................................... 484.4 启用其他功能...................................................................................................... 49 4.4.1 高精度事件计时器(HPET)功能...................................................................49 4.4.2 无权限运行 DPDK 应用程序............................................................................49 4.4.3 电源管理和节能功能.........................................................................................50 4.4.4 核隔离功能......................................................................................................... 50 4.4.5 加载 DPDK KNI 内核模块................................................................................50 4.4.6 IOMMU 功能...................................................................................................... 51 4.4.7 小数据分组高速转发功能.................................................................................51 4.5 快速启动设置脚本............................................................................................ 52 4.5.1 脚本组织结构..................................................................................................... 52 4.5.2 使用场景............................................................................................................. 53 第 5 章 DPDK 自带应用软件调试..............................................................................54 5.1 命令行应用例....................................................................................................... 54 5.1.1 概述..................................................................................................................... 54 5.1.2 应用例编译......................................................................................................... 55 5.1.3 应用例运行......................................................................................................... 55 5.1.4 代码说明............................................................................................................. 55 5.2 HelloWorld 应用例............................................................................................. 56 5.2.1 应用例编译......................................................................................................... 57 5.2.2 运行应用例......................................................................................................... 57 5.2.3 代码说明............................................................................................................. 57 5.3 L2 转发应用例 .................................................................................................... 58 5.3.1 概述..................................................................................................................... 58 5.3.2 编译..................................................................................................................... 59 5.3.3 运行..................................................................................................................... 59 5.3.4 代码说明............................................................................................................. 60 5.4 L3 转发应用例 .................................................................................................... 65 5.4.1 概述..................................................................................................................... 65 5.4.2 L3 转发应用例编译............................................................................................65 5.4.3 L3 转发应用例运行............................................................................................65 5.4.4 代码说明............................................................................................................. 66 5.5 负载均衡应用例................................................................................................. 69 5.5.1 概述..................................................................................................................... 69 5.5.2 编译与运行......................................................................................................... 70 5.5.3 代码说明............................................................................................................. 70 5.6 QoS 调度应用例................................................................................................... 72 5.6.1 QoS 调度应用例概述.........................................................................................72 5.6.2 QoS 调度应用例编译.........................................................................................72 5.6.3 QoS 调度应用例运行.........................................................................................73 5.6.4 应用例代码说明................................................................................................. 75 5.7 定时器应用例....................................................................................................... 76 5.7.1 应用例编译与运行.............................................................................................76 5.7.2 应用例代码说明................................................................................................. 76 5.8 分发器应用例..................................................................................................... 78 5.8.1 概述..................................................................................................................... 78 5.8.2 分发器应用例编译.............................................................................................79 5.8.3 分发器应用例运行.............................................................................................79 5.8.4 分发器应用例代码说明.....................................................................................79 5.8.5 调试与统计信息................................................................................................. 80 参考文献........................................................................................................................... 80 第二部分 DPDK 应用与测试 第 6 章 DPDK 在 NFV 的应用和相关测试方法......................................................... 83 6.1 DPDK 在 NFV 中的应用场景.............................................................................. 83 6.1.1 x86 服务器上的应用..........................................................................................83 6.1.2 虚拟机+OVS 的应用..........................................................................................84 6.1.3 虚拟机+SR-IOV 技术的应用.............................................................................86 6.2 NFV 场景下的测试方法................................................................................ .... ..87 6.2.1 测试拓扑............................................................................................................. 87 6.2.2 测试标准............................................................................................................. 88 6.2.3 测试平台说明..................................................................................................... 89 第 7 章 DPDK 专项测试与结论.................................................................................. 92 7.1 测试用例介绍............................................................................................................. 92 7.2 专项测试详情.......................................................................................................... 93 7.2.1 x86 服务器三层转发测试..................................................................................93 7.2.2 SR-IOV 测试..................................................................................................... 108 7.2.3 OVS 测试.......................................................................................................... 126 第三部分 DPDK 应用开发及实例解析 第 8 章 DPDK 应用开发基础....................................................................................... 135 8.1 网卡设备................................................................................................................ 135 8.1.1 设备驱动........................................................................................................... 135 8.1.2 应用接口........................................................................................................... 136 8.1.3 设备接口........................................................................................................... 137 8.2 进程..................................................................................................................... 145 8.2.1 线程................................................................................................................... 145 8.2.2 单进程............................................................................................................... 146 8.2.3 多进程............................................................................................................... 147 参考文献............................................................................................................................... 149 第 9 章 vDPI 应用实例.................................................................................................. 150 9.1 DPI 简介 ................................................................................................................... 150 9.2 总体设计.................................................................................................................... 151 9.2.1 模型设计........................................................................................................... 151 9.2.2 组件设计...........................................................................................................151 9.3 实现方案设计.............................................................................................................. 152 9.4 基于 l3fwd 的实现方案.......................................................................................... 153 9.4.1 DPDK 以太网接口........................................................................................... 153 9.4.2 DPI 以太网接口................................................................................................ 154 9.4.3 DPDK 与 DPI 的数据接口转换.......................................................................155 9.4.4 代码解析........................................................................................................... 155 9.5 基于 pipeline 的实现方案.................................................................................... 157 9.6 实例运行及性能测试.................................................................................................. 158 参考文献............................................................................................................................... 159 第 10 章 mTCP 和 BRAS 应用实例.................................................................................. 160 10.1 mTCP 案例解析 ...................................................................................................160 10.1.1 mTCP 简介 ..................................................................................................... 160 10.1.2 mTCP 应用解析.............................................................................................. 161 10.2 BRAS 案例解析 ........................................................................................................ 165 10.2.1 BRAS 简介 ..................................................................................................... 165 10.2.2 BRAS 应用解析.............................................................................................. 166 参考文献............................................................................................................................... 168 附录 附录一 操作系统服务关闭说明......................................................................................... 171 附录二 操作系统安装......................................................................................................... 172 附录三 DPDK 编译............................................................................................................. 173 附录四 操作系统启动参数................................................................................................ 174 附录五 l3fwd 程序编译 ................................................................................................... 175 附录六 l3fwd 启动配置 ................................................................................................... 178 附录七 SR-IOV 测试配置........................................................................................................ 181 附录八 OVS 安装.................................................................................................................. 183 附录九 OVS 测试配置...................................................................................................... 184 附录十 l3fwd 在不同流量下启动配置 .............................................................................187 附录十一 大流表测试 l3fwd 启动配置 ............................................................................. 190
展开全部
图2
配送说明
...
相似商品
为你推荐
开播时间:09月02日 10:30