计算机网络核心知识点(二)
大家好,我是你们的小白网安伙伴!上一篇我们聊了MAC地址、IP地址、交换机、路由器、ARP、DNS等基础概念,今天继续深入,走进网络通信模型和传输层核心协议TCP/UDP,绝对干货满满!
(本文基于个人学习笔记整理,如有错误欢迎指正)
一、为什么需要网络通信模型?
想象一下,如果让全球不同厂商生产的设备(电脑、手机、服务器)自由通信,没有统一标准,那简直是一场灾难。网络通信模型就是为了解决这个问题,将复杂的网络通信拆分成多个层次,每一层只干自己擅长的事,层与层之间通过标准接口协作。这样无论硬件软件如何变化,只要遵循相同的分层规则,就能无障碍通信。
目前有两种主流模型:OSI七层模型(理论标准) 和 TCP/IP四层模型(实际应用标准)。
二、OSI七层模型:网络通信的“理论蓝图”
OSI(Open Systems Interconnection)是国际标准化组织制定的理想化模型,共7层,从上到下依次为:
| 层级 | 名称 | 核心功能 |
| 7 | 应用层 | 直接为应用程序提供网络服务(如HTTP、FTP) |
| 6 | 表示层 | 数据格式转换、加密、压缩 |
| 5 | 会话层 | 建立、管理、终止会话 |
| 4 | 传输层 | 端到端可靠传输(TCP/UDP)、端口号 |
| 3 | 网络层 | 路由寻址、IP地址 |
| 2 | 数据链路层 | 局域网帧传输、MAC地址 |
| 1 | 物理层 | 比特流传输、物理介质 |
虽然OSI模型很完整,但实际互联网采用的是更简化的TCP/IP模型。
三、TCP/IP四层模型:互联网的“实战标准”
TCP/IP模型将OSI七层合并为四层,是现在所有网络设备遵循的核心规范。
| TCP/IP层级 | 对应OSI层级 | 核心功能 | 关键协议/设备 |
| 4.应用层 | 应用层+表示层+会话层 | 为应用程序提供接口,处理数据格式、加密、会话管理 | HTTP、HTTPS、DNS、FTP |
| 3.传输层 | 传输层 | 端到端可靠/快速传输,通过端口号区分应用 | TCP、UDP |
| 2.网络层(网际层) | 网络层 | 跨网段路由转发,IP地址定位设备 | IP、ICMP、ARP、路由器 |
| 1网络接口层(链路层) | 数据链路层+物理层 | 局域网帧传输,物理介质比特流 | 以太网、MAC地址、交换机 |
💡 数据封装过程:应用层数据 → 传输层加TCP/UDP头部(端口号) → 网络层加IP头部(IP地址) → 网络接口层加MAC头部(MAC地址) → 最终通过物理介质发送。接收方则逆向解封装。
四、传输层两大核心:TCP & UDP
传输层是网络通信的“枢纽”,负责数据从源到目标的端到端传输。TCP和UDP是这层的两个主角,一个稳如泰山,一个快如闪电。
📦 TCP(传输控制协议)—— 可靠的面向连接协议
核心特点
-
面向连接:通信前必须通过三次握手建立连接,结束后四次挥手释放连接。
-
可靠传输:通过序列号、确认应答、重传机制、流量控制、拥塞控制,确保数据无丢失、无重复、按序到达。
-
缺点:效率较低,延迟较高(因连接建立,确认应答机制)。
关键机制:三次握手(建立连接)
-
客户端发送
SYN(同步序列号)报文,请求连接。 -
服务器回复
SYN+ACK(确认+同步),表示收到请求并同意。 -
客户端回复
ACK(确认),连接建立。
比喻:就像打电话——A说“喂,能听到吗?”(SYN),B说“能听到,你能听到我吗?”(SYN+ACK),A说“能听到,我们开始聊吧”(ACK)。
关键机制:四次挥手(释放连接)
-
客户端发送
FIN(结束)报文,表示数据发送完毕。 -
服务器回复
ACK,表示收到结束请求,但可能还有数据要发。 -
服务器发送
FIN,表示数据也发完了。 -
客户端回复
ACK,连接彻底关闭(客户端等待一段时间确保服务器收到ACK)。
比喻:就像挂电话——A说“我说完了”(FIN),B说“知道了”(ACK),B说“我也说完了”(FIN),A说“好,挂了吧”(ACK)。
适用场景
对可靠性要求高的应用:网页访问(HTTP/HTTPS)、文件传输(FTP)、邮件(SMTP)、数据库连接。
🚀 UDP(用户数据报协议)—— 快速的无连接协议
核心特点
-
无连接:无需建立连接,直接发送数据,发完即止。
-
不可靠传输:无确认、无重传、无流量控制,数据可能丢失、乱序。
-
优点:效率高、延迟低、开销小。
适用场景
对实时性要求高、可容忍少量丢失的应用:视频直播、语音通话、在线游戏、DNS查询。
TCP与UDP核心对比
| TCP | UDP | |
| 连接方式 | 面向连接(三次握手) | 无连接(直接发送) |
| 可靠性 | 可靠(无丢失、无重复、有序) | 不可靠(可能丢失、乱序) |
| 传输效率 | 低(开销大、延迟高) | 高(开销小、延迟低) |
| 头部大小 | 20-60字节 | 8字节 |
| 典型应用 | 网页、文件、邮件、数据库 | 直播、语音、游戏、DNS |
五、知识点串联:数据如何从你的电脑传到服务器?
-
应用层:浏览器(HTTP)生成请求数据。
-
传输层:TCP将数据分段,添加端口号(如80)。
-
网络层:IP添加源和目标IP地址,选择路由。
-
网络接口层:添加源和目标MAC地址,封装成帧。
-
物理层:通过网线、WiFi等介质发送比特流。
-
接收端:逐层解封装,最终交给服务器应用。
六、总结
-
OSI是理论模型,TCP/IP是实际标准,分层思想让网络更灵活。
-
TCP可靠但慢,适合网页、文件传输;UDP快但不可靠,适合直播、游戏。
-
三次握手建立连接,四次挥手释放连接,这是TCP的核心机制。
-
数据封装过程体现了各层协作,理解它对网络排障和攻击分析很有帮助。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)