每日一题--计算机网络

一、基础概念类问题

1. TCP 和 UDP 的区别是什么?
  • 回答示例:

    • TCP:面向连接、可靠传输(通过三次握手建立连接,丢包重传)、保证数据顺序(如文件传输、网页访问)。

    • UDP:无连接、不可靠传输(不保证数据到达或顺序)、低延迟(如视频通话、实时游戏)。

  • 加分点:补充实际应用场景(如 HTTP/3 基于 UDP 优化性能)。

2. HTTP 和 HTTPS 的区别?
  • 核心区别:

    • HTTP:明文传输,端口 80,无安全性。

    • HTTPS:通过 SSL/TLS 加密传输,端口 443,需证书验证。

  • 加分点:提到 HTTPS 的加密流程(非对称加密交换密钥 + 对称加密传输数据)。

3. 什么是三次握手和四次挥手?
  • 三次握手(建立 TCP 连接):

    1. 客户端发送 SYN(同步请求)。

    2. 服务端返回 SYN-ACK(确认 + 同步)。

    3. 客户端发送 ACK(最终确认)。

  • 四次挥手(断开连接):

    1. 客户端发送 FIN(终止请求)。

    2. 服务端返回 ACK(确认收到)。

    3. 服务端发送 FIN(自身终止请求)。

    4. 客户端返回 ACK(最终确认)。

  • 加分点:解释为什么需要四次挥手(双方需独立确认关闭)。


二、应用场景类问题

4. 输入 URL 到页面显示的全过程?
  • 回答流程:

    1. DNS 解析域名成 IP 地址。

    2. 建立 TCP 连接(三次握手)。

    3. 发送 HTTP/HTTPS 请求。

    4. 服务器处理请求并返回响应。

    5. 浏览器解析 HTML/CSS/JS 并渲染页面。

    6. 关闭 TCP 连接(四次挥手)。

  • 加分点:提到 CDN 加速、缓存机制(如强缓存/协商缓存)。

  • Cookie:客户端存储(浏览器),有大小限制(约 4KB),可能被篡改。

  • Session:服务端存储(服务器内存/数据库),依赖 Session ID(通常通过 Cookie 传递)。

  • 加分点:说明如何解决分布式 Session 共享问题(如 Redis 集中存储)。


三、问题排查类问题

6. 如何判断网络请求失败的原因?
  • 排查步骤:

    1. 检查 HTTP 状态码(如 404 资源不存在、500 服务器错误)。

    2. 查看浏览器控制台或抓包工具(如 Wireshark、Chrome DevTools)。

    3. 验证 DNS 解析是否正确(nslookup 或 dig)。

    4. 测试网络连通性(ping、telnet 检查端口)。

  • 加分点:举例实际调试经验(如跨域问题导致请求失败)。

7. 什么是跨域问题(CORS)?如何解决?
  • 原因:浏览器同源策略禁止跨域请求(协议/域名/端口不同)。

  • 解决方案:

    • 服务端设置响应头:Access-Control-Allow-Origin: *。

    • 代理服务器转发请求(开发环境常用)。

    • JSONP(仅限 GET 请求,已逐渐淘汰)。

  • 加分点:提到预检请求(Preflight Request)的作用。


四、开放性问题

8. 如何设计一个高并发的网络服务?
  • 关键点:

    • 负载均衡(如 Nginx 分发请求)。

    • 无状态服务设计(方便横向扩展)。

    • 异步处理(消息队列削峰填谷)。

    • 缓存优化(Redis 减少数据库压力)。

  • 加分点:结合具体技术栈(如微服务 + Kubernetes)。

9. 你对 HTTP/2 和 HTTP/3 有哪些了解?
  • HTTP/2:多路复用、头部压缩、服务器推送(基于 TCP)。

  • HTTP/3:基于 QUIC 协议(UDP 实现可靠传输),解决队头阻塞,更快连接建立。

  • 加分点:对比传统 HTTP/1.1 的性能瓶颈。


五、HR 可能关注的软技能问题

10. 你在团队项目中如何解决网络相关的技术难点?
  • 回答框架:

    1. 描述具体问题(如接口响应慢)。

    2. 分析原因(如数据库查询未优化、网络带宽不足)。

    3. 采取的解决方案(如引入缓存、压缩传输数据)。

    4. 最终效果(如延迟降低 50%)。

  • 示例:在开发在线协作工具时,通过 WebSocket 替代轮询优化实时通信。

相关推荐
2501_9151063211 小时前
跨平台抓包工具怎么选?TraceEagle抓包鹰 的四种跨平台能力
网络协议·计算机网络·网络安全·ios·adb·https·udp
流浪00116 小时前
计算机网络篇7:传输层——TCP 网络编程常用接口与调用流程
网络协议·tcp/ip·计算机网络·listen·tcp接口
sbjdhjd2 天前
从 VLAN 到 MSTP 的交换网络入门
网络·计算机网络·mac·ip·stp·vlan·交换机
坐看风云变幻2 天前
《系统架构师成长之路》第 3 期|计算机网络:TCP 三次握手与可靠传输
tcp/ip·计算机网络·系统架构
CS_Zero3 天前
计算机网络通信基础2:带宽和吞吐量、客户端和服务器、网络基础设施
网络·计算机网络
库玛西3 天前
计算机网络第三章:数据链路层
服务器·网络·计算机网络·考研·算法·面试
lazy H4 天前
【计算机网络】第 2 篇:一条数据如何穿过网络?彻底理解数据封装与解封装
网络·经验分享·后端·学习·计算机网络
2501_915909065 天前
抓包工具断点拦截是什么?如何半路拦截修改 HTTP 请求
网络协议·计算机网络·网络安全·adb·https·udp
搞科研的小刘选手5 天前
【见刊检索快 | 重庆线上线下同步】第五届信号处理、计算机网络与通信国际学术会议(SPCNC 2026)
计算机网络·信号处理·通信·学术会议·会议推荐·重庆
2401_872418785 天前
计算机网络——应用层详解:DNS、电子邮件、FTP 与 HTTP 的原理及通信过程
网络协议·计算机网络·http