计算机网络知识体系概览
什么是计算机网络?
计算机网络是将多台计算机通过通信线路和协议连接起来、实现资源共享和信息传递的系统。我们每天使用的互联网(Internet)就是世界上最大的计算机网络。
对于前端工程师来说,计算机网络知识回答了一个根本问题:前端发出的请求是如何到达服务器、又如何把数据传回来的? 从你在浏览器输入 URL 的那一刻,到页面内容呈现在眼前,背后经历了 DNS 解析、TCP 连接、HTTP 通信、数据传输等一系列网络过程。
前端为什么要学计算机网络? 网络是前端绕不开的「黑盒」,搞懂它能解决三类问题:
- 调试:接口为什么 404、CORS 报错、请求 pending 不返回——都得从协议层定位。
- 性能:HTTP/2 多路复用、CDN 就近接入、Keep-Alive 复用连接,是首屏优化的重要手段。
- 安全:HTTPS 证书校验、Cookie 的
HttpOnly/SameSite、JWT 是否安全,都是面试常考。
前端面试的核心知识地图是什么? 大致分五块,互相穿插:
- 应用层:
HTTP/HTTPS、状态码、请求头、TLS 握手、HTTP/2 与 HTTP/3。 - 传输层:
TCP三次握手/四次挥手、与UDP的取舍。 - 基础设施:DNS 解析链路、CDN 回源、正反向代理。
- API 设计:RESTful 规范、GraphQL 与 REST 的差异。
- 认证鉴权:Cookie/Session vs JWT,跨域怎么带凭证。
前端为什么要学网络知识?
- 接口调试:请求为什么 404?为什么跨域了?为什么超时了?——这些都需要网络知识来排查
- 性能优化:HTTP/2 的多路复用、CDN 部署、资源压缩、请求合并——网络是前端性能瓶颈的主要来源之一
- 安全防护:HTTPS 如何加密?Cookie 的安全属性有哪些?JWT 和 Session 哪个更安全?
- 面试必考:TCP 三次握手、HTTP 状态码、HTTPS 原理、HTTP/2 vs HTTP/3 是后端和前端面试的共同高频题
核心知识点概览
HTTP/HTTPS 协议——Web 通信的"语言"
HTTP(超文本传输协议) 是浏览器和服务器之间通信的规则。每次你访问一个网页,浏览器就会发送一个 HTTP 请求,服务器返回一个 HTTP 响应。面试必考知识包括:请求方法(GET/POST/PUT/DELETE 的区别)、状态码(200/301/304/404/500 的含义)、请求头/响应头。
HTTPS 是 HTTP 的加密版本——在 HTTP 和 TCP 之间加了一层 TLS(Transport Layer Security) 加密层,保证通信不被窃听和篡改。面试经常考 TLS 握手过程和证书验证原理。
TCP/UDP——数据传输的"管道"
TCP(传输控制协议) 是一种可靠的传输协议——它保证数据按顺序、不丢失、不重复地到达对方。TCP 的三次握手(建立连接)和四次挥手(断开连接)是面试的经典考题。
UDP(用户数据报协议) 是一种不可靠但更快的协议——不保证顺序、可能丢包,但延迟低,适合视频通话、直播、游戏等实时场景。
DNS——把域名变成 IP 地址
你输入 www.google.com,但计算机只认 IP 地址(如 142.250.80.100)。DNS(Domain Name System) 就是负责将域名翻译成 IP 地址的系统——就像互联网的"电话簿"。DNS 解析过程涉及浏览器缓存、操作系统缓存、路由器缓存、递归解析等多个层级。
HTTP/2 和 HTTP/3——更快的 Web
HTTP/2 引入了多路复用(一个连接并发多个请求)、头部压缩、服务器推送,解决了 HTTP/1.1 的队头阻塞问题。HTTP/3 更进一步,用 QUIC 协议(基于 UDP)替换了 TCP,进一步降低连接延迟。
认证与鉴权
Cookie + Session 是传统的认证方案——服务端存储会话信息,客户端通过 Cookie 携带会话 ID。JWT(JSON Web Token) 是现代方案——将认证信息加密编码在 Token 中,服务端不需要存储状态。两者的优缺点对比是面试常见题。
学习建议
- HTTP/HTTPS + TCP/UDP → 面试必考的双子星
- DNS + CDN → 理解请求全链路
- Cookie/Session + JWT → 认证鉴权基础
- RESTful API → 前后端协作必备
- HTTP/2·3 + 网络安全 → 进阶优化