SmartNIC网络卸载功能开发实战

📚 共计 30 章节
01
SmartNIC概述
什么是SmartNIC · 与普通NIC区别 · 虚拟化/存储/安全卸载场景
概念入门
02
SmartNIC硬件架构
BlueField · FPGA · DPU · PCIe/DDR/SerDes · 数据通路
芯片总线
03
开发环境搭建
硬件准备 · 驱动/固件 · SDK/编译器/调试工具链
环境工具
04
网络卸载基础概念
卸载层次 L2/L3/L4 · 降低CPU · 提升吞吐 · 降低延迟
原理收益
05
DPDK入门
架构概览 · 大页内存 · UIO/VFIO · Hello World程序
DPDK实践
06
DPDK核心组件
EAL · Mempool · Ring · PMD轮询驱动
组件内存
07
DPDK数据包处理
收/发流程 · Burst模式 · 零拷贝 · RSS多队列
转发性能
08
流分类与卸载
流表 · Match-Action · TC Flower · OVS-offload · 老化
流表硬件
09
OVS-DPDK卸载
OVS架构 · DPDK集成 · offload原理 · 性能对比
OVS卸载
10
Virtio-net卸载
Virtio协议 · 前端驱动 · vhost-user · 硬件加速
虚拟化Virtio
11
RDMA与RoCEv2卸载
RDMA基础 · RoCEv2栈 · SmartNIC卸载 · 调优
RDMARoCE
12
TCP卸载引擎(TOE)
TOE原理 · TSO · 校验和卸载 · LRO
TCP卸载
13
NVMe-over-Fabric卸载
NVMe协议 · 目标端/发起端 · 存储卸载架构 · 优化
存储NVMe
14
加密卸载 (IPsec/TLS)
IPsec · TLS · 硬件加密引擎 · 密钥管理
安全加密
15
虚拟化卸载 (SR-IOV)
SR-IOV原理 · VF配置 · PCIe Passthrough · 卸载
虚拟化SR-IOV
16
可编程数据平面 (P4语言)
P4基础 · 编程模型 · SmartNIC应用 · 对比DPDK
P4可编程
17
eBPF与XDP卸载
eBPF基础 · XDP原理 · SmartNIC卸载 · 性能测试
eBPFXDP
18
拥塞控制卸载
DCQCN · ECN · SmartNIC拥塞控制卸载实现
拥塞DCQCN
19
时间同步卸载 (PTP)
PTP协议 · 硬件时间戳 · SmartNIC卸载 · 纳秒同步
PTP时间
20
遥测与监控卸载
INT · 流统计 · 丢包检测 · 遥测卸载
遥测INT
21
多租户与QoS卸载
QoS基础 · 速率限制 · 优先级队列 · 多租户方案
QoS多租户
22
故障排查与调试
驱动失败 · 流表不生效 · tcpdump/perf/ethtool
调试工具
23
性能基准测试
延迟/吞吐/CPU · Pktgen/TRex/iperf · 结果分析
测试性能
24
安全卸载 (防火墙/ACL)
防火墙规则 · ACL硬件 · 状态防火墙 · 一致性
安全ACL
25
负载均衡卸载
轮询/最少连接/一致性哈希 · L4/L7负载均衡
负载均衡L4/L7
26
容器网络卸载
CNI · Calico/Cilium集成 · Pod网络 · 服务网格卸载
容器CNI
27
AI/ML网络卸载
AllReduce/AllGather · RDMA训练 · 梯度聚合卸载
AI集合通信
28
存储卸载 (NVMe/TCP)
NVMe/TCP协议 · SmartNIC卸载 · 性能优化 · 对比
存储NVMe/TCP
29
多卡协同与集群部署
多SmartNIC协同 · 集群管理 · 大规模部署最佳实践
集群部署
30
未来趋势与总结
DPU/IPU · CXL融合 · SONiC/DPDK · 学习路径
趋势总结