开放式系统互连(OSI)模型的实际意义

news2024/9/19 10:34:23

0 前言

开放式系统互连(OSI,Open Systems Interconnection)模型,由国际标准化组织(ISO)在1984年提出,目的是为了促进不同厂商生产的网络设备之间的互操作性。

定义了一种在层之间进行协议实现的网络框架,控制从一层传递到下一层。在概念上将计算机网络架构分7层,按照逻辑顺序进行。

用户角度:

  • 较低层处理电信号、二进制数据块及这些数据在网络中的路由
  • 较高层涵盖网络请求和响应、数据的表示及网络协议

OSI模型最初被构想为构建网络系统的标准架构,并且今天许多流行的网络技术都反映了OSI的分层设计。

tcp/ip

先有协议栈,才有参考模型。TCP/IP协议栈是在OSI参考模型之前就已经存在的,并且是先有协议栈,然后才有了参考模型。TCP/IP协议栈和OSI参考模型之间的关系可以这样理解:

1. TCP/IP协议栈历史

TCP/IP协议栈起源于1970s,由美国国防部高级研究计划局(DARPA)开发,用于支持ARPANET(互联网的前身)。

随ARPANET发展,TCP/IP协议栈逐渐成为互联网核心协议,1983年成为ARPANET标准协议。

1982年,TCP/IP协议栈被正式标准化,成为互联网的基础协议。

2. OSI参考模型的历史

  • 起源:OSI参考模型由国际标准化组织(ISO)在1984年提出,目的是为了提供一个通用的网络通信框架,促进不同厂商设备之间的互操作性。
  • 发展:OSI参考模型虽然提出了一个理想的网络通信框架,但由于TCP/IP协议栈已经在互联网中广泛应用,OSI模型并没有完全取代TCP/IP协议栈。

3. TCP/IP协议栈与OSI参考模型的关系

  • 层次对应:尽管TCP/IP协议栈和OSI参考模型在层次划分上有所不同,但它们之间存在一定的对应关系。

    • 应用层:对应OSI模型的应用层、表示层和会话层。
    • 传输层:对应OSI模型的传输层。
    • 网络层:对应OSI模型的网络层。
    • 网络接口层:对应OSI模型的数据链路层和物理层。
  • 实际应用:在实际应用中,TCP/IP协议栈更为广泛使用,而OSI参考模型更多地用于教学和理论研究,帮助理解网络通信的各个层次和功能。

总结

TCP/IP协议栈是在OSI参考模型之前就已经存在的,并且是先有协议栈,然后才有了参考模型。TCP/IP协议栈在互联网中得到了广泛应用,而OSI参考模型则提供了一个通用的网络通信框架,帮助理解和设计网络系统。尽管两者在层次划分上有所不同,但它们之间存在一定的对应关系,共同促进了网络通信技术的发展。

1 物理层(Physical Layer)

OSI模型的物理层负责将数字数据位从发送(源)设备的物理层通过网络通信介质传输到接收(目的)设备的物理层。

物理层的技术包括以太网电缆和集线器。此外,集线器和其他中继器是标准网络设备,功能位于物理层,连接器也是如此。

在物理层,数据使用物理介质支持的信号类型进行传输:电压、无线电频率或红外或普通光的脉冲。

在从物理层获取数据时,数据链路层检查物理传输错误,并将位打包成数据帧。数据链路层还管理物理寻址方案,例如以太网网络的MAC地址,控制网络设备对物理介质的访问。

由于数据链路层是OSI模型中最复杂的层次,通常被分为两个部分:

  • 介质访问控制子层
  • 逻辑链路控制子层

3 网络层

网络层在数据链路层之上添加了路由的概念。当数据到达网络层时,会检查每个帧中包含的源地址和目的地址,以确定数据是否到达最终目的地。如果数据到达最终目的地,本层将数据格式化为传递到传输层的数据包。否则,网络层会更新目的地址,并将帧推送到较低的层次。 为支持路由,网络层维护了诸如IP地址之类的逻辑地址,用于网络上的设备。网络层还管理这些逻辑地址与物理地址之间的映射。在IPv4网络中,通过地址解析协议(ARP)来完成这种映射;IPv6使用邻居发现协议(NDP)。

4 传输层

在网络连接中传递数据。TCP(传输控制协议)和UDP(用户数据报协议)是该层最常见的网络协议示例。不同的传输协议可以支持一系列可选功能,包括错误恢复、流量控制和重传支持。

5 会话层

管理启动和拆除网络连接的事件序列和流程。支持可以动态创建和在各个网络上运行的多种类型的连接。

6 表示层

OSI模型中功能最简单的部分。处理消息数据的语法处理,如格式转换和加密/解密,以支持位于其上方的应用层。

7 应用层

为最终用户应用程序提供网络服务。网络服务是与用户数据一起工作的协议。例如,在Web浏览器应用程序中,应用层协议HTTP将发送和接收Web页面内容所需的数据打包。这个第7层提供数据给(并从)表示层获取数据。

关注我,紧跟本系列专栏文章,咱们下篇再续! 作者简介:魔都架构师,多家大厂后端一线研发经验,在分布式系统设计、数据平台架构和AI应用开发等领域都有丰富实践经验。 各大技术社区头部专家博主。具有丰富的引领团队经验,深厚业务架构和解决方案的积累。 负责: ▪ 中央/分销预订系统性能优化 ▪ 活动&券等营销中台建设 ▪ 交易平台及数据中台等架构和开发设计 ▪ 车联网核心平台-物联网连接平台、长连基础设施建设,万级在线连接、日吞吐十万请求的场景,直面高并发、高可用挑战,接触到Netty在长连领域的场景 ▪ 大数据平台架构设计及优化 ▪ LLM Agent应用开发 ▪ 区块链应用开发 ▪ 大数据开发挖掘经验 ▪ 推荐系统项目

目前主攻市级软件项目设计、构建服务全社会的应用系统。

参考:

  • 编程严选网

    本文由博客一文多发平台 OpenWrite 发布!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2116222.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

EVO进行轨迹评估

EVO进行轨迹评估 文章目录 EVO进行轨迹评估1 前言1.1 轨迹对齐1.2 尺度变换1.3 绝对轨迹误差ATE和相对轨迹误差RTE1.4 绝对姿态误差APE和相对姿态误差RPE 2 安装evo2.1 evo安装2.2 相关报错2.2.1 版本不兼容问题2.2.2 解决PATH警告 2.3 测试 3 evo指令3.1 evo_traj3.2 evo_ape3…

深入理解单元测试

荐语 本文要介绍的是 2020 年 O’Reilly 出版的书籍 Unit Testing Principles, Practices, and Patterns,一本在豆瓣评分高达 9.9 的好书。 作为一名软件开发工程师,你应该对单元测试(unit test)很熟悉,但单元测试的目…

Scratch中秋节:中秋节赏月

小虎鲸Scratch资源站-免费Scratch作品源码,素材,教程分享平台! 作品推荐:中秋节赏月 | 一起享受中秋的美好时光 中秋佳节即将来临,一起感受传统节日的温馨氛围吧!小虎鲸Scratch资源站最新推出的节日作品《中秋节赏月》,将带你走进…

CTK框架(四): 插件编写

目录 1.生成插件 1.1.环境说明 1.2.服务类,纯虚类,提供接口 1.3.实现插件类,实现纯虚函数 1.4.激活插件,加入ctk框架的生命周期中 1.5.添加资源文件 1.6..pro文件 2.使用此插件 3.总结 1.生成插件 1.1.环境说明 编译ct…

【论文精读】 | 用于时间序列预测的通道对齐坚固的混合Transformer

文章目录 0、摘要1、介绍2、相关工作2.1 用于时间序列预测的Transformers2.2 用于时间序列预测的 RNN、MLP 和 CNN 模型 3、模型结构3.1 令牌化3.2 CARD 注意力胜过token3.3 CARD 注意力胜过渠道3.4 token 混合模块 4、基于信号衰减的损失函数5、实验5.1 长期预测5.2 基于重建的…

STM32——串口通信(发送/接收数据与中断函数应用)

文章目录 通信:串口通信简介:1.双工/单工:2.同步/异步:3.电平:电平标准: 串口参数以及数据帧时序:数据帧:1.波特率和比特率:例:无校验,1位停止位 …

B: 小球反弹

目录 一: 二: 三: 四: 一:问题描述 有一长方形,长为343720 单位长度,宽为233333 单位长度。在其内部左上角顶点有一小球(无视其体积),其初速度如图所示且…

【MySQL】MySQL中表的增删改查——(基础篇)(超详解)

前言: 🌟🌟本期讲解关于MySQL中CDUD的基础操作,希望能帮到屏幕前的你。 🌈上期博客在这里:http://t.csdnimg.cn/fNldO 🌈感兴趣的小伙伴看一看小编主页:GGBondlctrl-CSDN博客 目录 …

Python Flask_APScheduler定时任务的正确(最佳)使用

描述 APScheduler基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能。最近使用Flask框架使用Flask_APScheduler来做定时任务,在使用过程当中也遇到很多问题,例如在定时任务调用的方法中需要用到flask的app.app_context()时&#…

Transformer预测 | 基于Transformer心率时间序列预测(tensorflow)

效果一览 基本介绍 Transformer预测 | 基于Transformer心率时间序列预测(tensorflow) 程序设计 import pandas as pd from pandas.plotting import lag_plot from statsmodels.graphics

暴雨AMD,一起更YES

9月6日,暴雨信息联合AMD举办了“创新驱动 智能未来——2024年行业技术与应用分享会”。在这里,我们与行业领袖、技术专家们一起,深入探讨AI技术的前沿技术动态,洞悉高性能计算的发展趋势,在思维的碰撞和智慧的交融中&a…

BERT 论文逐段精读【论文精读】

BERT: 近 3 年 NLP 最火 CV: 大数据集上的训练好的 NN 模型,提升 CV 任务的性能 —— ImageNet 的 CNN 模型 NLP: BERT 简化了 NLP 任务的训练,提升了 NLP 任务的性能 BERT 如何站在巨人的肩膀上的?使用了哪些 NLP 已有的技术和思想&#xff…

进程等待与退出

目录 前言 0.进程如何退出 1.进程status的获取 2.进程status的组成 3.退出status的分用与验证 4.解释一下errno与waitpid输中status参数的关系 5.status设计 前言 我们在编写程序的时候,我们往往需要知道这个程序中的某个进程执行情况是怎么样的&#xff…

我搞了一台switch

准确的说我搞了一台switch oled。为啥要买个游戏机呢?前些日子去轰趴馆团建,玩了一会switch,当时玩的游戏是《刺客信条3重制版》,感觉挺好玩的。我其实是手残党,很多网络游戏玩的都不是很好,而且大学的时候…

【阿一网络安全】如何让你的密码更安全?(二) - 非对称加密

上次《【阿一网络安全】如何让你的密码更安全?(一) - 对称加密》提到加密算法的对称加密,我们这次来聊聊非对称加密。 和对称加密不同,非对称加密的加密密钥和解密密钥不同。 非对称加密 大概过程就是,发送方使用公钥对明文数据…

Java 后端接口入参 - 联合前端VUE 使用AES完成入参出参加密解密

加密效果&#xff1a; 解密后的数据就是正常数据&#xff1a; 后端&#xff1a;使用的是spring-cloud框架&#xff0c;在gateway模块进行操作 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>30…

Unity | 内存优化之Reserved Unity内存

目录 一、Render Texture资源 1.抗锯齿 2.阴影分辨率 3.深度 4.HDR格式 二、动画资源 1.Resample Curves 2.动画压缩 (1)Keyframe Reduction (2)Optimal(推荐) 3.剔除Scale曲线 (1)开启Remove Constant Scale Curves (2)使用脚本剔除scale曲线 4.降低精…

WordPress上可以内容替换的插件

插件下载地址&#xff1a;WordPress内容替换插件 – 果果开发 类型 替换的类型&#xff1a;文章、自定义文章类型、分类、标签、媒体库、页面、评论、数据库表&#xff0c;不同的类型可以替换不同的字段。 替换字段 替换的字段&#xff0c;哪些字段内容需要替换。除了数据库…

《系统架构设计师教程(第2版)》第17章-通信系统架构设计理论与实践-03-移动通信网网络架构

文章目录 1. 5GS与DN互连1.1 5GS概述1.2 5GS 与DN网络的连接关系1.3 UE连接DN的两种模式1.3.1 透明模式1.3.2 非透明模式 2. 5G 网络边缘计算 1. 5GS与DN互连 1.1 5GS概述 5GS&#xff1a;5G SystemDN&#xff1a;Data NetworkIMS&#xff1a;IP Media Subsystem&#xff08;一…

Android逆向(反调,脱壳,过ssl证书脚本)

文章目录 总结 基础Android基础工具 定位关键代码页面activity定位数据包参数定位堆栈追踪 编写反调脱壳好用的脚本过ssl证书校验抓包反调的脚本打印堆栈bilibili反调的脚本 总结 暑假做了两个月的Android逆向&#xff0c;记录一下自己学到的东西。对于app渗透有了一些思路。 …