D
AI
学习工作台
后端面试题2026-05-221 分钟阅读

网络、HTTP 与 TCP 面试

分层模型、三次握手、HTTP 版本与常见头

网络HTTPTCP后端面试记笔记标记疑惑

分层快速回顾

| 层 | 协议 | 职责 | |---|---|---| | 应用 | HTTP/DNS | 报文语义 | | 传输 | TCP/UDP | 端到端可靠/不可靠 | | 网络 | IP | 路由寻址 | | 链路 | 以太网 | 帧传输 |

后端面试重点在 TCP + HTTP/TLS,偶尔 DNS、ARP。

TCP 要点

  • 可靠:序号、确认、重传、滑动窗口、拥塞控制(慢开始、拥塞避免、快重传/快恢复)。
  • 三次握手:SYN → SYN-ACK → ACK。
  • 四次挥手:FIN → ACK → FIN → ACK;TIME_WAIT 等待 2MSL,防旧包干扰新连接。
  • 粘包:应用层定界(长度前缀、分隔符);Nagle 算法与小包延迟权衡。
UDP:无连接、不保证顺序与到达,适合 DNS、音视频、QUIC 底层。

HTTP 演进

HTTP/1.1Connection: keep-alive 复用 TCP;同一连接上请求仍可能队头阻塞。

HTTP/2:流多路复用、HPACK 压缩头部、服务端推送(实际少用)。

HTTP/3:基于 QUIC(UDP),减少握手 RTT,弱网更稳。

常用状态码:200 成功、301/302 重定向、304 协商缓存、400 客户端错误、401 未认证、403 无权限、404、429 限流、500 服务端错误。

关键头部

  • Host:虚拟主机路由
  • Content-Type / Accept:实体类型
  • Cache-Control / ETag / If-None-Match:缓存
  • Authorization / Cookie:认证
  • X-Forwarded-For:代理链真实 IP
HTTPS:TLS 握手协商密钥,HTTP 内容加密与完整性校验;证书链与 SNI。

实战题方向

  • 从 URL 到页面:DNS → TCP 握手 → TLS → HTTP 请求 → 响应解析
  • 长连接 vs 短连接 对 QPS 与端口耗尽影响。
  • 反向代理 Nginx 负载均衡、超时、缓冲。
  • WebSocket:Upgrade 全双工,与 HTTP 长轮询对比。
GET /api/users HTTP/1.1
Host: api.example.com
Accept: application/json
Authorization: Bearer <token>

答题用「分层 + 时序」画图口述,再补工程经验(连接池大小、超时、重试幂等),比背 RFC 更显水平。

知识卡片

问题

TCP 三次握手过程?

点击翻转查看答案

答案

客户端 SYN → 服务端 SYN+ACK → 客户端 ACK;双方确认序列号能力后建立连接;防旧重复连接初始化。

问题

HTTP/1.1 与 HTTP/2 主要区别?

点击翻转查看答案

答案

1.1 默认持久连接但仍队头阻塞;2 多路复用单连接、头部压缩 HPACK、二进制分帧,可服务器推送(少用)。

问题

GET 与 POST 在语义上区别?

点击翻转查看答案

答案

GET 安全幂等、参数常在 URL、可缓存;POST 常提交实体、非幂等;实际安全取决于服务端实现,不只由方法决定。