TCP/IP 网络模型面试核心考点总结02(基础篇)

🚀 经典面试题:键入网址到网页显示,期间发生了什么?

这条题目是考察网络基础的"大杀器",核心流程可以概括为:应用层解析 -> DNS 寻址 -> 协议栈委托 -> TCP 可靠传输 -> IP 远程定位


1. 第一步:应用层解析(HTTP)

  • 解析 URL :浏览器提取出 **Web 服务器名(域名)**和 文件名(资源路径)
    • 若路径省略,默认请求 /index.html
  • 生成 HTTP 请求:浏览器根据解析结果生成包含方法(GET/POST)、路径、协议版本、Header 的 HTTP 报文。

2. 第二步:真实地址查询(DNS)------ "指路不带路"

在委托操作系统发包前,必须获取目标服务器的 IP 地址

📌 核心疑问解答:DNS 根域服务器到底怎么理解?

  1. 天生认知 :全世界所有 DNS 服务器出厂/配置时,就内置固化了根域 DNS 服务器的 IP 地址。
  2. 树状层级. (根) -> .com (顶级域) -> baidu.com (权威域)。
  3. 查询流程(面试必考)
    • 缓存查找:浏览器缓存 -> 操作系统缓存 -> Hosts 文件 -> 本地 DNS 服务器(LDNS)。
    • 递归与迭代 :若 LDNS 无缓存,它会依次询问:根 DNS (指引 TLD) -> 顶级域 DNS (指引权威) -> 权威 DNS(给出最终 IP)。

3. 第三步:协议栈的指南针(TCP 与 IP)

获取 IP 后,浏览器通过调用 Socket 库 委托操作系统协议栈工作。

🛠️ 传输层:可靠性(TCP)

  • TCP 头部关键字段

    • 端口号:源端口(随机)+ 目标端口(HTTP 80 / HTTPS 443)。
    • 序列号 (Seq):解决乱序问题。
    • 确认号 (Ack):解决丢包重传问题。
    • 窗口大小:流量控制。
  • TCP 三次握手(核心中的核心)

    1. C -> S (SYN):携带客户端 ISN_C。
    2. S -> C (SYN+ACK):确认 C 的 SYN,携带服务端 ISN_S。
    3. C -> S (ACK):确认 S 的 SYN,双方进入 ESTABLISHED。
    • 为什么需要三次? 确认双方双向收发能力;防止旧连接混淆。
  • 数据分割 :若数据超过 MSS (最大报文长度),TCP 会将其拆分成一个个 Segment

🛠️ 网络层:远程定位(IP)

  • IP 头部关键字段
    • 源 IP + 目的 IP
    • 协议号 :TCP 对应 06
  • 源地址选择(路由表)
    • 操作系统通过 route -n 查看路由表。
    • 将目的 IP 与各条目子网掩码 进行 与运算,匹配 Destination。
    • 若无匹配,则走 默认网关 (0.0.0.0)

4. 总结与数据包封装全貌

层级 增加的内容 赋予的能力
应用层 HTTP 报文 定义业务逻辑(我要什么资源)
传输层 TCP 头部 可靠传输:保证不丢包、不乱序(端口定位应用)
网络层 IP 头部 远程定位:通过路由表决定"下一跳"去哪
网络接口层 MAC 头部 本地链路传输:在以太网内点对点传输

💡 面试高频 Q&A (基于面经总结)

Q1:为什么有了 IP 还需要 MAC 地址?(对应资料中 IP/MAC 部分)

A:IP 地址负责全局路径选择(规划路线),MAC 地址负责局域网内的硬件点对点跳转(实际踩油门转弯)。在以太网中,数据包必须封装 MAC 头才能被交换机识别。

Q2:传输层下面是网络层,发送端和接收端在网络层有联系吗?

A没有联系。 网络层(IP)是"无连接"的,它只负责尽力而为地把包送到目的地。所谓的"连接"是**传输层(TCP)**通过维护状态机(三次握手)在逻辑上建立的。

Q3:什么是 MTU 和 MSS?

A

  • MTU:最大传输单元,以太网通常为 1500 字节(包含 IP 和 TCP 头)。
  • MSS:最大报文段长度,是 TCP 扣除头部后能装载的净数据大小。TCP 在分段时会参考 MSS,防止在 IP 层被二次分片导致效率降低。

Q4:DNS 查找是递归还是迭代?

A

  • 电脑到本地 DNS :通常是递归查询(你帮我查到底)。
  • 本地 DNS 到根/顶级/权威 DNS :通常是迭代查询(它告诉你下一步问谁,你亲自去问)。

复习小贴士:面试时建议边画图边讲解,特别是从 URL 解析到 TCP 三次握手,再到路由表匹配的逻辑,这能展现你对计算机网络体系结构的深度掌握。

相关推荐
寒秋花开曾相惜6 小时前
(学习笔记)第四章 处理器体系结构
linux·网络·数据结构·笔记·学习
发光小北7 小时前
EtherNet/IP 转 Modbus 网关如何应用?
网络协议·tcp/ip
我叫黑大帅7 小时前
为什么TCP是三次握手?
后端·网络协议·面试
我叫黑大帅7 小时前
如何排查 MySQL 慢查询
后端·sql·面试
SilentSamsara7 小时前
TCP 三次握手:连接建立失败的那些坑
运维·服务器·网络·网络协议·tcp/ip
Trouvaille ~10 小时前
【MySQL】视图:虚拟表的妙用
数据库·mysql·adb·面试·数据处理·后端开发·视图
Cosolar10 小时前
2026年向量数据库选型指南:Qdrant、Pinecone、Milvus、Weaviate 与 Chroma 深度解析
数据库·面试·llm
门思科技11 小时前
LoRaWAN项目无需NS和平台?一体化网关如何简化部署与成本
服务器·网络·物联网
Bruce_Liuxiaowei11 小时前
顺藤摸瓜:一次从防火墙告警到设备实物的溯源实战
运维·网络·网络协议·安全
IpdataCloud12 小时前
效果广告中点击IP与转化IP不一致?用IP查询怎么做归因分析?
运维·服务器·网络