追踪一次真实请求(https://example.com/page),看它在各层如何接力。
1. DNS 解析 把 example.com 变成 IP —— 第 2 章
2. TCP 三次握手 与服务器 443 端口建连 —— 第 3、4 章
3. TLS 握手 协商会话密钥,验证证书 —— 第 8 章
4. HTTP 请求 发出 GET /page —— 第 2 章
5. 服务器处理 生成响应 —— 第 2 章
6. HTTP 响应 状态码 + 正文返回 —— 第 2 章
7. 四次挥手 连接优雅关闭 —— 第 4 章
8. 浏览器渲染 解析 HTML/CSS/JS 画页面 —— 浏览器层
第 2–6 步每次数据下发都再经过 TCP 分段 → IP 分组 → 以太网帧 → 物理信号 逐层封装,跨越多台路由器、交换机(见第 5、6、7 章)。
connect 在此完成,第 9 章)。GET /page HTTP/1.1
Host: example.com
Accept: text/html
200 OK + HTML。curl -v https://example.com/page # 打印 DNS、握手、请求全过程
-v 依次显示 Trying <IP>...(DNS 结果)、连接建立、TLS 握手(SSL connection using TLSv1.3)、请求头、响应头。用 tcpdump -i any port 443 抓包,能直接看到 SYN/FIN、TLS ClientHello、HTTP 报文。
| 层 | 章节 | 在这次请求中做了什么 |
|---|---|---|
| 应用层 | 第 2 章 | DNS 解析、HTTP 请求/响应 |
| 安全层 | 第 8 章 | TLS 握手、证书验证、加密 |
| 传输层 | 第 3、4 章 | 端口寻址、三次握手、可靠传输、拥塞控制 |
| 网络层 | 第 5 章 | IP 寻址、路由转发、ICMP 诊断 |
| 链路层 | 第 6 章 | MAC 寻址、ARP、帧封装 |
| 物理层 | 第 7 章 | 信号编码、介质传输 |