惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
aimingoo的专栏
aimingoo的专栏
S
SegmentFault 最新的问题
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
博客园 - 【当耐特】
月光博客
月光博客
C
Check Point Blog
T
The Blog of Author Tim Ferriss
罗磊的独立博客
博客园 - Franky
MongoDB | Blog
MongoDB | Blog
H
Help Net Security
Microsoft Security Blog
Microsoft Security Blog
B
Blog
阮一峰的网络日志
阮一峰的网络日志
腾讯CDC
美团技术团队
N
Netflix TechBlog - Medium
Stack Overflow Blog
Stack Overflow Blog
Y
Y Combinator Blog
L
LangChain Blog
The Cloudflare Blog

土法炼钢兴趣小组的算法知识备份

国密算法与国密 TLS 系列索引 【系统架构设计】架构质量属性:不只是"高可用高性能" 【系统架构设计百科】告警策略:如何避免"狼来了" 【系统架构设计】CQRS:读写分离的架构哲学 【系统架构设计】空间架构:极端扩展场景的解法 【系统架构设计】微服务架构深度审视:优势、代价与适用边界 【系统架构设计】扩展性原理:水平、垂直与对角扩展 【系统架构设计】无状态设计:扩展的第一步也是最难的一步 【系统架构设计】缓存架构:从本地到分布式的多级缓存体系 【系统架构设计】管道与过滤器:Unix 哲学的架构表达 【系统架构设计】复杂性管理:架构的核心战场 【系统架构设计】消息队列架构:异步解耦的设计与陷阱 【系统架构设计】CDN 架构:全球加速的设计原理 【系统架构设计】连接池设计:被忽视的性能杀手 【系统架构设计】弹性设计模式:熔断器、舱壁与超时 【系统架构设计】高可用设计模式:冗余、故障转移与仲裁 【系统架构设计】容量规划:从拍脑袋到数据驱动 【系统架构设计】数据库扩展:分库分表的工程实践与替代方案 【系统架构设计】SLO 工程:可靠性的量化管理 【系统架构设计】性能建模:用数学思维分析系统瓶颈 【系统架构设计】混沌工程:主动验证系统的韧性 【系统架构设计】零拷贝与内存映射:数据搬运的极致优化 【系统架构设计】线程模型:从 thread-per-request 到协程 【系统架构设计】容灾架构:多活与灾备设计 【系统架构设计】数据库性能模式:索引、查询与连接管理 【系统架构设计】数据建模:从关系范式到文档模型的真实权衡 【系统架构设计】吞吐量优化:批处理、流水线与并发模型 【系统架构设计】流处理架构:从批处理到实时的范式迁移 【系统架构设计】搜索引擎架构:倒排索引之上的系统设计 【系统架构设计】时序数据架构:监控与 IoT 的存储设计
Linux 网络子系统深度拆解
2026-04-20 · via 土法炼钢兴趣小组的算法知识备份

这个系列的目标是把 Linux 内核网络子系统拆开来讲清楚。不画概念图糊弄,而是深入到具体的内核函数、数据结构字段、调度时机。每篇文章都基于 Linux 6.6 LTS 源码,配合 bpftrace/perf 实测追踪。

读者定位:有 C 语言基础的高级网络工程师、内核开发者、SRE。 内核版本:Linux 6.6 LTS(如有 6.8 差异则标注)。


第一部分:基础设施

  1. sk_buff 全解:内核网络包的终极容器
  2. net_device 与网卡驱动模型:从硬件到内核的接口契约
  3. 收包路径全解:从 NIC 中断到 socket 接收队列
  4. 发包路径全解:从 send() 到网线
  5. 软中断与 ksoftirqd:网络包处理的调度引擎

第二部分:协议栈内核实现

  1. IP 层内核实现:路由查找、分片与转发
  2. TCP 内核实现(上):连接管理与状态机
  3. TCP 内核实现(下):数据传输与拥塞控制
  4. UDP 内核实现与 socket lookup 优化
  5. Socket 层内核实现:从 VFS 到协议栈的桥梁
  6. 邻居子系统与 ARP:L2 地址解析的内核实现

第三部分:核心子系统

  1. 路由子系统深度拆解:FIB、策略路由与路由缓存
  2. Netfilter 内核实现:钩子、conntrack 与 NAT
  3. Traffic Control 深度拆解:qdisc、class 与 filter
  4. 网络命名空间:内核级网络隔离的实现
  5. 虚拟网络设备内核实现:veth、bridge 与 macvlan
  6. 隧道协议内核实现:VXLAN、IPIP、GRE 与 WireGuard

第四部分:性能与扩展

  1. 多队列与流量分发:RSS/RPS/RFS/XPS
  2. 分段卸载:GRO/GSO/TSO 的内核实现与陷阱
  3. 网络子系统内存管理:sk_buff 分配、page pool 与 NUMA
  4. XDP 内核实现:在驱动层重编程网络栈
  5. eBPF 网络钩子全景:TC/XDP/socket/cgroup

第五部分:诊断与调优

  1. 内核网络追踪工具箱:bpftrace/perf/ftrace 实战
  2. 网络丢包定位:从 drop_monitor 到 kfree_skb 追踪
  3. 内核网络调优方法论:从基准测试到生产验证

同主题继续阅读

把当前热点继续串成多页阅读,而不是停在单篇消费。

2026-04-20 · linux / networking

【Linux 网络子系统深度拆解】IP 层内核实现:路由查找、分片与转发

IP 层是 Linux 网络栈的中枢——收包时决定本地投递还是转发,发包时查路由、过 Netfilter、做分片。本文从 Linux 6.6 内核源码出发,拆解 ip_rcv → 路由决策 → ip_local_deliver / ip_forward 的完整路径,深入 FIB 表的 LC-trie 实现、策略路由 ip rule 选表机制、IP 分片/重组状态机、PMTU 发现与 FNHE 缓存,以及 Netfilter 五个钩子点的实际调用时机。

2026-04-20 · linux / networking

【Linux 网络子系统深度拆解】sk_buff 全解:内核网络包的终极容器

sk_buff 是 Linux 内核网络栈的通用货币——每一个收到或发出的网络包,都必须装在这个容器里走完全程。本文从 Linux 6.6 内核源码出发,拆解 sk_buff 的内存布局、四大指针操作、clone 与 copy 的代价差异、skb_shared_info 的 fragment 机制,并用 bpftrace 实测 sk_buff 分配热点和生命周期。

2026-04-25 · linux / networking

【eBPF 系列】XDP:在网卡驱动层就把包丢掉

当 DDoS 洪水来袭,iptables 在协议栈里挣扎,而 XDP 在网卡驱动层就把垃圾包丢了。不进协议栈、不分配 skb、不走 netfilter——这才是丢包该有的样子。