Layers of OSI Model - 7层模型

原文链接:What is OSI Model | 7 Layers Explained

目录

Layer 1 – 物理层 (Physical Layer)

Physical Layer的功能

Layer 2 – 数据链路层(Data Link Layer (DLL))

Data Link Layer 的功能

Layer 3 – 网络层(Network Layer)

Network Layer的功能

Layer 4 – 传输层(Transport Layer)

Transport Layer 的功能

传输层提供的服务  

Layer 5 – 会话层(Session Layer)

Session Layer的功能

例子

Layer 6 – 表示层(Presentation Layer)

Presentation Layer的功能

Layer 7 – 应用层(Application Layer)

Application Layer的功能

数据流向过程 

各层所使用的协议

OSI Model 为什么重要?

OSI and TCP/IP 模型的不同

Advantages of OSI Model

Disadvantages of OSI Model


OSI(开放系统互连 (Open Systems Interconnection))模型是一组解释不同计算机系统如何在网络上通信的规则。OSI模型是由国际标准化组织(ISO - International Organization for Standardization)开发的。OSI模型由7层组成,每一层都有特定的功能和职责。

这种分层的方法使不同的设备和技术更容易协同工作。OSI模型为数据传输和管理网络问题提供了一个清晰的结构。OSI模型被广泛用作理解网络系统如何运行的参考。

在本文中,我们将详细讨论OSI模型和OSI模型的每一层。我们还将讨论OSI模型中的数据流以及OSI模型与TCP/IP模型的不同之处。

Layer 1 – 物理层 (Physical Layer)

        OSI参考模型的最低层是物理层。它负责设备之间的实际物理连接。物理层包含比特(bits)形式的信息。物理层负责将单个比特(bits)从一个节点(node)传输到下一个节点。当接收数据时,该层将接收到的信号转换成0和1发送给数据链路层(Data Link layer),Data Link layer 将帧重新组合在一起。

设备

常见的物理层设备有集线器( Hub)、中继器(Repeater)、调制解调器(Modem )和电缆(Cables)。

Physical Layer的功能

位同步:(Bit Synchronization)

        物理层通过提供时钟(clock)来实现位的同步。这个时钟控制发送方和接收方,从而在 bit 级别(bit level)上提供同步。

比特率控制:(Bit Rate Control: )

        物理层还定义传输速率,即每秒发送的比特数。

物理拓扑:(Physical Topologies:)

        物理层指定不同的设备/节点如何在网络中排列,即总线拓扑(bus topology),星型拓扑(star topology )或网状拓扑(mesh topology)。

传输模式:(Transmission Mode:)

        物理层还定义了数据在连接的两个设备之间的流动方式。各种可能的传输模式是单工(Simplex)、半双工和全双工( half-duplex and full-duplex )。

Layer 2 – 数据链路层(Data Link Layer (DLL))

        数据链路层负责消息的节点到节点(node-to-node)传递。这一层的主要功能是确保数据在物理层上从一个节点到另一个节点的传输没有错误(error-free)。当数据包(packet)到达网络时,DLL负责使用其MAC地址(MAC address)将其传输到主机。数据链路层中的数据包称为帧(Frame)。

设备

交换机和网桥(Switches and Bridges )是常见的数据链路层设备。

数据链路层分为两个子层

### OSI层模型详解 OSI(Open System Interconnection,开放系统互连)是一种标准的计算机网络体系结构模型[^2]。它被设计为一种理论框架,用于描述不同计算设备之间如何通过网络实现通信。该模型将整个网络通信功能划分为七个层次,每一层都有特定的功能和职责。 #### 各层概述及其作用 以下是 OSI层模型的具体分层及每层的主要功能: 1. **物理层(Physical Layer)** 物理层负责定义硬件接口的电气、机械、过程和功能特性,以建立、维护和关闭物理连接。其主要任务是比特流的透明传输,确保数据能够在介质上传输而不丢失或损坏。 2. **数据链路层(Data Link Layer)** 数据链路层的作用是在相邻节点间提供可靠的数据传输服务。这一层通常包括错误检测与纠正机制,并支持帧同步等功能。MAC地址就是在此层中使用的标识符之一。 3. **网络层(Network Layer)** 网络层的核心任务是路由选择和逻辑寻址,决定数据包从源到目的地的最佳路径。IP协议属于此层的一部分,在互联网环境中起到至关重要的作用。 4. **传输层(Transport Layer)** 传输层提供了端到端之间的可靠通信保障,能够处理流量控制、差错恢复等问题。TCP(Transmission Control Protocol)是最常见的面向连接的服务实例;而UDP则是无连接方式下的代表。 5. **会话层(Session Layer)** 主要管理主机间的对话(即会话)。这包括创建、管理和终止两个应用程序之间的会话关系。此外还可能涉及一些安全措施如认证等操作。 6. **表示层(Presentation Layer)** 表示层关注于数据的表现形式,比如加密解密、压缩解压以及语法转换等工作都发生在这里。它是上下两部分——应用层和服务提供者之间的重要桥梁。 7. **应用层(Application Layer)** 这一层直接面对用户程序或者最终用户提供各种高级别的网络服务,例如文件传输(FTP)、电子邮件(SMTP)、远程登录(Telnet)等等都是典型的应用例子。 #### 数据封装流程 当消息从发送者的应用进程传递至接收者的应用进程中时,遵循如下规则: - 发送方向是从第七层向下逐级添加头部信息直至第一层完成实际发送; - 接收方则相反,自底层向上逐步剥离各层附加的信息直到最后一层交付给目标应用进程[^3]。 ```python def osi_model(): layers = ["Application", "Presentation", "Session", "Transport", "Network", "Data Link", "Physical"] direction_send = "->".join(layers[::-1]) # Sending process direction_receive = "->".join(layers) # Receiving process print(f"Sending Process: {direction_send}") print(f"Receiving Process: {direction_receive}") osi_model() ``` 上述代码简单模拟了OSI模型中的数据流动情况。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值