当前位置: 首页 > news >正文

计算机网络基础知识(三)—— 什么是OSI七层模型?

文章目录

  • 00 | 🛸发展史🛸
  • 01 | 🛸OSI七层参考模型🛸
  • 02 | 🛸OSI七层参考模型的信息流向🛸

OSI七层模型是Open Systems Interconnection Reference Model的缩写,是由国际标准化组织(ISO)开发的一种参考模型,旨在促进不同厂商、不同系统之间的通信和互联。该模型被设计为一种通用的网络架构模型,用于指导在分布式计算系统中通信协议的设计和实现。

00 | 🛸发展史🛸

OSI模型是1984年由国际标准组织(ISO)开发的,作为一种参考模型,而并非实际应用。该模型将计算机网络通信过程划分为7个层次,每个层次都有特定的功能,各层次之间通过协议进行通信。OSI模型的制定旨在解决计算机之间的通信问题,从而使不同计算机在数据传输方面具有通用性。

在OSI模型之前,各个厂商都有自己的通信协议,网络通信存在互不兼容和不互通的问题。而OSI模型的出现,使得所有通信环节都有了一个清晰的规范,从而实现了不同厂商、不同系统之间的互通性。不过,由于实际上在实现网络通信时,通常使用TCP/IP(传输控制协议/因特网协议)作为通信协议族,因此OSI模型并未如期望般广泛应用。

尽管OSI模型并未大规模应用于实际网络中,但它在网络通信方面仍然具有理论意义和应用价值,它为我们理解网络通信提供了系统性、层次性的思路。

01 | 🛸OSI七层参考模型🛸

当我们在互联网上进行通信时,数据需要经过多个传输节点,每个节点都可能使用不同的通信协议进行数据包交换,而为了确保不同节点之间数据的有效传输和正确解释,一种统一的、标准化的、层次化的通信模型被提出,这就是OSI七层模型(Open Systems Interconnection Reference Model,开放系统互联参考模型)。

OSI七层模型是一种抽象的模型,定义了不同层次间的数据的通信方式,将整个互联网通信过程划分为七个独立的层次,由低层至高层分别为: 物理层、 数据链路层、 网络层、 传输层、 会话层、 表示层、 应用层 \color{red}{物理层}、\color{orange}{数据链路层}、\color{yellow}{网络层}、\color{green}{传输层}、\color{blue}{会话层}、\color{cyan}{表示层}、\color{purple}{应用层} 物理层数据链路层网络层传输层会话层表示层应用层
每个层次都有独立的功能和任务,通过这种分层方式,避免了各个层次之间功能相互依赖、相互影响的问题,同时也方便了不同协议的选用和替换。

在这里插入图片描述

  • 通信子网 && 资源子网

    在这里插入图片描述

    计算机网络按照数据通信和数据处理的功能可以分为两层:内层通信子网、外层资源子网

    • 内层通信子网:(上图中虚线内的)的节点计算机和和高速通信线路组成了独立的数据系统,承担全网的数据传输、交换、加工和变换等通信处理工作,即将一台计算机的输出信息传送到另一台计算机

    • 外层资源子网:(上图虚线外的)所有网络设备以及各种软件资源等,负责全网的数据处理和向网络用户提供网络资源以及网络服务

  • OSI七层参考模型的特性

    1. 它是一种将异构系统互连的分层结构;

    2. 提供了控制互连系统交互规则的标准框架;

    3. 定义了一种抽象结构,而非具体实现的描述;

    4. 不同系统上相同层的实体称为同等层实体;

    5. 同等层实体之间的通信由该层的协议管理;

    6. 相邻层间的接口定义了原语操作和低层向高层提供服务;

    7. 所提供的公共服务是面向连接和无连接的数据服务;

    8. 直接的数据传输仅在最低层实现;

    9. 每层完成所定义的功能,修改本层的功能并不影响其他层;

  • 各层功能

OSI七层参考模型中的13层主要负责通信功能,一般称为**通信子网层**;上3层(57)属于资源子网层的功能范畴,称为资源子网层;第四层的传输层起着承上启下的作用,下面对OSI七层模型的每一个层级进行简要介绍:

  1. 物理层( P h y s i c a l L a y e r ) \color{red}{物理层(Physical Layer)} 物理层(PhysicalLayer
    物理层是OSI七层模型的底层,主要负责物理设备的数据传输,它将比特流转化为具体的电信号或光信号进行物理传输,处理的单元是比特(0或1),特点是传输速度快,但不能纠错。

  2. 数据链路层( D a t a L i n k L a y e r ) \color{orange}{数据链路层(Data Link Layer)} 数据链路层(DataLinkLayer
    数据链路层建立在物理层之上,主要负责点对点通信的数据传输,它将物理层传输的数据流转化为帧(Frame)进行传输,处理的信息单位为帧(Frame),提供流量控制、差错检测、纠错等功能。

  3. 网络层( N e t w o r k L a y e r ) \color{yellow}{网络层(Network Layer)} 网络层(NetworkLayer
    网络层主要负责数据包的传输和路由选择,它接收来自数据链路层的帧,然后将这些帧组装成包(Packet),并加上目的地址和源地址以及各种控制信息,为数据包提供了传输路径的选择、拥塞控制、数据包分割和重组等功能。

  4. 传输层( T r a n s p o r t L a y e r ) \color{green}{传输层(Transport Layer)} 传输层(TransportLayer
    传输层主要负责面向连接的数据传输,是OSI七层模型中最核心的一层,它在网络层之上提供透明的数据传输服务,面向连接的传输方式能够提高数据传输的可靠性,并且支持可靠的错误恢复处理、数据重传机制、流量控制等。

  5. 会话层( S e s s i o n L a y e r ) \color{blue}{会话层(Session Layer)} 会话层(SessionLayer
    会话层主要负责建立、管理和结束会话,通过在数据交换时分配相关标识来确保正确的通信,同步发送端和接收端的数据传输,在表示层之上,可对传输的数据进行加密或解密。

  6. 表示层( P r e s e n t a t i o n L a y e r ) \color{cyan}{表示层(Presentation Layer)} 表示层(PresentationLayer
    表示层主要负责数据格式的转换和处理,使不同计算机之间的数据格式能够兼容,与应用层进行数据格式交互,如UBF、ASN1、ASCII、BCD等格式的转换,还负责数据加密、解密、压缩、解压缩等功能。

  7. 应用层( A p p l i c a t i o n L a y e r ) \color{purple}{应用层(Application Layer)} 应用层(ApplicationLayer
    应用层是OSI七层模型的最高层,也是最靠近用户的一层,主要负责面向用户的通信服务,提供用户接口、用户数据、应用程序之间的交换等功能,在应用层之上,通常会有一些面向特定领域的协议,如HTTP、FTP、SMTP等。

总的来说,OSI七层模型将互联网通信过程分为七个独立的层次,每个层次都有不同的功能和任务,通过分层的方式方便了不同协议的选用和替换,同时避免了各个层之间功能相互依赖和相互影响的问题,提高了网络通信的可靠性和稳定性。

02 | 🛸OSI七层参考模型的信息流向🛸

在这里插入图片描述

如上图,A系统用户向B系统用户传送数据的信息流向如下:

  1. A数据先进入应用层,该层给数据加上一个强制信息(AH数据头),数据送往下一层表示层;

  2. 表示层对进入的数据按照协议进行必要的变换后也加上了强制信息(PH数据头),数据送往下一层会话层;

  3. 会话层对进入的数据也加上强制信息(SH数据头),数据送往下一层传输层;

  4. 传输层对进入的数据按照协议进行对长报文的分段后加上强制信息(TH数据头),数据送往下一层网络层;

  5. 网络层将信息变成报文分组,并加上组号NH,将数据传送到下一层的数据链路层;

  6. 数据链路层将进入的信息加上强制信息(DH数据头和DT数据尾),形成数据帧,传送到下一层的物理层;

  7. 物理层将接收到的数据按发送到B的物理层中;

  8. B接收到消息后,按照A发送消息的信息反流向进行数据解析,最后获取原始信息给到B系统用户

从上的步骤可以看出,实际上只有在物理层的时候才开始实际的传输,其余各层都是对数据进行封装的虚假传输。

http://www.lryc.cn/news/67158.html

相关文章:

  • Python(符号计算常微分方程)谐振子牛顿运动方程
  • OpenCL编程指南-1.2OpenCL基本概念
  • 使用 ChatGPT 辅助学习——为自己找一个老师
  • MySQL基础(二十一)用户与权限管理
  • 程序员的下一个风口
  • Android 自定义View 之 简易输入框
  • SpringMVC的基础知识
  • OpenPCDet系列 | 4.2 DataAugmentor点云数据增强模块解析
  • 精准测试之过程与实践 | 京东云技术团队
  • 类ChatGPT逐行代码解读(1/2):从零实现Transformer、ChatGLM-6B
  • 车道线检测
  • 云渲染靠谱吗,使用云渲染会不会被盗作品?
  • 什么是FPGA?关于FPGA基础知识 一起来了解FPGA lattice 深力科 MachXO3系列 LCMXO3LF-9400C-5BG256C
  • 有什么好用的云渲染?
  • 什么是医学影像PACS系统?PACS系统功能有哪些?作用有哪些?对接哪些设备?业务流程是什么?
  • 分布式缓存:什么是它以及为什么需要它?
  • MySQL基础(二十二)逻辑架构
  • 《Kubernetes证书篇:使用TLS bootstrapping简化kubelet证书制作》
  • vue+elementui+nodejs机票航空飞机航班查询与推荐
  • 将ssh发布密钥添加到服务器的ssh授权密钥中,但是为什么我仍然无法ssh登录到此服务器?
  • LeetCode——子串能表示从 1 到 N 数字的二进制串
  • 看火山引擎DataLeap如何做好电商治理(二):案例分析与解决方案
  • MySQL笔记-多表查询
  • 如何用100天时间,让CSDN的粉丝数从0狂飙到10000
  • 各种同质图神经网络模型的理论和节点表征学习任务的集合包rgb_experiment
  • 【C++进阶之路】类和对象(中)
  • AIMD 为什么收敛(tcp reno/cubic 为什么好)
  • 医院智能导诊系统,医院导航解决方案
  • 【论文复现】基于区块链的分布式光伏就地消纳交易模式研究(Matlab代码实现)
  • 在滴滴和字节跳动划水4年,过于真实了...