交易网关内核旁路技术实战

📚 共计 30 章节
01
交易网关概述
什么是交易网关 · 量化系统中的位置 · 低延迟核心挑战
概念定位
02
传统网络协议栈的瓶颈
内核协议栈流程 · 上下文切换 · 中断与轮询权衡
内核性能
03
内核旁路技术原理
从内核态到用户态 · DPDK & OpenOnload · 零拷贝思想
旁路零拷贝
04
DPDK环境搭建
硬件要求 · 大页配置 · UIO驱动绑定
DPDK部署
05
DPDK核心库与API
EAL初始化 · 内存池 · mbuf · 环形缓冲区
API内存
06
DPDK收发包实战
端口初始化 · 接收队列 · 无锁轮询 · 发送流程
收发包轮询
07
Solarflare网卡与OpenOnload
硬件特性 · Onload加速 · TCP旁路实现
SolarflareTCP
08
OpenOnload部署与配置
环境变量 · 透明加速 · 性能调优参数
部署调优
09
用户态协议栈设计
TCP/IP裁剪 · 状态机 · 重传与拥塞控制简化
协议栈用户态
10
零拷贝技术深入
mmap与DMA · 页对齐 · 避免数据搬移
零拷贝DMA
11
无锁数据结构
无锁队列 · CAS · 内存屏障 · ABA问题
无锁并发
12
CPU亲和性与隔离
isolcpus · taskset绑定 · 避免核间干扰
CPU隔离
13
中断亲和性与RSS
网卡多队列 · RSS哈希 · 中断绑定
中断RSS
14
时间戳与时钟同步
PTP硬件时间戳 · TSC · 纳秒级计时
时钟PTP
15
批处理与突发处理
收包合并 · 批量发送 · 分摊开销
批处理突发
16
内存管理优化
HugePage · 内存预分配 · 避免动态分配
内存大页
17
编译优化与内联
GCC优化 · likely/unlikely · 内联函数
编译内联
18
性能测试方法论
延迟测试(pingpong) · 吞吐(pktgen) · 尾延迟
测试延迟
19
性能分析工具
perf · flamegraph · bpftrace · 延迟火焰图
分析火焰图
20
常见性能瓶颈排查
缓存未命中 · TLB miss · 锁竞争 · NUMA
瓶颈NUMA
21
交易网关架构设计
模块划分 · 事件驱动 · 异步流水线
架构事件
22
行情网关实现
UDP组播 · 多路分发 · 快照与增量
行情UDP
23
交易网关实现
订单管理 · FIX协议 · 会话保持 · 风控前置
交易FIX
24
风控模块集成
资金检查 · 频率限制 · 黑白名单 · 熔断
风控熔断
25
多市场接入
跨市场时钟同步 · 订单路由 · 统一接口
多市场路由
26
容错与高可用
主备切换 · 状态同步 · 日志回放 · 健康检查
高可用容错
27
安全与加密
TLS加速 · 硬件加密卡 · 防重放攻击
安全加密
28
生产环境部署
网络拓扑 · 交换机配置 · 布线 · 机房
部署网络
29
监控与告警
延迟监控 · 丢包监控 · 交易量 · 自动化告警
监控告警
30
未来趋势
智能网卡 · FPGA · CXL · AI辅助调优
趋势FPGA