计算机网络全栈连载计划

📊 总体概览

连载周期 :9-12个月
文章总量 :165篇
发布频率 :每周2-3篇(周二、周四、周日 21:30)
目标读者:工程师、网络爱好者、想深入理解网络的开发者


🎯 六大阶段规划

阶段1:网络基础(20篇)

时间 :第1-2个月
深度 :入门级
目标:建立网络思维框架

核心主题:
  1. 网络分层那点事(3篇)

    • OSI七层 vs TCP/IP四层,到底听谁的
    • 为什么要有分层?工程视角的思考
    • 数据在各层是如何"变形"的
  2. 物理层与数据链路层(4篇)

    • 网卡到底在干什么
    • MAC地址:网卡的身份证
    • ARP协议:谁在帮我们找IP
    • 交换机:智能的"邮递员"
  3. 网络层基础(5篇)

    • IP地址:互联网的门牌号
    • 子网掩码:如何划分"小区"
    • 路由表:数据包的导航仪
    • ICMP:网络的"心跳检测"
    • ping命令背后的故事
  4. 传输层入门(5篇)

    • TCP vs UDP:可靠与速度的博弈
    • 端口:进程的"门牌号"
    • 三次握手:为什么不是两次或四次
    • 四次挥手:分手的艺术
    • 滑动窗口:流量的"红绿灯"
  5. 应用层概览(3篇)

    • HTTP/HTTPS:网页背后的协议
    • DNS:互联网的"电话簿"
    • Socket编程:如何用代码说话

阶段2:抓包实战(25篇)

时间 :第3-4个月
深度 :进阶级
目标:培养抓包分析能力

核心主题:
  1. 抓包工具入门(5篇)

    • tcpdump:命令行抓包神器
    • Wireshark:图形化分析利器
    • 如何抓到"正确"的包
    • 过滤器:从海量数据中找线索
    • 抓包实战:分析一次HTTP请求
  2. TCP抓包分析(8篇)

    • 三次握手的真实抓包
    • 四次挥手的各种情况
    • 重传机制:超时与快速重传
    • 拥塞控制:慢启动与拥塞避免
    • TCP选项:那些隐藏的细节
    • keep-alive:连接保活的真相
    • 异常连接:SYN攻击与防护
    • TCP状态机:抓包看状态转换
  3. UDP抓包实战(4篇)

    • UDP的简洁之美
    • DNS查询抓包分析
    • 视频流协议分析
    • UDP丢包:如何定位问题
  4. HTTP/HTTPS抓包(5篇)

    • HTTP/1.1 vs HTTP/2:抓包对比
    • HTTPS握手过程完整分析
    • HTTP缓存机制:304的奥秘
    • WebSocket:从HTTP到长连接
    • HTTP性能优化:抓包看效果
  5. 常见问题抓包分析(3篇)

    • 连接超时:到底卡在哪里
    • 丢包重传:网络抖动的真相
    • 性能瓶颈:如何通过抓包定位

阶段3:协议深入(25篇)

时间 :第5-6个月
深度 :深入级
目标:理解协议设计思想

核心主题:
  1. TCP协议深度解析(8篇)

    • 序列号与确认号:可靠性的基石
    • 滑动窗口机制详解
    • 拥塞控制算法:从Reno到BBR
    • 快速重传与快速恢复
    • 延迟确认:性能与可靠性的平衡
    • Nagle算法:小包合并策略
    • TCP保活机制
    • TCP紧急数据:URG标志的真相
  2. UDP协议深入(4篇)

    • UDP校验和:为什么可以关闭
    • UDP多播与广播
    • QUIC协议:UDP之上的可靠传输
    • UDP在云原生中的应用
  3. IP协议详解(6篇)

    • IP分片:大包的拆分艺术
    • TTL:防止数据包"流浪"
    • IP选项:那些被遗忘的功能
    • 路由协议概览:RIP/OSPF/BGP
    • IP分片重组:内核中的实现
    • IP地址分配:DHCP协议分析
  4. ICMP协议深入(3篇)

    • ICMP类型详解:不止ping
    • 路径MTU发现:PMTUD
    • ICMP重定向:路由的"建议"
  5. 应用层协议(4篇)

    • HTTP/2与HTTP/3:协议演进
    • TLS/SSL:加密通信的基石
    • DNS协议深度解析
    • gRPC与HTTP/2:现代RPC

阶段4:内核路径(30篇)

时间 :第7-8个月
深度 :内核级
目标:理解内核网络栈实现

核心主题:
  1. 网络子系统架构(5篇)

    • Linux网络栈全景图
    • sk_buff:数据包的内核表示
    • 网络设备驱动:网卡如何工作
    • 中断处理:从硬件到内核
    • NAPI:高性能中断处理
  2. 数据包接收路径(8篇)

    • 网卡收到数据后的第一件事
    • 软中断:netif_rx
    • 协议栈注册:inet_add_protocol
    • IP层处理:ip_rcv
    • TCP层入口:tcp_v4_rcv
    • socket查找:如何找到目标socket
    • 数据放入接收队列
    • 唤醒应用进程
  3. 数据包发送路径(8篇)

    • 应用层发送:send系统调用
    • socket层处理:sock_sendmsg
    • TCP层处理:tcp_sendmsg
    • IP层封装:ip_queue_xmit
    • 邻居子系统:ARP解析
    • 队列规则:qdisc
    • 网卡发送:hard_start_xmit
    • DMA与零拷贝
  4. TCP连接管理(5篇)

    • socket创建:sock_alloc
    • bind与listen:准备接收连接
    • accept:获取新连接
    • connect:主动建立连接
    • close:关闭连接的各种情况
  5. 性能优化(4篇)

    • RPS/RFS:多核接收优化
    • XPS:多核发送优化
    • TCP参数调优
    • 网络性能监控工具

阶段5:IPv4/IPv6(25篇)

时间 :第9个月
深度 :协议级
目标:理解双栈网络

核心主题:
  1. IPv4深入(8篇)

    • IPv4地址空间:为什么不够用
    • NAT:地址转换的利与弊
    • 私有地址与公网地址
    • IPv4头部字段详解
    • 分片与重组的内核实现
    • IPv4路由表查找算法
    • IPv4的局限性
    • IPv4到IPv6的过渡策略
  2. IPv6基础(7篇)

    • IPv6地址格式:128位的挑战
    • IPv6地址类型:单播/多播/任播
    • IPv6头部简化:为什么更高效
    • IPv6地址自动配置:SLAAC
    • IPv6邻居发现:替代ARP
    • IPv6扩展头部:灵活的设计
    • IPv6的部署现状
  3. IPv6高级特性(5篇)

    • IPv6多播:高效的一对多通信
    • IPv6移动性支持
    • IPv6安全:IPsec
    • IPv6过渡技术:双栈、隧道、翻译
    • IPv6在云原生中的应用
  4. 双栈网络实践(5篇)

    • Linux双栈配置
    • 应用程序支持IPv6
    • DNS双栈解析
    • IPv6抓包分析
    • IPv6性能对比

阶段6:eBPF观测(40篇)

时间 :第10-12个月
深度 :专家级
目标:掌握eBPF网络观测能力

核心主题:
  1. eBPF基础(8篇)

    • eBPF是什么:内核可编程时代
    • eBPF程序类型:网络相关
    • eBPF maps:内核与用户空间通信
    • eBPF加载流程:从字节码到内核
    • eBPF工具链:bcc/bpftool/libbpf
    • eBPF限制:安全沙箱
    • eBPF vs 传统监控:为什么更高效
    • eBPF网络钩子:有哪些可用
  2. eBPF网络观测(10篇)

    • XDP:极致性能的数据包处理
    • TC(Traffic Control):流量控制
    • socket过滤:BPF_SOCKET_FILTER
    • kprobe:内核函数追踪
    • tracepoint:内核事件追踪
    • eBPF追踪TCP连接
    • eBPF监控网络延迟
    • eBPF统计丢包原因
    • eBPF分析网络吞吐
    • eBPF追踪DNS查询
  3. eBPF网络编程(10篇)

    • XDP实现DDoS防护
    • XDP实现负载均衡
    • TC实现流量整形
    • eBPF实现NAT
    • eBPF实现防火墙
    • eBPF实现网络监控
    • eBPF实现协议解析
    • eBPF实现网络策略
    • eBPF实现服务网格
    • eBPF实现可观测性
  4. eBPF实战案例(8篇)

    • 排查网络延迟问题
    • 排查连接建立失败
    • 排查丢包问题
    • 排查性能瓶颈
    • 实现网络SLA监控
    • 实现网络故障自愈
    • 实现网络流量分析
    • 实现网络安全检测
  5. eBPF生态与未来(4篇)

    • Cilium:基于eBPF的网络解决方案
    • Katran:Facebook的负载均衡器
    • eBPF在云原生的应用
    • eBPF未来发展方向

📅 发布节奏表

月份 阶段 文章数 累计
第1-2月 网络基础 20 20
第3-4月 抓包实战 25 45
第5-6月 协议深入 25 70
第7-8月 内核路径 30 100
第9月 IPv4/IPv6 25 125
第10-12月 eBPF观测 40 165

相关推荐
Libraeking1 小时前
02 深度剖析:MCP 协议底层的 JSON-RPC 机制与生命周期
网络协议·rpc·json
袁袁袁袁满1 小时前
Linux如何保留当前目录本身并清空删除目录内的所有内容(文件+文件夹)?
linux·运维·服务器·清空删除目录内的所有内容
济6171 小时前
ARM Linux 驱动开发篇---Linux设备树实战-- Ubuntu20.04
linux·嵌入式·嵌入式linux驱动开发
Chasing Aurora1 小时前
vscode连接 服务器进行 深度学习
linux·ide·vscode·深度学习·研究生·解压缩·连接服务器
未名编程1 小时前
Linux / macOS / Windows 一条命令安装 Node.js + npm(极限一行版大全)
linux·macos·node.js
哈哈浩丶3 小时前
LK(little kernel)-3:LK的启动流程-作为Android的bootloarder
android·linux·服务器
圥忈&&丅佽&&扗虖4 小时前
linux 安装docker和docker-compose
linux·运维·docker
清水白石00810 小时前
突破并行瓶颈:Python 多进程开销全解析与 IPC 优化实战
开发语言·网络·python
崎岖Qiu10 小时前
【计算机网络 | 第十二篇】「网络层」概述与服务模型
网络·笔记·计算机网络