OSI模型

本文介绍了开放式系统互联通信参考模型(OSI),它由ISO定义,旨在规范不同系统的互联标准,实现跨平台通信。OSI模型分为7层,每层功能明确且相互独立,包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

定义

开放式系统互联通信参考模型(Open System Interconnection Reference Model,缩写为OSI),简称为OSI模型。该模型是由ISO(国际标准化组织)定义,是个灵活稳健和可互操作的模型。

目的

规范不同系统的互联标准,使两个不同的系统能够较容易通信,而不需要改变底层的硬件和软件的逻辑。

优点

  • 每层功能简单单一,标准化
  • 允许各种类型的网络硬件和软件相互通信
  • 防止对某一层的改动影响到其他层,有利于开发

分层

OSI把网络自下到上划分为7层,每层都有自己的功能,每层相互独立又相互依靠,上层依赖下层,下层为上层提供服务。如下图示意:

在这里插入图片描述

  1. 物理层

该层定义了接口和媒体的物理特性;在不同介质(同轴线,双绞线,光纤等)传递比特流;定义数据传输速率,信号传输模式(单工,半双工,全双工);定义网络物理拓扑(网状,星型,总线型等)。

  1. 数据链路层

该层负载网络寻址、差错检测。将数据封装成帧,将数据帧从一个节点传递到另一个节点。拿以太网数据帧为例,帧格式如下图所示:

以太网MAC地址是由48比特来定义主机地址,全球唯一。MAC地址通常表示为一组以六个冒号划分的十六进制数,如:8:0:20:11:ac:85。

在这里插入图片描述

  1. 网络层

该层决定数据的路径选择,将数据从一个网络传送至另一个。互连网络协议IPv4用一个32比特的IP地址定义每个主机。IP地址的形式是四组以点划分的十进制数,范围是0到255,如:129.79.16.40。如下图所示是使用路由器进行网络传输:

在这里插入图片描述

  1. 传输层

该层负责建立端到端的连接,保证报文在端到端之间的传输。提供可靠及不可靠的传输机制。该层常见的协议有TCP,UDP,SCTP,DCCP等。

  1. 会话层

该层负责建立、管理和终止表示层实体之间的会话连接,控制等。

  1. 表示层

该层负责数据的编码解码,加密解密,压缩和解压缩。主要作用进行格式兼容传输数据。

  1. 应用层

该层负责为应用软件提供接口,使应用程序能够使用网络服务。常见的应用层协议:http(80)、ftp(20/21)、smtp(25)、pop3(110)、telnet(23)、dns(53)等。


以下流程可以加深对OSI模型的理解:
在这里插入图片描述

在这里插入图片描述

### ### 一、OSI 模型概述 OSI(Open Systems Interconnection)模型是一个由国际标准化组织(ISO)制定的概念框架,旨在描述网络通信的工作方式。这一模型将网络通信分为七个层次,每一层都有特定的功能和职责[^4]。通过分层设计,OSI 模型不仅简化了复杂的技术问题,还促进了不同厂商设备间的互操作性。 --- ### ### 二、OSI 模型七层结构及其功能 #### #### 1. 应用层(Application Layer) 应用层是最接近用户的层级,负责直接与应用程序交互。其主要功能包括文件传输、电子邮件服务、虚拟终端访问等。典型协议有 HTTP、FTP 和 SMTP 等[^3]。 - 提供用户界面和服务接口。 - 负责建立进程间通信的逻辑连接。 - 实现身份验证、隐私保护等功能。 #### #### 2. 表示层(Presentation Layer) 表示层位于应用层之下,主要用于数据格式化、加密和压缩等工作。它的核心目标是确保发送方的数据可以被接收方正确解读。 - 数据编码转换(如 ASCII 至 Unicode)。 - 加密解密操作以保障信息安全。 - 图像音频视频流媒体处理。 #### #### 3. 会话层(Session Layer) 会话层管理两台主机之间的对话或会话,创建、维持和终止这些会话。它还能同步数据传输并恢复因错误中断的操作。 - 控制多个请求序列化的顺序。 - 支持全双工半双工单工通讯模式切换。 - 处理会话期间发生的异常事件。 #### #### 4. 传输层(Transport Layer) 传输层作为承上启下的关键环节,承担着可靠交付的任务。它通过分割大块消息成较小单元包,并重新组装它们来完成任务;同时执行流量控制及拥塞避免策略[^2]。 - TCP 协议提供面向连接的服务保证可靠性。 - UDP 属无连接轻量化选项适合实时应用场景。 - 错误检测纠正机制提升整体服务质量。 #### #### 5. 网络层(Network Layer) 网络层关注的是路由选择以及 IP 地址分配等问题。它是决定最佳路径让数据包抵达目的地的核心所在[^1]。 - 寻找最优线路转发信息给下一跳节点。 - 维护邻居表更新拓扑变化状态记录。 - 解决跨网段寻址难题实现异构网络互通。 #### #### 6. 数据链路层(Data Link Layer) 数据链路层专注于同一物理介质上的相邻节点之间帧级别的交换活动。MAC 子层定义了访问媒介的方法,LLC 子层则封装高层协议头部以便适配底层特性[^1]。 - 差错校验发现丢弃损坏帧项。 - 流水线调控防止过载溢出情形出现。 - MAC 地址绑定确认唯一标识符有效性。 #### #### 7. 物理层(Physical Layer) 物理层处于最低级别,涉及比特流的实际电气信号表现形式。无论是电缆还是无线信道都属于这个范畴内的讨论主题[^1]。 - 定义电压电流脉冲幅度宽度等参数指标。 - 规范接头形状针脚布局机械属性方面内容。 - 描述时钟同步方法保持收发双方一致节奏步调。 --- ### ### 三、总结 OSI 模型的七大层次各自分工明确又紧密协作共同构成了现代计算机网络体系的基础架构。尽管实际部署中可能更多采用更精简实用的 TCP/IP 模型,但掌握 OSI 模型对于深刻理解网络原理仍然具有重要意义[^4]。 ```python # Python 示例:模拟简单 OSI 层次划分 class OsiLayer: def __init__(self, name): self.name = name def process(self, data): print(f"{self.name} processing {data}") def simulate_osi(data): layers = [ OsiLayer("Physical"), OsiLayer("DataLink"), OsiLayer("Network"), OsiLayer("Transport"), OsiLayer("Session"), OsiLayer("Presentation"), OsiLayer("Application") ] for layer in reversed(layers): # 自顶向下逐层传递数据 layer.process(data) simulate_osi("Sample Data Packet") # 输出各层处理日志 ``` ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值