网络基础-OSI7层模型(三)
什么是OSI七层模型
OSI七层模型(Open System Interconnection Reference Model)是一个国际标准化的网络通信理论框架,它将复杂的网络通信过程划分为七个层次,每一层负责特定的功能,从而让不同厂商的设备能够相互通信。
为什么需要OSI模型?
- 降低复杂度:把大问题拆成小问题,每一层只管自己的事。
- 模块化设计:某一层技术升级(比如从铜缆变光纤),不影响其他层。
- 促进标准化:不同厂商按同一标准生产设备,确保互联互通。
- 方便排错:出问题时能快速定位到是哪一层(是物理层网线断了,还是应用层配置错了)。
就像公司分部门,销售部只管卖货,技术部只管研发,不需要互相懂对方的具体工作,只要按标准流程对接就行。
OSI七层每一层详解
第1层:物理层
- 做什么:传输原始的比特流(0和1)。
- 例子:网线、光纤、集线器、中继器。
- 注意:这一层没有智能,只管发送和接收电信号。
第2层:数据链路层
- 做什么:相邻节点之间的传输。负责把数据从一个设备传到下一个直接相连的设备。
- 关键概念:
- MAC地址:物理地址,烧录在网卡上。
- 交换机:工作在这一层。
- 差错控制:检测数据是否损坏(但一般不重传)。
- 数据单元:帧(Frame)
第3层:网络层
- 做什么:寻址和路由选择。负责把数据从源设备送到目标设备(可能经过很多跳)。
- 关键概念:
- IP地址:逻辑地址,标识设备位置。
- 路由协议:OSPF、BGP等,路由器用它们计算最佳路径。
- 数据单元:包(Packet)
第4层:传输层
- 做什么:端到端的可靠传输。负责把数据从一台电脑的某个程序,送到另一台电脑的对应程序。
- 关键概念:
- 端口号:区分不同程序(80是Web,22是SSH)。
- TCP:可靠、面向连接(打电话)。
- UDP:快速、无连接(发短信)。
- 数据单元:段(Segment)
应用层
第5层:会话层
- 做什么:管理对话。建立、维持、终止会话。
- 例子:断点续传,如果下载中断,会话层记录同步点,下次从中断处继续。
- 小贴士:NetBIOS、RPC协议工作在这一层。
第6层:表示层
- 做什么:翻译官。把应用层的数据转换成网络通用的格式。
- 具体工作:
- 加密(SSL/TLS)
- 压缩
- 格式转换(比如JPEG图片、ASCII文本)
- 小贴士:在实际的TCP/IP模型中,这一层功能被合并到应用层。
第7层:应用层
- 做什么:直接为应用程序提供网络服务。
- 例子:你在浏览器输入网址,HTTP协议就工作在应用层。
- 常见协议:HTTP、FTP、SMTP、DNS(DNS有时也跨层)。
数据封装与解封装(核心流程)
发送数据时(自上而下):
- 应用层:产生数据(比如“你好”)。
- 数据:
[数据'你好']
- 数据:
- 传输层:加上TCP头部(含端口号),形成段,交给网络层。
- 段:
[TCP头 | 数据'你好']
- 段:
- 网络层:加上IP头部(含IP地址), 形成包,交给数据链路层。
- 包:
[IP头 | TCP头 | 数据'你好']
- 包:
- 数据链路层:加上MAC头部和尾部(含MAC地址、校验),形成帧,交给物理层。
- 帧:
[MAC头 | IP头 | TCP头 | 数据'你好' | MAC尾]
- 帧:
- 物理层:将帧转换成比特流,发出去。
- 比特流:例如
01010101...
- 比特流:例如
接收数据时(自下而上):
- 物理层:收到比特流,转成帧,交给数据链路层。
- 比特流:例如
01010101... - 帧:
[MAC头 | IP头 | TCP头 | 数据'你好' | MAC尾]
- 比特流:例如
- 数据链路层:校验无误,剥去MAC头部和尾部,形成包,把包交给网络层。
- 包:
[IP头 | TCP头 | 数据'你好']
- 包:
- 网络层:剥去IP头,形成段,把段交给传输层。
- 段:
[TCP头 | 数据'你好']
- 段:
- 传输层:剥去TCP头,得到数据('你好'),把数据交给应用层。
- 数据:
[数据'你好']
- 数据:
- 应用层:最终看到“你好”。
各层常用的协议
| 层 | 常见协议/技术 |
|---|---|
| 应用层 | HTTP、HTTPS、FTP、SMTP、DNS、DHCP |
| 表示层 | SSL/TLS、JPEG、ASCII、MPEG(功能常被应用层实现) |
| 会话层 | NetBIOS、RPC |
| 传输层 | TCP、UDP |
| 网络层 | IP、ICMP、ARP、OSPF、BGP |
| 数据链路层 | Ethernet、PPP、MAC、VLAN(802.1Q) |
| 物理层 | 以太网物理规范、RJ45接口、光纤 |
注:ARP通常被认为跨网络层和数据链路层。
OSI模型与TCP/IP模型的关系

为什么还要学TCP/IP模型?
-
OSI七层:是理论蓝图,帮你理解网络设计的完整思想。
-
TCP/IP模型:是实际建筑,互联网真正运行的协议栈。
OSI教你“应该怎么想”,TCP/IP告诉你“实际怎么做”。
为什么TCP/IP模型要把上三层合并?
- 在实际应用中,表示层(数据格式转换、加密压缩)和会话层(建立管理会话)的功能通常由应用程序自己实现,或者由应用层协议(如HTTP、FTP)直接处理,不需要独立的层。
- 这样可以简化协议栈的实现,提高效率。

浙公网安备 33010602011771号