计算机网络基础总结:TCP/IP 模型、TCP vs UDP、DNS 查询过程

在学习计算机网络的过程中,理解 TCP/IP 模型与 OSI 模型的对应关系、掌握 TCP 与 UDP 的区别,以及熟悉 DNS 的查询过程,是打好网络基础的关键。本文将围绕这三部分进行简明扼要的讲解。


一、TCP/IP 模型与 OSI 七层模型的对应关系

1. OSI 七层模型

OSI 模型(Open System Interconnection Model)是由 ISO 提出的一种网络通信的分层体系结构,其层次从上到下依次是:

  1. 应用层(Application)

  2. 表示层(Presentation)

  3. 会话层(Session)

  4. 传输层(Transport)

  5. 网络层(Network)

  6. 数据链路层(Data Link)

  7. 物理层(Physical)

2. TCP/IP 四层模型

TCP/IP 模型是互联网实际采用的模型,分为四层:

  1. 应用层(Application)

  2. 传输层(Transport)

  3. 网络层(Internet)

  4. 网络接口层(Network Access / Link)

3. 对应关系

OSI 模型 TCP/IP 模型 说明
应用层 应用层 如 HTTP、FTP、DNS
表示层 合并入应用层处理
会话层 合并入应用层处理
传输层 传输层 如 TCP、UDP
网络层 网络层(Internet) 如 IP、ICMP
数据链路层 网络接口层(Link) 如 Ethernet
物理层 网络接口层(Link) 包括硬件设备通信

总结:TCP/IP 模型更接近现实应用,OSI 模型更利于教学与理解。


二、TCP 与 UDP 的区别及应用场景

TCP(Transmission Control Protocol)和 UDP(User Datagram Protocol)都是传输层协议,但在设计哲学和应用场景上差异明显。

1. 区别对比

特性 TCP UDP
是否连接 面向连接(连接建立需三次握手) 无连接
可靠性 可靠,提供数据确认和重传 不可靠,无确认机制
顺序保证 有序(按发送顺序接收) 无序(可能乱序接收)
传输效率 较低(头部较大,需维护连接) 高(头部小,无需维护状态)
流量控制
拥塞控制

2. 应用场景

  • TCP 典型应用:

    • HTTP/HTTPS(网页浏览)

    • FTP(文件传输)

    • SMTP(邮件传输)

    • SSH(远程登录)

  • UDP 典型应用:

    • DNS 查询

    • VoIP(网络电话)

    • 视频会议、直播

    • 游戏(如实时对战)

总结:TCP 重可靠性,UDP 重实时性和效率。选择取决于具体需求。


三、DNS 查询过程详解

DNS(Domain Name System)用于将人类可读的域名(如 www.example.com)解析为 IP 地址。

1. 查询流程

(1)浏览器或操作系统先查找本地缓存;
(2)未命中则向配置的 DNS 服务器发起请求;
(3)DNS 服务器查询域名的 IP 并返回。

具体的查询方式可分为:

2. 递归查询 vs 迭代查询

特性 递归查询 迭代查询
查询发起者 客户端向本地 DNS 请求,要求最终结果 本地 DNS 向根、顶级、权威 DNS 逐层查询
过程控制 请求由本地 DNS 服务器代为完成(客户不知过程) 本地 DNS 服务器自己控制查询流程
返回内容 直接返回最终 IP 地址 返回下一层 DNS 服务器的地址
示例场景 客户端 → 本地 DNS(通常是递归查询) 本地 DNS 向外部服务器发出的迭代查询

3. DNS 查询完整示意图

复制代码
用户请求 www.example.com
        ↓
浏览器缓存 / 系统缓存
        ↓
本地 DNS 服务器(递归查询)
        ↓
根 DNS 服务器(迭代查询)
        ↓
.com 顶级域名服务器(迭代查询)
        ↓
example.com 权威服务器(迭代查询)
        ↓
返回 IP 地址

总结:客户端通常发起递归查询,DNS 服务器之间使用迭代查询来逐级获取信息。


小结

  • TCP/IP 模型是现实网络通信的主流分层模型,其与 OSI 模型在分层粒度上有所不同,但本质目标一致。

  • TCP 提供可靠、有序传输,适用于对数据完整性要求高的场景;UDP 提供高效、无连接的传输,适用于实时性强的应用。

  • DNS 查询中,客户端发起递归查询,DNS 服务器之间使用迭代查询,最终解析域名为 IP 地址。


如果你正在准备计算机网络考试、笔试面试,或搭建网络相关系统,理解这三部分是入门的关键。欢迎点赞、收藏与评论交流!

相关推荐
辰海Coding8 小时前
MiniSpring框架学习笔记-解决循环依赖的简化IoC容器
笔记·学习
晓梦林9 小时前
cp520靶场学习笔记
android·笔记·学习
心中有国也有家10 小时前
cann-recipes-infer:昇腾 NPU 推理的“菜谱集合”
经验分享·笔记·学习·算法
玄米乌龙茶12310 小时前
LLM成长笔记(三):API 开发基础
笔记
Upsy-Daisy10 小时前
AI Agent 项目学习笔记(八):Tool Calling 工具调用机制总览
人工智能·笔记·学习
LuminousCPP11 小时前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习
pengyi87101512 小时前
共享 IP 与独享 IP 怎么选?被封后升级方案避坑
网络·网络协议·tcp/ip
一只机电自动化菜鸟13 小时前
一建机电备考笔记(40) 建筑机电施工—排水管道施工(含考频+题型)
经验分享·笔记·学习·职场和发展·课程设计
你干嘛?哎哟13 小时前
4月工作笔记
笔记
tom021813 小时前
软考中级《嵌入式系统设计师》全套备考资料(真题 + 教材 + 笔记)
笔记·嵌入式·软考·自学·电子技术·电子资料·变成