01
网络延迟的根源:从物理层到应用层的延迟构成分析,为什么通用协议栈不够快?
物理介质、操作系统、协议开销全链路拆解,理解延迟的每一纳秒来源。
延迟分析基础
02
内核旁路技术:DPDK、XDP、RDMA的原理与适用场景对比
三大旁路技术深度解析,选型决策与性能边界。
DPDKXDPRDMA
03
eBPF/XDP实战:使用eBPF在网卡驱动层过滤数据包,绕过内核协议栈
编写eBPF程序,在网卡驱动层直接过滤,实现微秒级包处理。
eBPFXDP包过滤
04
用户态协议栈设计:基于DPDK构建一个最小化的TCP/IP协议栈
从零开始搭建用户态协议栈,掌控每一层处理逻辑。
DPDK用户态TCP/IP
05
零拷贝技术:从mmap到io_uring,减少数据在内核与用户态之间的拷贝次数
mmap、sendfile、io_uring 零拷贝路径详解与性能对比。
零拷贝io_uringmmap
06
中断与轮询:NAPI机制详解,如何在低延迟与低CPU占用之间做权衡
NAPI 原理、自适应中断节流,平衡吞吐与延迟。
NAPI中断轮询
07
TCP优化:TCP_NODELAY、TCP_QUICKACK、初始拥塞窗口调优
经典TCP套接字选项调优,减少确认延迟与启动慢启动。
TCPNODELAY拥塞窗口
08
UDP优化与QUIC:为什么QUIC能降低连接延迟?UDP在实时音视频中的调优
QUIC 0-RTT、UDP缓冲区与GSO优化,实时流媒体最佳实践。
QUICUDP音视频
09
多队列与RSS:网卡多队列、RSS哈希、CPU亲和性绑定
利用多队列与RSS将网络负载分散到多个CPU核。
RSS多队列亲和性
10
内存池与预分配:避免运行时内存分配带来的抖动
使用内存池、预分配与 slab 分配器消除延迟毛刺。
内存池预分配抖动
11
锁优化:从spinlock到RCU,无锁数据结构在高频网络场景下的应用
spinlock、mutex、RCU、无锁队列在数据路径中的选择。
RCU无锁锁优化
12
批处理与合并:收包合并、发送合并,减少系统调用次数
GRO/GSO、批量系统调用、io_uring 批量提交。
批处理GRO系统调用
13
时间戳与PTP:精确时间同步在金融交易网络中的作用
硬件时间戳、PTP协议,实现亚微秒级时间同步。
PTP时间戳金融
14
硬件卸载:TSO、GSO、LRO、GRO、checksum offload的原理与配置
将协议处理卸载到网卡,降低CPU负载与延迟。
TSOGRO硬件卸载
15
流量控制与QoS:HTB、TBF、fq_codel,如何为关键流量预留带宽
Linux TC 与 QoS 队列,保障低延迟流量带宽。
QoSHTBfq_codel
16
socket选项深度解析:SO_REUSEPORT、SO_BUSY_POLL、TCP_DEFER_ACCEPT
高级socket选项,提升连接分发与接受性能。
SO_REUSEPORTBUSY_POLL
17
io_uring与异步网络:用io_uring替代epoll,实现真正的异步I/O
io_uring 网络编程,减少事件循环开销。
io_uring异步epoll
18
共享内存通信:多进程/多线程间通过共享内存交换网络数据
共享内存、无锁ring buffer,实现进程间零拷贝通信。
共享内存IPC零拷贝
19
协议栈裁剪:移除不需要的协议层(如IPv6、bridge、netfilter)以提升性能
内核编译裁剪,移除冗余模块,减少协议栈深度。
裁剪内核性能
20
内核参数调优:net.core.rmem_max、net.ipv4.tcp_rmem等关键参数详解
sysctl 网络参数全景,针对低延迟场景调优。
内核参数sysctl调优
21
CPU隔离与isolcpus:将网络处理线程绑定到隔离核,避免调度干扰
isolcpus、cpuset、线程绑核,消除上下文切换延迟。
CPU隔离isolcpus绑核
22
NUMA感知:内存与网卡在NUMA节点上的亲缘性配置
NUMA架构下内存分配与网卡中断亲缘性,避免跨节点访问。
NUMA亲缘性内存
23
用户态TCP/IP协议栈(如mTCP、F-Stack)的部署与调优
主流用户态协议栈部署、性能调优与生产实践。
mTCPF-Stack用户态
24
RDMA编程入门:使用InfiniBand或RoCE v2实现微秒级延迟通信
RDMA 基本操作、内存注册、发送接收,实现微秒级通信。
RDMAInfiniBandRoCE
25
SPDK与NVMe-oF:存储网络中的低延迟协议栈定制
SPDK 用户态存储协议栈,NVMe-oF 低延迟存储网络。
SPDKNVMe-oF存储
26
网络性能基准测试:使用perf、netperf、wrk、pktgen进行延迟与吞吐量测试
常用网络性能工具,延迟、吞吐、丢包率测试方法。
perfnetperfpktgen
27
延迟抖动分析:如何用bpftrace、火焰图定位延迟毛刺
动态追踪、火焰图、延迟直方图,精准定位抖动源。
bpftrace火焰图抖动
28
容器网络优化:Calico、Cilium的eBPF数据面如何降低容器网络延迟
Cilium eBPF 数据面、Calico 调优,容器网络延迟优化。
CiliumeBPF容器
29
金融交易场景:从NIC到应用的全链路延迟优化案例
真实金融交易系统全链路优化,硬件选型与软件调优。
金融全链路案例
30
综合实战:构建一个延迟低于10微秒的HTTP服务器
整合所有技术,从网卡到应用实现10微秒级HTTP响应。
实战HTTP10μs