计算机网络
校招考察频度:★ 高频(核心必背·高频生死线) 复习主线:网络是校招一二面出题频率最高的底层生命线。面试核心聚焦点:TCP 三次握手/四次挥手状态转移与 2MSL TIME_WAIT、TCP 可靠传输五大机制(滑动窗口/超时重传/快重传/流量控制/拥塞控制)、HTTP/1.1 vs HTTP/2 vs HTTP/3 演进、HTTPS TLS 1.2/1.3 握手与证书链体系、输入 URL 到页面呈现全链路排障。
网络协议栈是所有分布式架构通信的底层血液。理解“分层解决什么问题、每层管哪段、数据如何穿层封装”是解答一切网络深水题的通用框架。
分类考频地图
| 专题 | 核心页面 | 校招考频星级 | 重点考查要点 |
|---|---|---|---|
| TCP 状态机 | TCP 握手与挥手 | ★ 高频(生死线) | 三次握手为什么不是两次或四次、SYN Flood 攻击与 Cookie 防御、四次挥手 TIME_WAIT 为什么是 2MSL 与大量堆积排查 |
| 应用层协议 | HTTP 协议与缓存 | ★ 高频(核心必考) | HTTP 状态码、Keep-Alive 长连接、HTTP/1.1 管道化队头阻塞、HTTP/2 多路复用与二进制分帧、HTTP/3 QUIC 基于 UDP 解决丢包阻塞 |
| 网络安全传输 | HTTPS 与 TLS | ★ 高频(高频必考) | 为什么需要 HTTPS、对称+非对称混合加密、CA 数字证书与中间人防伪造、TLS 1.2(2-RTT)vs TLS 1.3(1-RTT)握手演进 |
| 经典全链路串讲 | 输入 URL 到展示 | ★ 高频(综合必问) | 浏览器缓存 → 本地与递归 DNS 查询 → TCP 握手 + TLS 协商 → HTTP 请求与网关路由 → 浏览器 DOM 渲染管道 |
| TCP 可靠性机制 | TCP 可靠传输与拥塞 | ☆ 中频(机制解析) | 序列号与确认应答、超时重传与快速重传、滑动窗口(零窗口与坚持定时器)、拥塞控制四部曲(慢启动/拥塞避免/快重传/快恢复) |
| 域名解析与安全 | DNS 解析 | ☆ 中频(原理扩展) | 根域名服务器、递归查询 vs 迭代查询、DNS 劫持与污染防御、HttpDNS 移动端防劫持与 K8s CoreDNS 优化 |
| 实时通信长连接 | WebSocket 实时通信 | ☆ 中频(应用拓展) | HTTP 101 升级握手、Sec-WebSocket-Key 防误升级、应用层心跳 Ping/Pong 防 NAT 静默超时、WebSocket vs SSE 流式推送选型 |
| 新一代传输协议 | UDP 与 QUIC 协议 | ☆ 中频(协议创新) | TCP vs UDP 本质权衡、HTTP/2 丢包引发的 TCP 队头阻塞痛点、QUIC 0-RTT 极速握手与网络切换连接迁移 |
| 网络排查实战 | 网络排查与工具 | ☆ 中频(排查实战) | ping/traceroute ICMP 原理、netstat/ss 查看连接状态、tcpdump 抓包与 Wireshark 报文分析定位问题 |
| 底层寻址与 NAT | ARP 寻址与 NAT 穿透 | 低频(底层拓展) | 为什么有了 IP 还要 MAC、ARP 请求广播与单播应答、跨网段路由 MAC 替换、NAT/NAPT 端口复用、P2P 打洞与 STUN/TURN |
分层模型
TCP/IP 四层: 各管一段
| 层 | 职责 | 代表协议 | 寻址 |
|---|---|---|---|
| 应用层 | 业务语义 | HTTP、DNS、WebSocket | URL |
| 传输层 | 端到端可靠/不可靠 | TCP、UDP | 端口 |
| 网络层 | 跨网路由 | IP、ICMP | IP 地址 |
| 链路层 | 相邻节点传输 | 以太网、WiFi | MAC 地址 |
OSI 七层是理论模型(多了会话层/表示层),实际用 TCP/IP 四层。面试先答分层职责再答”实际以 TCP/IP 为准”。
分层解决什么
- 每层独立演化:换 HTTP/3 不用动 IP,换网卡不用动 TCP
- 每层只关心自己的事:传输层不管路由,网络层不管业务
- 封装与解封装:发送方逐层加头,接收方逐层剥头
封装过程
应用层: [HTTP 报文]
传输层: [TCP 头 | HTTP 报文] ← 加端口
网络层: [IP 头 | TCP 头 | HTTP 报文] ← 加 IP
链路层: [MAC 头 | IP 头 | ... | CRC] ← 加 MAC 和校验面试画这个图:数据从上往下加头(封装),从下往上剥头(解封装)。每层只认识自己的头。
本分类地图
- TCP:握手挥手、可靠传输与拥塞控制
- HTTP/HTTPS/DNS:应用层三巨头
- UDP/QUIC/WebSocket:替代与补充
- 输入 URL 到页面展示:全链路串讲(面试经典题)
- 网络排查与工具:实战
面试追问
- 为什么分层? 每层独立演化、职责单一。换协议不影响其他层
- 四层和七层? OSI 七层是理论(含会话/表示层),实际用 TCP/IP 四层
- 封装是什么? 每层加自己的头:TCP 加端口、IP 加地址、MAC 加硬件地址。收方逐层剥
- 传输层和网络层的区别? 网络层主机到主机(IP 路由),传输层进程到进程(端口 + 可靠性)
- MAC 和 IP 的区别? MAC 是链路层硬件地址(相邻节点寻址),IP 是网络层逻辑地址(跨网寻址)