Administrator
Administrator
发布于 2026-04-09 / 11 阅读
0
0

OSI参考模型

一、OSI 七层模型概览

层号

名称

核心功能

数据单位

常见设备/协议

7

应用层

为应用程序提供网络服务

消息

HTTP, SMTP, FTP, DNS

6

表示层

数据格式转换、加密、压缩

消息

JPEG, GIF, SSL/TLS

5

会话层

建立、管理、终止会话

消息

NetBIOS, RPC

4

传输层

端到端可靠传输、流量控制、差错恢复

段/数据报

TCP, UDP

3

网络层

路由选择、逻辑寻址

路由器, IP

2

数据链路层

相邻节点间可靠传输、物理寻址

交换机, 网卡, MAC, PPP

1

物理层

比特流传输、电气/机械接口定义

比特

网线, 集线器, 光纤, 中继器

记忆口诀:物数网传会表应

二、逐层详解 + 实例

第 1 层:物理层

功能:负责把数据以比特(0/1)的形式通过物理介质(网线、光纤、无线电波)传输。定义电压、线缆引脚、传输速率等。

关键设备:网线、光纤、集线器、中继器、无线电磁波。

案例
当你在笔记本电脑上插入网线,网线上的金属触点通过高低电压变化来代表比特 0 和 1。如果你的网线质量差或过长,信号会衰减,物理层能检测到但无法纠正——它只负责把比特从一端“搬”到另一端。


第 2 层:数据链路层

功能:在物理层的基础上,把比特组合成,实现同一局域网内两个相邻节点之间的可靠传输。它使用 MAC 地址 来标识设备,并提供差错检测(如 CRC)。

关键设备:交换机、网桥、网卡。

案例
你家里有一个路由器(带交换机功能)和两台电脑。电脑 A 想给电脑 B 发文件。数据链路层会把网络层传下来的 IP 包封装成以太网帧,帧头写上电脑 B 的 MAC 地址。交换机根据 MAC 地址表把帧转发到对应的端口,电脑 B 接收。如果帧在传输中损坏,数据链路层的 CRC 校验会发现并丢弃该帧,由上层协议(如 TCP)负责重传。


第 3 层:网络层

功能:负责跨网络的端到端寻址和路由选择。它使用 IP 地址 标识主机,并决定数据包从源到目的经过哪些路由器。

关键设备:路由器、三层交换机。
核心协议:IP(IPv4/IPv6)、ICMP、ARP(部分划在链路层)。

案例
你在北京访问纽约的网站服务器。你的数据包必须先经过你家的路由器 → 运营商网络 → 多个骨干路由器 → 到达纽约。网络层为每个数据包加上源 IP(你的公网 IP)和目的 IP(服务器 IP),并根据路由表一跳一跳转发。就像导航系统为你的快递规划从北京到纽约的路线。


第 4 层:传输层

功能:提供进程间(端口到端口)的通信。负责分段、流量控制、差错恢复。主要两个协议:

  • TCP:面向连接、可靠、有序。

  • UDP:无连接、不可靠、快速。

案例
你使用浏览器打开一个网页(HTTP,使用 TCP)。传输层把 HTTP 请求分成多个 TCP 段,给每个段编号。服务器收到后确认(ACK),如果某个段丢失,服务器会要求客户端重传。同时,TCP 会根据网络状况动态调整发送速度,避免拥塞。而你看直播时用的是 UDP,虽然偶尔会花屏,但延迟低,不会因为丢包而卡顿重传。


第 5 层:会话层

功能:建立、维护和终止应用程序之间的会话。管理会话的同步点,以便在通信中断后可以从同步点恢复。

关键协议:NetBIOS、RPC、PPTP(部分功能)。

案例
你从 FTP 服务器下载一个 1GB 的大文件。下载到 80% 时网络突然断开。如果 FTP 使用了会话层的同步点功能,恢复连接后可以从 80% 处继续下载,而不必重头开始。就像看视频网站断网后重新连上,能继续从刚才的时间点播放一样——这其实就是会话层在背后管理“续传”。


第 6 层:表示层

功能:负责数据格式转换(例如 EBCDIC ↔ ASCII)、数据加密/解密、压缩/解压。让不同系统的应用程序能理解对方的数据。

案例
你使用浏览器访问一个 HTTPS 网站。表示层(在这里是 SSL/TLS 协议)负责把 HTTP 请求加密成乱码,对方收到后解密还原成 HTTP。同样,当你查看一张 JPEG 图片时,表示层把二进制数据解码成你可以看到的图像。如果你在 PC 上写一段文字,发送给一台老式 IBM 主机(使用 EBCDIC 编码),表示层会自动转换编码。


第 7 层:应用层

功能:直接为应用程序(如浏览器、邮件客户端)提供网络服务。它不是指应用本身,而是应用用来通信的协议。

常见协议:HTTP(网页)、SMTP/POP3(邮件)、FTP(文件传输)、DNS(域名解析)、SSH(安全远程登录)。

案例
你在浏览器中输入 www.baidu.com,按回车。浏览器使用 HTTP 协议 构造一个 GET 请求,这个请求被向下传递给表示层加密(HTTPS),再一路向下最终到达百度服务器。服务器返回 HTTP 响应,浏览器渲染出页面。这里你直接感知到的就是应用层——它决定了浏览器如何问“我要这个页面”,服务器如何回答“给你”。

三、综合案例:你在浏览器访问一个网站(七层协同)

  1. 应用层:浏览器构造 HTTP GET 请求。

  2. 表示层:如果是 HTTPS,就加密 HTTP 数据;可能还会压缩。

  3. 会话层:建立与服务器的会话,可能在数据流中加入检查点。

  4. 传输层:把数据切成 TCP 段,加上源端口(随机)和目的端口(80/443),交给网络层。

  5. 网络层:加上 IP 头部(源 IP、目的 IP),形成 IP 包,通过路由表决定下一跳。

  6. 数据链路层:把 IP 包封装成帧,加上 MAC 地址,通过交换机转发到路由器或目标主机。

  7. 物理层:将帧转换成比特流,通过网线/光纤传输。

接收端从物理层开始,逐层向上解封装,最终浏览器获得 HTTP 响应并展示页面。

四、为什么学习 OSI 模型?

  • 标准化:不同厂商的设备可以互操作(只要遵循标准)。

  • 模块化:每一层独立,修改某一层不影响其他层(例如把以太网换成 Wi‑Fi,上层无需改动)。

  • 故障排查:网络出问题时,可以逐层检查——是物理层没插好线?还是网络层 IP 配错?还是应用层协议不支持?


评论