深入浅出DPDK 封面

深入浅出DPDK

暂无评分
字数
350字
章节数
40
ISBN
9787111537830

标签

内容简介

《深入浅出DPDK》是国内较早系统梳理 DPDK(Data Plane Development Kit,数据平面开发套件)技术的专著,由英特尔 DPDK 相关团队的朱河清、梁存铭、胡雪焜、曹水等著,2016 年由机械工业出版社出版。全书围绕「通用处理器(x86)如何高效完成网络数据包处理」这一核心问题展开:先讲清 DPDK 的由来与定位——以轮询模式驱动、绕过内核协议栈、大页内存、无锁队列等手段,把包处理从内核态搬到用户态,换取确定性的高吞吐与低时延;再逐一拆解支撑这一性能的底层机制,包括 Cache 与内存层次、DDIO、NUMA、TLB 与大页、多核并行与同步互斥、报文转发框架与算法、PCIe 与网卡 DMA 描述符环、网卡 I/O 调优、流分类与多队列、硬件加速与功能卸载等。第二部分转向虚拟化场景,讨论 x86 平台 I/O 虚拟化、PCIe 网卡透传、半虚拟化 Virtio 以及基于 DPDK 的用户态 vhost 优化方案。第三部分讲应用落地,涵盖 DPDK 与 NFV/OPNFV 的结合、Open vSwitch 的 DPDK 加速,以及基于以太网的存储系统优化与 SPDK 简介。全书兼顾原理、软件算法与实战心得,配有大量配置与调优经验,是国内网络数据面方向较有代表性的入门到进阶读物。

编辑推荐

一本「不讲空话」的性能书。市面上不少讲高性能网络的书停留在「换更好的网卡」层面,而本书从 CPU 的角度回答一个更根本的问题:为什么通用服务器也能跑到几十 Gbps 的包转发?答案就藏在 Cache 行、DDIO、大页、无锁环形队列和轮询模式这些细节里。作者来自英特尔 DPDK 相关团队,讲原理时不回避硬件,讲硬件时又落回代码与配置,第 6 章的 DMA 描述符环、第 7 章的队列阈值调优尤其能看出实战底子。 结构安排也颇友好:基础篇(第 1—9 章)打地基,虚拟化篇(第 10—12 章)讲清 Virtio 与 vhost 的来龙去脉,应用篇(第 13—15 章)落到 NFV、OVS 与存储加速,正好对应读者从「看懂」到「会用」的路径。全书约 267 页,篇幅克制,读完不会淹没在 API 文档里。 需要提醒的是,本书成书于 2016 年,DPDK 的版本号、网卡型号和社区生态都已迭代多轮,部分接口与配置细节今天需要对照官方文档核实。但底层机制——Cache、NUMA、PCIe 收发路径、轮询与卸载——恰恰是变化最慢、最值得反复读的那一部分。

适合谁读

适合

  • 从事网络设备、网关、负载均衡研发的工程师,想搞懂高性能包处理的底层原理
  • 云计算与虚拟化方向的开发者,需要理解 Virtio、vhost 与 OVS-DPDK 的机制
  • SDN/NFV 相关岗位从业者,希望系统认识数据面技术演进
  • 通信、计算机专业高年级本科生与研究生,作为网络数据面方向的进阶读物

不适合

  • 完全没有 C 语言和操作系统基础、想找「一键入门教程」的纯新手
  • 只想学应用层 Web/后端开发、不涉及底层网络性能的读者
  • 需要最新 DPDK 版本 API 与代码示例的读者,本书内容已明显滞后于社区版本

阅读建议

  1. 先读第 1 章建立全局认识,再按「Cache 与内存 → 并行与同步 → PCIe 收发 → 性能优化」的顺序推进,不要从附录跳过原理。
  2. 读到第 6、7 章时对照自己的网卡与服务器实际动手跑 l2fwd/l3fwd 等示例程序,用 perf 与网卡统计验证书中结论。
  3. 第 10—12 章可结合虚拟化环境的实际抓包与中断统计同步阅读,重点理解透传与 Virtio 两条路径的差异。
  4. 本书出版于 2016 年,阅读时把接口细节视为原理示例,实践中以 DPDK 官方文档与当前社区版本为准。

出版社简介

机械工业出版社 中国 · 成立于 1950 年

机械工业出版社(China Machine Press)在科技与专业出版之外,库内图书还体现出对心理学、计算机、管理、财经与社科等方向的持续关注。心理学方面收入荣格作品及分析心理学导论,并涉及压力与健康、成瘾与疗愈等应用议题;计算机领域有《计算机程序的构造和解释(JavaScript版)》;管理与财经类包括《管理行为(原书第4版)》《不平等的代价(珍藏版)》《这次不一样:八百年金融危机史(纪念版)》;科学哲学与科学史方面则有《世界观(原书第3版)》。相关作者资源涵盖C.G.荣格、威廉·麦圭尔、索努·沙姆达萨尼、加博尔·马泰等。公开资料有限,以上仅据库内图书归纳其出版面貌。

目录

  1. 前言
  2. 引言
  3. 作者介绍
  4. 第一部分 DPDK基础篇
  5. 第1章 认识DPDK
  6. 1.1 主流包处理硬件平台
  7. 1.2 初识DPDK
  8. 1.3 解读数据包处理能力
  9. 1.4 探索IA处理器上最艰巨的任务
  10. 1.5 软件包处理的潜力——再识DPDK
  11. 1.6 从融合的角度看DPDK
  12. 1.7 实例
  13. 1.8 小结
  14. 第2章 Cache和内存
  15. 2.1 存储系统简介
  16. 2.2 Cache系统简介
  17. 2.3 Cache地址映射和变换
  18. 2.4 Cache的写策略
  19. 2.5 Cache预取
  20. 2.6 Cache一致性
  21. 2.7 TLB和大页
  22. 2.8 DDIO
  23. 2.9 NUMA系统
  24. 第3章 并行计算
  25. 3.1 多核性能和可扩展性
  26. 3.2 指令并发与数据并行
  27. 3.3 小结
  28. 第4章 同步互斥机制
  29. 4.1 原子操作
  30. 4.2 读写锁
  31. 4.3 自旋锁
  32. 4.4 无锁机制
  33. 4.5 小结
  34. 第5章 报文转发
  35. 5.1 网络处理模块划分
  36. 5.2 转发框架介绍
  37. 5.3 转发算法
  38. 5.4 小结
  39. 第6章 PCIe与包处理I/O
  40. 6.1 从PCIe事务的角度看包处理

常见问题

这本书适合零基础直接读吗?
不太适合完全没有基础的人。书中会用到 C 语言、操作系统内存管理与中断、以太网与 PCIe 等背景知识,且默认读者对网卡收发包有一定概念。建议先补上计算机组成与操作系统基础,再来读效果更好。
书中内容在今天还有参考价值吗?
底层机制部分(Cache、DDIO、NUMA、大页、轮询模式、PCIe 描述符环、硬件卸载思路)依然成立,价值很高;但具体的 DPDK 版本、API 名称、网卡型号与调优参数已随社区演进发生变化,动手实践时应对照官方最新文档。
读完能直接上手写 DPDK 应用吗?
本书侧重原理与机制解释,并非逐行代码教程。读完后你会理解 DPDK 为何这样设计、性能瓶颈在哪里,但要写出可运行的程序,还需要配合官方示例、示例代码仓库和实际环境调试。
这本书和 SDN、NFV 有什么关系?
关系很紧密。第 13—15 章专门讲了 DPDK 在 NFV/OPNFV、Open vSwitch 加速以及存储(SPDK)中的应用。可以说 DPDK 是很多 NFV 与虚拟交换方案的数据面底座。

读者评论

查询本书

本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。

作者简介

曹水 作者

曹水,目前公开资料有限,其相关信息尚未得到系统披露。从库内收录情况看,曹水现有一种作品《环境行为理论与空间设计方法》,该书归入工业技术类,显示其写作方向集中于环境行为学与空间设计方法的交叉领域。这一题材通常关注人与建成环境之间的互动关系,并尝试将行为分析纳入空间设计的思考框架,具有较强的应用性与方法论色彩。由于作者生平、学术背景与研究方向的具体信息暂不可考,目前只能依据这一种作品来认识曹水:其写作似偏重理论梳理与设计方法并结合,面向建筑、环境设计及相关专业的读者。更多关于作者的资料,有待后续补充与核实。

同一作者

同类高分