重学网络-OSI 模型的层
OSI 模型的层
OSI 代表 开放系统互连。它由ISO(“国际标准化组织”)于1984年开发。它是一个 7 层架构,每一层都有特定的功能要执行。所有这 7 层协同工作,在全球范围内将数据从一个人传输到另一个人。
OSI 模型的层
第 1 层 - 物理层
OSI 参考模型的最低层是物理层。它负责设备之间的实际物理连接。物理层包含位形式的信息 。 它负责将单个位从一个节点传输到下一个节点。接收数据时,该层将获取接收到的信号并将其转换为 0 和 1,并将它们发送到数据链路层,数据链路层将帧重新组合在一起。
物理层中的数据位
物理层的功能
- 位同步: 物理层通过提供时钟来提供位的同步。该时钟控制发送方和接收方,从而提供位级同步。
- 码率控制: 物理层还定义了传输速率,即每秒发送的位数。
- 物理拓扑: 物理层指定如何在网络中布置不同的设备/节点,即总线、星形或网状拓扑。
- 传输方式: 物理层还定义了数据如何在两个连接的设备之间流动。各种可能的传输模式是单工、半双工和全双工。
注意: 1. 集线器、中继器、调制解调器和电缆是物理层设备。
- 网络层、数据链路层和物理层也称为下层或硬件层。
第 2 层 - 数据链路层 (DLL)
数据链路层负责消息的节点到节点传递。该层的主要功能是确保通过物理层从一个节点到另一个节点的数据传输没有错误。当数据包到达网络时,DLL 负责使用其 MAC 地址将其传输到主机。 数据链路层分为两个子层:
从网络层接收的数据包根据NIC(网络接口卡)的帧大小进一步划分为帧。DLL 还将发送方和接收方的 MAC 地址封装在标头中。
接收方的MAC地址是通过将[ARP(地址解析协议)]请求放到线路上询问“谁拥有该IP地址?”来获取的,目标主机将回复其MAC地址。
数据链路层的功能
- 框架: 成帧是数据链路层的功能。它为发送方提供了一种传输一组对接收方有意义的位的方法。这可以通过将特殊的位模式附加到帧的开头和结尾来实现。
- 物理寻址: 创建帧后,数据链路层在每个帧的标头中添加发送方和/或接收方的物理地址(MAC 地址)。
- 错误控制: 数据链路层提供了错误控制机制,在该机制中,它检测并重新传输损坏或丢失的帧。
- 流控制: 两端的数据速率必须是恒定的,否则数据可能会损坏,因此,流控制在接收确认之前协调可以发送的数据量。
- 存取控制: 当单个通信通道由多个设备共享时,数据链路层的MAC子层有助于确定哪个设备在给定时间控制通道。
DLL的功能
注意: 1. 数据链路层中的数据包称为帧。
- 数据链路层由主机的 NIC(网络接口卡)和设备驱动程序处理。
- 交换机和网桥是数据链路层设备。
第 3 层 - 网络层
网络层用于将数据从一个主机传输到位于不同网络中的另一个主机。它还负责数据包路由,即从可用的路由数量中选择传输数据包的最短路径。发送方和接收方的IP地址由网络层放置在标头中。
网络层的功能
- 路由: 网络层协议确定从源到目标的路由。网络层的此功能称为路由。
- 逻辑寻址: 为了唯一地识别Internetwork上的每个设备,网络层定义了一个寻址方案。发送方和接收方的IP地址由网络层放置在标头中。这样的地址可以独特而普遍地区分每个设备。
注意: 1. 网络层中的分段称为数据包。
- 网络层由路由器等联网设备实现。
第 4 层 - 传输层
传输层向应用层提供服务,并从网络层获取服务。传输层中的数据称为分段。它负责完整消息的端到端传递。传输层还提供数据传输成功的确认,并在发现错误时重新传输数据。
在发件人方面: 传输层从上层接收格式化的数据,执行分段,并实现流量和错误控制以确保正确的数据传输。它还在其标头中添加源端口号和目标端口号,并将分段数据转发到网络层。
注意: 发送方需要知道与接收方应用程序关联的端口号。
通常,此目标端口号是默认配置的或手动配置的。例如,当 Web 应用程序请求 Web 服务器时,它通常使用端口号 80,因为这是分配给 Web 应用程序的默认端口。许多应用程序都分配了默认端口。
在接收方一侧: 传输层从其标头读取端口号,并将收到的数据转发到相应的应用程序。它还执行分段数据的排序和重组。
传输层的功能
- 分段和重组: 此层接受来自(会话)层的消息,并将消息分解为更小的单元。生成的每个段都有一个与之关联的标头。目标站的传输层重新组合消息。
- 服务点寻址: 为了将消息传递到正确的进程,传输层标头包括一种称为服务点地址或端口地址的地址类型。因此,通过指定此地址,传输层可确保将消息传递到正确的进程。
传输层提供的服务
1. 面向连接的服务: 这是一个三阶段的过程,包括
- 连接建立
- 数据传输
- 终止/断开连接
在这种类型的传输中,接收设备在收到一个数据包或一组数据包后将确认发送回源。这种类型的传输是可靠和安全的。
2.无连接服务: 这是一个单阶段过程,包括数据传输。在这种类型的传输中,接收方不确认收到数据包。这种方法允许设备之间的通信速度更快。面向连接的服务比无连接服务更可靠。
注意: 1. 传输层中的数据称为段。
- 传输层由操作系统操作。它是操作系统的一部分,通过进行系统调用与应用层通信。
- 传输层称为 OSI 模型的核心。
第 5 层 - 会话层
该层负责建立连接、维护和身份验证,并确保安全性。
会话层的功能
- 会话建立、维护和终止: 该层允许两个进程建立、使用和终止连接。
- 同步: 此层允许进程添加被视为数据中同步点的检查点。这些同步点有助于识别错误,以便正确重新同步数据,并且不会过早地切断消息的末端并避免数据丢失。
- 对话框控制器: 会话层允许两个系统以半双工或全双工开始相互通信。
注意: 1. 以下 3 层(包括会话层)作为“应用层”集成在 TCP/IP 模型中作为单个层。
- 这 3 层的实现由网络应用程序本身完成。这些也称为上层或* 软件层。*
场景
让我们考虑一个场景,即用户希望通过在其浏览器中运行的某些 Messenger 应用程序发送消息。这里的“信使”充当应用层,为用户提供创建数据的界面。此消息或所谓的数据被压缩、加密(如果有安全数据)并转换为位(0 和 1),以便可以传输。
会话层中的通信
第 6 层 - 表示层
表示层也称为转换层。来自应用层的数据在此处提取,并根据所需的格式进行操作,以便通过网络传输。
表示层的功能是
- 译本: 例如,ASCII 到 EBCDIC。
- 加密/解密: 数据加密将数据转换为另一种形式或代码。加密的数据称为密文,解密的数据称为纯文本。密钥值用于加密和解密数据。
- 压缩: 减少需要在网络上传输的位数。
第 7 层 - 应用层
在 OSI 参考模型层堆栈的最顶部,我们找到了由网络应用程序实现的应用程序层。这些应用程序产生数据,这些数据必须通过网络传输。该层还充当应用程序服务访问网络的窗口,并向用户显示接收到的信息。
示例:应用程序 – 浏览器、Skype Messenger 等。
注意: 应用程序层也称为桌面层。
应用层的功能是
- 网络虚拟终端
- FTAM - 文件传输访问和管理
- 邮件服务
- 目录服务
OSI模型充当参考模型,由于其发明较晚,因此未在Internet上实现。当前使用的模型是 TCP/IP 模型。
OSI 模型简述
7 | 应用层 | 帮助识别客户端和同步通信。 | 消息 | – |
6 | 表示层 | 来自应用层的数据以传输所需的格式提取和操作。 | 消息 | – |
5 | 会话层 | 建立连接、维护、确保身份验证并确保安全性。 | 消息 | 网关 |
4 | 传输层 | 从网络层获取服务并将其提供给应用层。 | 段 | 防火墙 |
3 | 网络层 | 将数据从一个主机传输到位于不同网络中的另一个主机。 | 包 | 路由器 |
2 | 数据链路层 | 消息的节点到节点传递。 | 框架 | 开关、桥接 |
1 | 物理层 | 在设备之间建立物理连接。 | 位 | 集线器、中继器、调制解调器、电缆 |