超实用计算机网络面试题,快来学习一下

引言

计算机网络作为程序员的内功,不仅要做到深入理解,面试题也要详细掌握,跟着作者的节奏好好复盘一下吧

1. OSI 模型和 TCP/IP 模型的区别是什么?各层的主要功能是什么?

考察点:网络分层架构、协议栈理解
答案方向

  • OSI 分为 7 层(物理层→数据链路层→网络层→传输层→会话层→表示层→应用层),TCP/IP 简化为 4 层(网络接口层→网络层→传输层→应用层)。
  • 关键区别:OSI 是理论模型,TCP/IP 是实际工业标准;OSI 严格分层,TCP/IP 允许跨层交互。

2. TCP 和 UDP 的区别是什么?分别适用于哪些场景?

考察点:传输层协议特性
答案方向

  • TCP:面向连接、可靠传输、流式数据、拥塞控制(如 HTTP、FTP)。
  • UDP:无连接、不可靠、低延迟、面向数据报(如视频流、DNS 查询)。
  • 举例:视频会议用 UDP 避免延迟,文件传输用 TCP 保证完整性。

3. HTTP 常见的状态码有哪些?分别代表什么含义?

考察点:HTTP 协议细节
答案方向

  • 1xx:临时响应(如 100 Continue)。
  • 2xx:成功(如 200 OK、201 Created)。
  • 3xx:重定向(如 301 Moved Permanently、304 Not Modified)。
  • 4xx:客户端错误(如 404 Not Found、403 Forbidden)。
  • 5xx:服务器错误(如 500 Internal Server Error)。

4. DNS 解析过程是怎样的?请描述从输入域名到获取 IP 的完整流程。

考察点:域名解析机制
答案方向

  1. 浏览器检查本地缓存→系统 hosts 文件→本地 DNS 缓存。
  2. 递归查询本地 DNS 服务器,若未命中则迭代查询根域名服务器→顶级域名服务器→权威域名服务器。
  3. 最终返回 IP 地址,浏览器建立连接。
    扩展:CDN 如何通过智能 DNS 调度优化解析路径?

5. 什么是 DDoS 攻击?如何防御?

考察点:网络安全
答案方向

  • 定义:分布式拒绝服务攻击,通过大量伪造请求耗尽目标资源。
  • 常见类型:SYN Flood、UDP Flood、HTTP GET Flood。
  • 防御措施:
    • 流量清洗(如黑洞路由、专用设备)。
    • 部署 CDN 分散流量。
    • 限制请求频率(如 Nginx 限流)。
    • 使用云安全服务(如阿里云盾、AWS Shield)。

附加题(选做)

问题:WebSocket 和 HTTP 的区别是什么?为什么 WebSocket 更适合实时通信?
答案方向

  • HTTP 是无状态、请求 - 响应模式;WebSocket 是长连接、全双工通信。
  • WebSocket 减少连接建立开销,支持服务器主动推送(如聊天、实时通知)。

你可能感兴趣的:(计算机网络,学习)