L0
网络基础
Linux 协议栈与观测所有网络问题的地基。搞清一个包从应用到网线要经过哪些环节,每个环节能用什么命令看,以及延迟、带宽、PPS 三个指标各自受什么限制。
4 个小组 · 8 节课 · 约 4 小时已完成 0/8
1从这里开始
1 节 · 25 分钟还没有实际排障经验就从这节起。一次 curl 串起全过程,把后面要用的名词一次性认全。
2打地基
2 节 · 55 分钟先统一口径、再看清二三层怎么转发。这两节后面每一课都要用到,跳过去会处处别扭。
- 2
带宽、延迟、PPS:三个指标与必背换算
原理入门25 分钟Gbps 与 GB/s 差 8 倍,小包场景真正的瓶颈是 PPS 不是带宽。这节把口径统一。
- →在 Gbps、GB/s、PPS 之间快速换算,并算出线速下的理论 PPS
- →判断一个场景到底受带宽限制还是受 PPS / 延迟限制
- →用带宽延迟积(BDP)解释为什么长肥管道跑不满
- 3
二层与三层:ARP、VLAN、子网与转发
原理入门30 分钟交换机怎么决定往哪个口发,路由器怎么决定下一跳,以及同网段与跨网段的区别。
- →解释 ARP 的作用,并说出 ARP 表异常会造成什么现象
- →看懂 CIDR 前缀,快速算出可用地址数与广播域大小
- →读懂一台 Linux 主机的路由表并预测某个目的地址走哪条路
3走通一个包
3 节 · 95 分钟 · 正文 2/3沿着收发路径走一遍,再看 TCP 的实际行为和内核侧能动的旋钮。
- 4
一个包的旅程:从 send() 到网线
原理30 分钟把发包和收包路径拆成可观测的若干段,后面所有排障都是在这条路径上定位。
- →说出发包路径上的关键环节:socket 缓冲、qdisc、驱动环形队列、DMA
- →说出收包路径上的关键环节:DMA、硬中断、软中断/NAPI、协议栈、socket 队列
- →拿到一个丢包现象时,知道该去哪一层查计数器
- 5
TCP 的脾气:握手、窗口、拥塞与重传
原理30 分钟为什么带宽没跑满却觉得慢?多半是窗口、重传和排队在起作用。
- →解释拥塞窗口、接收窗口、慢启动与拥塞避免的关系
- →区分快速重传与超时重传,判断哪种对业务危害更大
- →判断重传率、RTT、缓冲区膨胀(bufferbloat)三类症状
- 6
内核网络栈调优:中断、队列与 offload
原理深入35 分钟仅大纲同一张网卡,配置对不对能差出几倍性能。这节讲能动的旋钮和动的理由。
- →解释 RSS / RPS / RFS 各自解决什么问题
- →判断该不该开 GRO / LRO / TSO / checksum offload
- →按症状选择调整环形队列、中断合并还是 CPU 亲和性
4动手排障
2 节 · 55 分钟把前面的知识收成一套固定的命令顺序,然后拿一个真实故障练手。