网络通信模型:OSI七层与TCP/IP四层架构的数据传输机制

一、OSI七层模型

物理层(信号传输)→数据链路层(帧封装)→网络层(路由)→传输层(可靠传输)→会话层(连接管理)→表示层(数据格式转换)→应用层(用户接口)。

为协议设计提供理论框架,实际部署中因协议栈复杂,逐渐被TCP/IP模型替代。

二、TCP/IP四层模型

|----------|-------------|---------------------------|
| TCP/IP四层 | 对应OSI层次 | 核心功能与协议 |
| 应用层 | 应用层+表示层+会话层 | HTTP(80)、FTP(21)、SMTP(25) |
| 传输层 | 传输层 | TCP(可靠传输)、UDP(无连接) |
| 网络层 | 网络层 | IP(寻址与路由)、ICMP(错误报告) |
| 网络接入层 | 数据链路层+物理层 | Ethernet(帧封装)、PPP(点对点连接) |

优势

简洁:合并OSI的上三层,简化开发流程。

实用:支持互联网大规模部署,协议栈轻量化。

三、封装与解封装的流程

1.发送端封装过程

应用层:生成原始数据(如浏览器输入的URL)。

传输层:添加TCP/UDP头部(源端口、目的端口),形成"段"(Segment)。

网络层:封装IP头部(源IP、目的IP),形成"包"(Packet)。

数据链路层:添加MAC头部(源MAC、目的MAC)和FCS校验,形成"帧"(Frame)。

物理层:转换为二进制比特流(0/1)通过介质传输。

2.接收端解封装过程

物理层→数据链路层:校验FCS,剥离MAC头部。

网络层:剥离IP头部,传递至传输层。

传输层:剥离TCP/UDP头部,还原原始数据至应用层。

**案例:**ping 192.168.1.2的传输流程

应用层生成ICMP请求数据,传输层封装UDP头部(ICMP基于UDP),网络层添加IP头部,数据链路层通过ARP获取目标MAC地址并封装帧头部,最终物理层发送比特流。

四、高频考点

1.TCP三次握手

第一次握手(客户端→服务端):客户端向服务端发送 SYN 包,携带初始序列号 seq=x,请求建立连接,客户端进入 SYN_SENT 状态。

第二次握手(服务端→客户端):服务端收到 SYN 包后,确认自身接收能力正常,向客户端回复 SYN+ACK 包,携带确认号 ack=x+1和自身初始序列号 seq=y,服务端进入 SYN_RCVD 状态。

第三次握手(客户端→服务端):客户端收到 SYN+ACK 包后,确认自身收发、服务端收发正常,向服务端发送 ACK 包,携带确认号 ack=y+1,客户端进入 ESTABLISHED状态;服务端收到 ACK 包后,同样进入 ESTABLISHED 状态,连接正式建立,可以开始传输数据。

2.ARP协议

通过IP地址查询MAC地址。通过本地ARP表存储IP-MAC映射,减少广播开销。

**3.关键端口:**HTTP(80)、FTP(20/21)、SMTP(25)、DNS(53)。

点击下方名片,获取软考/华为认证数通各科的入门备考资料。

相关推荐
今天AI了吗38 分钟前
什么是 AI Agent?它与直接调用大模型 API 有何区别
java·网络·人工智能·架构·java-ee
一尘之中44 分钟前
深入解析面向服务的架构(SOA):从特性到实施
学习·架构·ai写作
网安老伯1 小时前
都2026年了,还在问网络安全怎么入门?看完这一篇你就懂了
运维·计算机网络·web安全·网络安全·wireshark·密码学·网络攻击模型
嘟嘟嘟95271 小时前
AI Agent 的边缘困境
人工智能·架构·agent
学渣超1 小时前
记一次复杂业务功能重构——从过程式长链路,到模板方法构建体系
java·架构·代码规范
星禾元亨1 小时前
生成式 AI 时代的架构演进与 GEO 优化:实体企业 AI 落地避坑指南
大数据·人工智能·架构·自动化·创业创新
这个DBA有点耶2 小时前
MySQL大表DDL锁表锁到崩溃?Online DDL的3个关键参数和实战避坑
数据库·mysql·架构
小祺先生2 小时前
mt7921 debian系统 如何安装驱动
运维·网络·debian
依依东望9612 小时前
还在用 Electron?6 种跨平台桌面方案横评:Rust + Vue 把安装包从 224MB 干到 4.7MB
架构
秦哈哈2 小时前
【Hello Agents】学习笔记(二)
笔记·学习·microsoft