原理教程

每篇教程都是一个可观察、可操作的交互式实验,而不只是一篇文章。

IP 地址原理

入门 交互实验

通过可视化实验理解 IPv4 地址的二进制结构、网络位与主机位、CIDR 前缀,学会计算网络地址、广播地址与可用地址范围。

IPv4二进制CIDR网络地址
约 15 分钟 开始学习

子网掩码与 CIDR

进阶 交互实验

在可视化网络划分实验室里动手做子网划分:修改 CIDR 前缀,实时计算网络地址、广播地址、可用范围,并判断两个 IP 是否同网段。

子网划分CIDR子网掩码VLSM
约 20 分钟 开始学习

TCP 三次握手

进阶 交互实验

用时序动画逐步观察 TCP 建立连接的过程:SYN、SYN+ACK、ACK 报文的序列号变化,以及客户端与服务端 TCP 状态机的迁移。

TCP三次握手SYN状态机
约 15 分钟 开始学习

TCP 四次挥手

进阶 交互实验

逐步观察 TCP 连接拆除过程:FIN/ACK 报文交互、双方状态机迁移,深入理解 TIME_WAIT 状态为什么必须等待 2MSL。

TCP四次挥手TIME_WAIT状态机
约 15 分钟 开始学习

交换机工作原理

进阶 交互实验

在可操作的网络拓扑里发送以太网帧,观察交换机如何学习 MAC 地址表、如何区分未知单播泛洪与广播,以及如何从泛洪进化到精准转发。

交换机MAC 地址表泛洪以太网帧
约 18 分钟 开始学习

DNS 域名解析

进阶 交互实验

跟随一个域名解析请求穿越浏览器缓存、本地 DNS、根服务器、顶级域与权威服务器,分清递归查询与迭代查询,理解缓存与 TTL。

DNS递归查询迭代查询缓存
约 18 分钟 开始学习

HTTP 请求全过程

进阶 交互实验

从输入 URL 到页面渲染:URL 解析、DNS 查询、TCP 连接、TLS 握手、HTTP 请求响应、浏览器解析渲染,串起完整链路。

HTTPHTTPSTLSURL
约 20 分钟 开始学习

计算机如何执行程序

入门 交互实验

用可视化动画跟随 CPU 完成取指、解码、执行、写回的完整指令周期,理解程序计数器、寄存器、ALU 与内存如何协作。

CPU指令周期寄存器ALU
约 15 分钟 开始学习

Tomcat 工作原理

高级 交互实验

跟随一个 HTTP 请求穿过 Tomcat 的 Connector、Engine、Host、Context、Wrapper 直至 Servlet,理解线程池与请求队列的运作。

TomcatServletConnector线程池
约 25 分钟 开始学习

JVM 内存模型

进阶 交互实验

区分 JVM 运行时数据区与 Java 内存模型(JMM):跟随一个对象从栈帧创建到堆分配、引用变更、GC 回收的全过程。

JVM堆栈GC
约 20 分钟 开始学习