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

【计算机网络---OSI七层模型】

一、OSI的基本概念及原则

OSI是Open System Interconnect的缩写,意为开放式系统互联。各个层次的划分遵循以下原则:

 1. 同一层的各网络节点都有相同的层次结构,具有同样的功能;
 2. 同一节点的内相邻层之间通过接口进行通信;
 3. 七层结构的每一层使用下一层提供的服务,并且向上一层提供服务;
 4. 不同节点的同等层按照协议实现对等层之间的通信。

二、OSI七层模型各层功能概述

OSI七层网络模型TCP/IP四层概念模型对应网络协议
应用层(Application)应用层HTTP、TFTP、FTP、NFS、WAIS、SMIP
表示层(Presentation)Telnet、Rlogin、SNMP、Gopher
会话层(Session)SMTP、DNS
传输层(Transport)传输层TCP、UDP
网络层(Network)网络层IP、ICMP、ARP、RARP、AKP、UUCP
数据链路层(Data Link)数据链路层FDDI、Ethernet、Arpanet、PDN、SLIP、PPP
物理层(Physical)IEEE 802.1A、IEEE 802.2到IEEE 802.11

 第一层:物理层

在OSI参考模型中,物理层是参考模型的最低层,也是OSI模型的第一层。

物理层的主要功能:

利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。物理层的作用是实现相邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异,使其上面的数据链路层不必考虑网络的具体传输介质是什么。

 第二层:数据链路层

数据链路层是OSI模型的第二层,负责建立和管理节点间的链路。在计算机网络中,由于各种干扰的存在,物理链路是不可靠的。

数据链路层的主要功能:

在物理层提供的比特流的基础上,通过差错控制、流量控制等方法,使有差错的物理线路变为无差错的数据链路,即提供可靠的通过物理介质传输数据的方法。

 第三层:网络层

网络层是OSI模型的第三层,是其中最复杂的一层,也是通信子网的最高一层,在下两层的基础上向资源子网提供服务。

网络层的主要功能:

在数据链路层提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,控制数据链路层与传输层之间的信息转发,建立、维持和终止网络的连接,将数据设法从源端经过若干个中间节点传送到目的端(点到点),从而向传输层提供最基本的端到端的数据传输服务。具体来说,数据链路层的数据在网络层被转换为数据包,然后通过路径选择、分段组合、顺序、进/出路由等控制,将信息从一个网络设备传送到另一个网络设备。数据链路层和网络层的区别为:数据链路层的目的是解决同一网络内节点之间的通信,而网络层主要解决不同子网之间的通信。

 第四层:传输层

 OSI模型下面三层的任务是数据通信,上面三层的任务是数据处理,而传输层作为OSI的第四层,提供建立、维护和拆除传输连接的功能,起到了承上启下的作用。

传输层的主要功能:

向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输,同时向高层屏蔽下层数据通信的细节,即向用户透明地传送报文。

第五层:会话层 

 会话层是OSI模型的第五层,是用户应用程序和网络之间的接口。

会话层的主要功能:

组织和协调两个会话进程之间的通信,并对数据交换进行管理。当建立会话时,用户必须提供他们想要连接的远程地址,而这些地址与MAC地址或网络层的逻辑地址不同,它们是为用户专门设计得,更便于用户记忆。域名就是一种网络上使用的远程地址。会话层的具体功能如下:

  1. 会话管理:允许用户在两个实体设备之间建立、维持和终止会话,并支持它们之间的数据交换;
  2. 会话流量控制:提供会话流量控制和交叉会话的功能;
  3. 寻址:使用远程地址建立会话;
  4. 出错控制:从逻辑上将会话层主要负责数据交换的建立、保持和终止,但实际的工作却是接收来自传输层的数据,并纠正错误。 

第六层:表示层

表示层是OSI模型的第六层,它对来自应用层的命令和数据进行解释,对各种语法赋予相应的含义,并按照一定的格式传送给会话层。

表示层的主要功能:

处理用户信息的表示问题,如编码、数据格式转换和加密解密等。表示层的具体功能如下:

  1.  数据格式处理:协商和建立数据交换的格式,解决各应用程序之间在数据格式表示上的差异;
  2. 数据的编码:处理字符集和数字的转换;
  3. 压缩和解压缩:为了减少数据的传输量,表示层还负责数据的压缩与恢复;
  4. 数据的加密与解密:可以提高网络的安全性。

 第七层:应用层

应用层是OSI模型的最高层,是计算机用户,以及各种应用程序和网络之间的接口。

应用层的主要功能:

直接向用户提供服务,完成用户希望在网络上完成的各种工作。它在其他6层工作的基础上,负责完成网络中应用程序与网络操作系统之间的联系,建立与结束使用者之间的联系,并完成网络用户提出的各种网络服务及应用所需的监督、管理和服务等各种协议。此外,应用层还负责协调各个应用程序间的工作,其具体功能如下:

  1. 用户接口:应用层是用户与网络,以及应用程序与网络间的直接接口,使得用户能够与网络进行交互式联系;
  2. 实现各种服务:应用层具有的各种应用程序可以完成和实现用户请求的各种服务。 

三、OSI七层模型举例

 举例:以A公司向B公司发送一次商业报价单为例。

分析如下

  • 应用层:A公司相当于实际的电脑用户,要发送的商业报价单相当于应用层提供的一种网络服务,当然,A公司也可以选择其他服务,比如发送一份商业合同、发送一份询价单等;
  • 表示层:由于A公司和B公司是不同国家的公司,他们之间协商统一用英语作为交流语言,所以此时A公司的文秘(表示层)将从上级(应用层)获取到的商业报价单的语言翻译为英语,同时为了防止被别的公司盗取机密信息,A公司的文秘还会对这份报价单进行一些加密处理。这就是表示层的作用,将应用层的数据转换翻译。
  • 会话层:A公司外联部同事(会话层)掌握着其他许多公司的联系方式,他们负责管理本公司与外界许多公司的联系会话。当外联部同事拿到文秘(表示层)转换为英文的商业报价单后,首先要找到所要联系的B公司的地址信息,并附上自己的地址和联系方式,然后将报价单放进信封准备寄出。等B公司确认接收到报价单后,外联部的同事才去办其他事情,继而终止此次会话。
  • 传输层:传输层就相当于A公司中负责收发邮件的人,A公司自己的投递员负责将上一层(会话层)要寄出的资料投递到快递公司或邮局。
  • 网络层:网络层就相当于快递公司庞大的快递网络,全国不同的集散中心,比如说深圳发往北京的顺丰快递,首先要到顺丰的深圳集散中心,从深圳集散中心再送到武汉集散中心,从武汉集散中心再寄到北京顺义集散中心。其中每个集散中心都相当于网络中的一个IP节点。
  • 数据链路层:相当于顺丰快递内部为了保证效率和质量的一种内部操作。
  • 物理层:快递寄送过程中的交通工具就相当于物理层,例如飞机、火车、汽车等。

 
四、OSI七层模型总结

OSI七层模型关键词
应用层产生网络流量的程序
表示层传输之前是否进行加密或压缩处理
会话层查看会话、查木马netstat-n
传输层可靠传输、流量控制、不可靠传输
网络层负责选择最佳路径、规划IP地址
数据链路层数据帧的开始和结束、透明传输、差错校验
物理层接口标准、电器标准、如何更快传输数据

五、相关概念解释

5.1、比特流

比特流是指由比特(bit,即二进制位)组成的数据流,它是计算机中处理和传输数据的最基本形式。比特流由0和1两种二进制数字组成,用来表示数据、指令或控制信息。比特流通常是以电信号或电磁波的形式在计算机网络中传输,以便在不同的计算机和设备之间进行数据交换。

比特流的底层原理:

  • 信号传输:在计算机中,比特流通常是以电信号或电磁波的形式进行传输。例如:通过网线传输的比特流就是通过电信号的形式进行传输的。在信号传输的过程中,需要考虑电磁干扰、传输距离等因素,以保证信号的质量和可靠性。
  • 数据表示:计算机中的数据是以二进制形式进行表示的,比特流是由0和1组成的二进制数字序列。每8位二进制数字组成一个字节,不同的字节可以表示不同的数据类型,如整数、字符、浮点数等。
  • 码制:为了提高数据的传输效率和可靠性,比特流通常需要进行码制转换。例如:在数字通信中,可以使用调制技术将比特流转换为模拟信号进行传输,以便在不同的信号媒介上进行传输。另外,还以使用压缩算法对比特流进行压缩,以减少数据传输的时间和宽带需求。

 5.2、点到点、端到端

点到点服务端到端服务
主要使用层数据链路层传输层
概念数据链路层只负责直接相连的两个节点之间的通信,一个节点的数据链路层接受网络层数据并封装之后,就把数据帧从链路上发送到与其相邻的下一个节点端到端,即为发送端到接收端。端到端通信建立在点到点通信的基础上,是由一段段的点到点通信信道构成的,是比点到点通信更高一级的通信方式,完成应用程序(进程)之间的通信
优点发送端设备送出数据后,它的任务就已经完成了,不需要参与整个传输过程,不会浪费发送端设备的资源;即使接收端设备关机或故障,点到点传输也可以采用存储转发技术进行缓冲链路建立后,发送端知道接收设备一定能收到,而且经过中间交换设备时不需要进行存储转发,因此传输延迟小
缺点发送端送出数据后,不知道接收端能否收到或者何时收到数据直到接收端收到数据为止,发送端的设备要全程参与,如果整个传输过程的延迟很长,那么对发送端的设备会造成很大的浪费;且若接收设备关机或故障,端到端传输不可能实现

相关文章:

【计算机网络---OSI七层模型】

一、OSI的基本概念及原则 OSI是Open System Interconnect的缩写,意为开放式系统互联。各个层次的划分遵循以下原则: 1. 同一层的各网络节点都有相同的层次结构,具有同样的功能; 2. 同一节点的内相邻层之间通过接口进行通信&…...

Error updating database. Cause: org.apache.shiro.UnavailableSecurity

mybtisplus查看MetaObjectHandler是否有自定义获取用户信息填充用户的方法...

【网络安全】本地文件包含及远程文件包含漏洞详解

一、文件包含漏洞概述 1.1 什么是文件包含 开发人员将需要重复调用的函数写入一个文件,对该文件进行包含时产生的操作。这样编写代码能减少冗余,降低代码后期维护难度。 保证网站整体风格统一:导航栏、底部footer栏等,把这些不…...

redis启动的三种方式

默认启动: # 默认的启动指令 redis-server 默认启动属于前台启动,会阻塞整个会话窗口,窗口关闭或者按下CTRL C则Redis停止。不推荐使用。 //查看云服务器是否安装过redis redis-server -v//检查安装目录 which redis-server//查看redis进…...

手机怎么远程控制电脑屏幕?手机远程控制电脑方法分享

手机与电脑之间的互联互通变得越来越便捷。 无论是工作还是学习,有时我们需要在手机上远程控制电脑屏幕,以完成一些复杂的操作或查看电脑上的文件。 本文将详细介绍几种实用的手机远程控制电脑屏幕的方法,帮助读者轻松实现这一目标。 一、使…...

NET的全称、主要功能以及在计算机网络中的作用?

.NET是一个广泛的、全方位的平台,应用于开发网站、应用程式、网页应用程式和网络服务。以下是.NET的全称、主要功能以及在计算机网络中的作用: .NET的全称 .NET的全称实际上是Microsoft .NET Framework。它是微软公司推出的一种面向网络的开发框架&…...

LLM - 使用 HuggingFace + Ollama 部署最新大模型 (GGUF 格式 与 Llama 3.1)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/141028040 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 Ollama…...

如何实现Redis和Mysql中数据双写一致性

在我们的实际开发中,我们用到了redis缓存一些常用的数据(如热点数据)用来提高系统的吞吐量。 但是不可以避免的出现了数据的修改场景,这就导致了数据库中的数据和Redis中出现不一致性的情况。如何保证数据一致性就显得非常重要了&…...

three.js 模型高亮效果实现说明(结合react)

three.js react 实现鼠标移入模型高亮选中效果 使用EffectComposer和其附加的渲染效果Passes(如RenderPass和OutlinePass)来实现高级渲染效果。首先创建EffectComposer实例,并添加RenderPass和OutlinePass,最后在渲染循环中调用…...

入营测评题解

第一题&#xff1a;first 第二题&#xff1a;chengji 打擂台&#xff0c;每个数跟当前最大、最小值比较&#xff0c;维护当前最值即可。 #include<bits/stdc.h> using lllong long; using namespace std;const int N1e610;int n; int x;//1e9, ll最大9e18 ll maxn0,minn…...

制造知识普及(十)-- 常见的工业软件介绍

「 1. ERP」 企业资源计划&#xff08;enterprise resource planning&#xff0c;ERP&#xff09;是制造企业的核心管理软件。ERP系统的基本思想是以销定产&#xff0c;协同管控企业的产、供、销、人、财、物等资源&#xff0c;帮助企业按照销售订单&#xff0c;基于产品的制造…...

Windows系统设置网络IPv4和IPv6优先访问级

Windows系统设置网络IPv4和IPv6优先访问级 资源宝整理分享&#xff1a;www.httple.net 在数字化的世界中&#xff0c;我们离不开互联网&#xff0c;而互联网协议&#xff08;IP协议&#xff09;则扮演着至关重要的角色。IPv4曾是互联网的主要标准&#xff0c;但随着IP地址枯竭问…...

yolov8 剪枝 - DepGraph

2024年8月5 5000张图片&#xff0c;2个类别。 yolov8n 初始&#xff1a; 185 layers, 3151904 parameters, 31936 gradients, 8.7 GFLOPs 经过三次finetune后&#xff1a; 185 layers, 2327024 parameters, 31936 gradients, 6.6 GFLOPs 经过第四次fintune后&#xff1a; …...

【网络】套接字socket编程预备知识

1.源IP地址和目的IP 计算机网络中的源地址和目的地址是用来标识网络中的不同主机的。 源地址是指发送数据包的主机的地址&#xff0c;而目的地址则是指接收数据包的主机的地址&#xff0c;在数据包传输过程中&#xff0c;每经过一个路中器感交换机&#xff0c;都会根据目的地址…...

【学习笔记】Day 8

写在开头&#xff1a; 最近老板突然提出一个全新的组会主题&#xff0c;是关于 “最近我犯的傻”&#xff0c;其目的在于提供乐子的同时引以为戒。本来我还在愁到底去哪里找干的啥事儿&#xff0c;结果今天直接拉了个大的。什么叫无心插柳柳成荫啊&#xff0c;悲。 一…...

springboot整合libreoffice(两种方式,使用本地和远程的libreoffice);docker中同时部署应用和libreoffice

一、 背景 因为项目中需要使用word转pdf功能&#xff0c;因为转换速度原因&#xff0c;最后选用了libreoffice&#xff0c;原因及部署请参考 linux ubuntu环境安装libreoffice&#xff0c;word转pdf 远程调用的话可选docker部署&#xff0c;请看2.3.1 二、springboot整合libr…...

从入门到精通:大学生编程技能提升全攻略

文章目录 每日一句正能量前言编程语言选择编程语言选择&#xff1a;为新手导航Python&#xff1a;初学者的友好伙伴JavaScript&#xff1a;Web开发的核心Java&#xff1a;企业级应用的经典C&#xff1a;系统编程的基石Ruby&#xff1a;优雅高效的编程Swift&#xff1a;iOS开发的…...

C# .NET Framework的特殊委托

C# .NET Framework的特殊委托 .NET Framework中定义了几种特殊的委托类型&#xff0c;以简化委托的使用。以下是一些常用的特殊委托类型&#xff1a; Predicate<T> 这是一个返回布尔值的委托&#xff0c;接受一个类型为T的参数。常用于定义过滤条件。 using System; …...

C# 判断电脑是否联网

项目中连接webAPI需要判断是否联网&#xff0c;故找到这个方法&#xff0c;不需要引用任何dll&#xff0c;代码复制一下&#xff0c;直接使用。wininet.dll是系统自带的 public void Initial(){try{ if (IsNetworkConnected){SvMaster.Log.WriteInfo("网络…...

爬虫解析代码结构

在设计中加入一个顶层接口是有益的&#xff0c;特别是当您希望实现统一的接口来处理所有类型的排行榜数据时。这样做可以提供更好的灵活性和扩展性&#xff0c;同时保持代码的整洁和易于维护。 设计概述 接口: 定义一个 RankingDataCollector 接口&#xff0c;它定义了所有数…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

【论文笔记】若干矿井粉尘检测算法概述

总的来说&#xff0c;传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度&#xff0c;通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

&#x1f50d; 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术&#xff0c;可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势&#xff0c;还能有效评价重大生态工程…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

智能仓储的未来:自动化、AI与数据分析如何重塑物流中心

当仓库学会“思考”&#xff0c;物流的终极形态正在诞生 想象这样的场景&#xff1a; 凌晨3点&#xff0c;某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径&#xff1b;AI视觉系统在0.1秒内扫描包裹信息&#xff1b;数字孪生平台正模拟次日峰值流量压力…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象&#xff0c;只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意&#xff1a;它移动的位置必须是相连的有内容的单元格…...

JAVA后端开发——多租户

数据隔离是多租户系统中的核心概念&#xff0c;确保一个租户&#xff08;在这个系统中可能是一个公司或一个独立的客户&#xff09;的数据对其他租户是不可见的。在 RuoYi 框架&#xff08;您当前项目所使用的基础框架&#xff09;中&#xff0c;这通常是通过在数据表中增加一个…...

基于 TAPD 进行项目管理

起因 自己写了个小工具&#xff0c;仓库用的Github。之前在用markdown进行需求管理&#xff0c;现在随着功能的增加&#xff0c;感觉有点难以管理了&#xff0c;所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD&#xff0c;需要提供一个企业名新建一个项目&#…...