计算机网络面试题库
这里记录了计算机网络与协议相关的核心面试题:
TCP/IP 与传输层
- 简述 OSI 七层模型和 TCP/IP 四层模型?
- TCP 和 UDP 的区别是什么?各自的应用场景?
- 详细描述 TCP 的三次握手过程?为什么不能是两次?
- 详细描述 TCP 的四次挥手过程?为什么需要 TIME_WAIT 状态?
- 如果已经建立了连接,但是客户端突然出现故障了怎么办?(保活机制 KeepAlive)
- TCP 是如何保证可靠传输的?
- 详细讲讲 TCP 的滑动窗口机制?
- 详细讲讲 TCP 的拥塞控制机制(慢启动、拥塞避免、快重传、快恢复)?
- 什么是粘包和半包问题?如何解决?
HTTP 与应用层
- 浏览器输入 URL 到页面渲染出来的整个过程是怎样的?
- HTTP 常见的状态码有哪些(200, 301, 302, 401, 403, 404, 500, 502, 504)?
- GET 和 POST 请求的区别是什么?
- HTTP 1.0、HTTP 1.1、HTTP 2.0、HTTP 3.0 的主要区别和演进?
- HTTP 和 HTTPS 的区别?
- 详细描述 HTTPS 的加密过程(TLS/SSL 握手过程)?
- 什么是对称加密和非对称加密?HTTPS 为什么要结合使用它们?
- 什么是 WebSocket?它和 HTTP 有什么关系?
- Cookie 和 Session 的区别是什么?
- 什么是 JWT(JSON Web Token)?它和 Session 的优缺点对比?
网络基础与其他
- DNS 的解析过程是怎样的?
- 什么是 ARP 协议?它的工作原理是什么?
- 什么是跨域问题(CORS)?如何解决跨域?
- 常见的网络攻击有哪些(DDoS、CSRF、XSS、SQL 注入)?如何防范?