内核旁路技术DPDK应用精讲
📚 共计 30 章节
01
DPDK前世今生
为什么需要DPDK?传统网络协议栈的瓶颈、DPDK核心思想与优势。
背景
架构
02
环境搭建与初体验
在Ubuntu/CentOS上安装DPDK、编译运行helloworld示例、理解EAL初始化流程。
实践
入门
03
核心组件之UIO与VFIO
用户态驱动原理、UIO框架详解、VFIO与UIO对比、VFIO直通配置实战。
驱动
虚拟化
04
大页内存与内存管理
TLB Miss问题、HugePages配置、DPDK内存池(mempool)架构、rte_malloc与rte_free。
内存
性能
05
环形缓冲区Ring
无锁队列设计原理、rte_ring API详解、多生产者/多消费者模式、性能测试对比。
无锁
并发
06
网卡驱动与收发包流程
PMD驱动模型、rte_eth_dev API、收包(rx)与发包(tx)描述符环、零拷贝原理。
网卡
零拷贝
07
缓冲区管理mbuf
mbuf结构体设计、链式mbuf、数据包封装与解封装、mbuf池化与回收。
mbuf
池化
08
轮询模式驱动PMD
中断模式 vs 轮询模式、PMD初始化流程、收发包函数深度解析、性能调优参数。
轮询
调优
09
多核调度与亲和性
CPU亲和性设置、lcore概念、主从核分工、多核负载均衡策略。
多核
调度
10
精确计时与时钟
DPDK时间戳获取、HPET与TSC时钟源、rte_get_tsc_cycles应用、微秒级定时器实现。
时钟
高精度
11
流分类与转发框架
ACL、Hash、LPM路由查找、精确匹配表、流分类性能对比。
转发
分类
12
KNI与内核交互
KNI原理与用途、KNI创建与销毁、用户态与内核态数据交换、性能开销分析。
内核
交互
13
DPDK与OVS集成
OVS-DPDK架构、vhost-user协议、virtio-net设备模拟、性能测试。
OVS
虚拟化
14
DPVS负载均衡
DPVS架构设计、FullNAT模式、连接跟踪、与LVS性能对比。
负载均衡
DPVS
15
F-Stack与协程
F-Stack架构、POSIX API适配、协程调度、HTTP Server实战。
协程
HTTP
16
DPDK与SPDK
存储性能瓶颈、SPDK NVMe驱动、bdev层、块设备读写实战。
存储
NVMe
17
VPP向量处理
VPP架构、向量处理 vs 标量处理、plugin开发、VPP命令行配置。
VPP
向量
18
P4与DPDK结合
P4语言简介、P4到DPDK的映射、P4程序加载、可编程数据平面。
P4
可编程
19
DPDK安全与加密
IPSEC卸载、QAT加速器、Cryptodev框架、SSL/TLS卸载。
安全
加密
20
DPDK虚拟化
SR-IOV原理、virtio-user、vhost-user多队列、热迁移支持。
虚拟化
热迁移
21
DPDK容器化
Docker集成DPDK、Kubernetes device plugin、SR-IOV CNI、性能隔离。
容器
K8s
22
DPDK性能调优
BIOS设置、NUMA感知、缓存行对齐、批处理收发包、DDIO技术。
调优
NUMA
23
DPDK监控与调试
Telemetry框架、proc-info工具、pdump抓包、gdb调试技巧。
监控
调试
24
DPDK与eBPF
eBPF基础、XDP程序、DPDK与XDP协同、卸载场景分析。
eBPF
XDP
25
DPDK与RDMA
RDMA技术简介、DPDK与Mellanox网卡、MLX5 PMD、GPUDirect。
RDMA
GPU
26
DPDK与5G UPF
5G核心网架构、UPF功能要求、DPDK加速UPF、N4接口实现。
5G
UPF
27
DPDK与AI推理
GPU Direct RDMA、分布式训练网络、DPDK加速NCCL、推理服务优化。
AI
NCCL
28
DPDK与金融极速交易
FPGA+DPDK方案、硬件时间戳、低延迟路径、微秒级交易系统。
金融
低延迟
29
DPDK与物联网网关
边缘计算场景、协议转换、MQTT/CoAP加速、轻量级DPDK。
IoT
边缘
30
DPDK未来展望
CXL与内存池化、SmartNIC与IPU、DPDK与Rust、社区路线图。
趋势
前沿