【Cilium / eBPF】BPF 挂载与程序生命周期:TC、XDP、cgroup 在路径上的角色
说明 Cilium v1.20 如何在 XDP、TC、cgroup socket 等 hook 上分工;对照 bpf_xdp/host/lxc/sock 源码入口与 Intro 中的数据面对象;交代加载/替换边界,不重写 verifier 算法。
Linux 内核、存储与网络、可观测性、系统架构与大模型基础设施的工程笔记:机制拆解、踩坑复盘与可核对证据,少空谈。
共 5 篇文章 · 返回首页
说明 Cilium v1.20 如何在 XDP、TC、cgroup socket 等 hook 上分工;对照 bpf_xdp/host/lxc/sock 源码入口与 Intro 中的数据面对象;交代加载/替换边界,不重写 verifier 算法。
dev_queue_xmit() 不是直接把包交给网卡——中间还有一层 Traffic Control。本文从 Linux 6.6 内核源码拆解 TC 框架的完整实现:struct Qdisc 与 Qdisc_ops 操作表、pfifo_fast/fq_codel/HTB/TBF 的内核实现差异、TCQ_F_CAN_BYPASS 快路径、TCQ_F_NOLOCK 无锁排队、EDT(Earliest Departure Time)调度模型、TC BPF direct-action 模式,以及 MQ 多队列根 qdisc 与 netdev_queue 的关系。
生产环境的网络条件远比实验室复杂——延迟抖动、随机丢包、带宽突变、链路故障。本文系统讲解 tc netem 的完整用法、Mininet 虚拟网络拓扑搭建、网络层混沌工程(Toxiproxy/Comcast/tc-netem)的实战方法,以及如何在 CI/CD 流水线中集成网络条件测试,确保应用在恶劣网络下的鲁棒性。
带宽管理是网络工程的核心能力。本文从 Linux tc 的 qdisc/class/filter 三层模型出发,系统讲解 HTB 分层令牌桶、TBF 令牌桶过滤器、FQ/fq_codel 公平队列、tc-bpf 可编程流量控制、netem 网络模拟,以及 QoS 策略设计和容量规划的工程实践。
Bufferbloat 是互联网延迟的隐形杀手。