01
内核旁路技术概述
为什么需要内核旁路?传统网络协议栈的瓶颈分析。
基础原理
02
DPDK核心概念
环境抽象层(EAL)、大页内存、UIO/VFIO驱动模型。
DPDK内存
03
DPDK环境搭建
在Ubuntu/CentOS上编译安装DPDK,配置大页内存。
实战Linux
04
DPDK核心组件
Mbuf库、Mempool库、Ring库的设计与使用。
库无锁
05
DPDK轮询模式驱动(PMD)
PMD工作原理,与传统中断驱动的对比。
驱动性能
06
DPDK应用程序框架
lcore绑定、主从线程模型、无锁编程基础。
多线程架构
07
DPDK数据包处理
接收/发送流程,RSS与流分发,多队列网卡配置。
网卡RSS
08
DPDK性能调优
CPU亲和性、NUMA感知、缓存行对齐、批量处理。
调优NUMA
09
DPDK与硬件卸载
TSO/LRO、校验和卸载、VLAN卸载、流表卸载。
硬件卸载
10
DPDK虚拟化支持
virtio-user、vhost-user、OVS-DPDK集成。
虚拟化OVS
11
Solarflare OpenOnload
安装配置、TCP旁路原理、与传统协议栈对比。
OpenOnloadTCP
12
OpenOnload高级特性
零拷贝、TCP直接、epoll优化、多进程支持。
零拷贝epoll
13
Mellanox VMA (LibVMA)
架构设计、RDMA与TCP旁路、配置优化。
MellanoxRDMA
14
VMA性能调优
内存注册、轮询模式、中断合并、连接管理。
调优内存
15
Netmap框架
Netmap架构、API使用、与DPDK的对比分析。
Netmap对比
16
AF_XDP套接字
eBPF与XDP基础、AF_XDP工作原理、零拷贝路径。
eBPFXDP
17
AF_XDP实战
UMEM管理、Fill/Completion Ring、TX/RX Ring配置。
实战UMEM
18
用户态协议栈设计
TCP/IP协议栈裁剪、状态机管理、定时器优化。
协议栈设计
19
用户态协议栈实现
基于DPDK的轻量级TCP栈,内存管理策略。
实现TCP
20
用户态协议栈性能
延迟测试、吞吐量测试、与传统协议栈对比。
性能测试
21
硬件时间戳与PTP
IEEE 1588协议、硬件时间戳获取、时钟同步。
PTP时间戳
22
精确时间同步
PTP在交易系统中的应用,纳秒级时间戳对齐。
同步交易
23
多网卡绑定与负载均衡
Bonding模式、XDP负载均衡、硬件分流。
Bonding负载均衡
24
网络延迟优化
中断规避、批处理、流水线设计、CPU隔离。
延迟优化
25
网络抖动控制
CPU隔离、中断亲和性、内存带宽预留。
抖动隔离
26
安全与隔离
用户态网络的安全边界、DDoS防护、访问控制。
安全隔离
27
监控与诊断
DPDK统计接口、延迟直方图、丢包分析、perf工具。
监控perf
28
生产环境部署
系统参数调优、BIOS设置、固件升级、容灾方案。
部署BIOS
29
案例实战:高频交易网关
基于DPDK的高频交易网关设计,从架构到实现。
实战网关
30
案例实战:低延迟行情系统
基于OpenOnload的低延迟行情系统,性能对比与优化。
实战行情