以太网OSI参考模型(四)

news2024/9/27 12:13:59

目录

OSI模型

一、物理层

二、数据链路层

三、网络层

四、传输层

五、会话层

六、表示层

七、应用层


OSI模型

        OSI七层模型,是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)1984年联合制定的开放系统互联参考模型,为开放式互联信息系统提供了一种功能结构的框架。它将网络分为七层从低到高分别是:物理层、数据链路层、网络层、传输层、会话层、表示层和、应用层,模型如下图所示:

一、物理层

        物理层的主要功能是利用传输介质为数据链路层提供物理连接,负责数据流数据的物理传输。其传输的基本单位是比特流,可以是最基本的电信号或光信号。同时与上传数据传输方式是数据信号。即物理层的主要工作就是实现物理介质上光信号/电信号 到 数据信号之间的转换。

二、数据链路层

        数据链路层在通信实体间建立数据链路联结,与数据传送和识别数据帧。在数据链路层传输的基本单位是“帧”,将数字信号花费为具有意义的数据帧传输给对端。实现设备实体的通信。

        在数据链路层以物理地址-MAC地址为不同主机设备的标识,在数据帧的发送过程,数据除了封装的上层数据,还在头部包含与源物理地址和目的物理地址,以此来判断是发往哪台主机设备的数据帧。

注:在TCP/IP协议栈中常用ARP协议获取对端设备的MAC地址

三、网络层

        网络层是将数据传输到目标地址。目标地址可以是多个网络通过路由器连接而成的某一个地址。因此这一层主要负责寻址和路由选择。

注:TCPIP协议栈中,以IP地址为网络层地址标识符,局域网内同步不同IP地址与同网段主机设备通信,不同网段的主机设备需要通过路由器实现网段间的路由

四、传输层

        传输层主要工作是在数据传输过程提供可靠的传输作用。只在通信双方节点上进行处理,而无需在路由器上处理。传输层定义了传输数据的协议端口号,以及流控和差错校验。在数据传输中将上层应用报文以端口号区分的方式实现端到端的通信服务。

注:传输层主要的传输形式有两种,一种是面向无连接的传输,其主要应用在高实时性、且可靠性要求不高的场景,常用协议为UDP;另一种是面向连接的通信传输,主要是通过连接建立稳定可靠的通信传输,但同时也牺牲了一部分数据传输的实时性,常用协议为TCP

五、会话层

        会话层负责建立和断开通信连接,以及数据的分等数据传输相关的管理。即建立、管理、中止会话。

六、表示层

        具体来说,就是将设备固有的数据格式转换为网络标准传输格式。不同设备对同一比特流解释的结果可能会不同。因此,使它们保持一致是这一层的主要作用。

注:表示层常见工作有数据格式变化、数据加密与解密、数据压缩与解压等。

七、应用层

        应用层为应用程序提供服务并规定应用程序中通信相关的细节。包括文件传输、电子邮件、远程登录(虚拟端) 等针对特定协议。

注:应用层不仅有数据的应用,也会涉及到特定应用场景的协议或自定义协议。

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

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

相关文章

06-C++学习笔记-指针的定义与使用

指针是C中非常重要的概念,它允许直接访问内存地址,并通过地址操作变量。本篇笔记将介绍指针的定义与使用方法,以及指针与数组的关系。 1️⃣ 指针的引入 指针的引入是为了解决需要直接访问内存地址的情况。通过指针,可以间接访问…

Android TextView 展示特殊字符高度变高问题解决

背景 #在我们的项目中,展示文字是很常见的需求,但是在线上展示中发现,有些信息是特殊字符展示的,而且这些字符的高度会导致TextView的高度变高(与正常字符比)。 效果如下: 很明显&#xff0…

森云+优控配置摄像头进行录像和拍照测试

森云和优控配置摄像头进行录像和拍照测试 现在其实已经基本上明确自己的环境了,就是在ubuntu下的pycharm和vscode,然后下载conda(但是不要默认的base环境,只要conda create -n xxx 这样的基本功能就好了) 显示opencv…

AI绘画StableDiffusion:云端在线版使用笔记分享(Kaggle版)

玩AI绘画(SD),自己电脑配置不够?今天给大家介绍一下如何baipiao在线版AI绘画StableDiffusion。 Kaggle 是世界上最大的数据科学社区,拥有强大的工具和资源,可帮助您实现数据科学目标。(每周可以…

【MySQL学习笔记】(六)MySQL基本查询

表的增删查改 1 create1.1 单行数据全列插入1.2 多行数据 指定列插入1.3 插入否则更新1.4 替换 2 retrieve2.1 select列2.1.1 全列查询2.2.2 指定列查询2.2.3 查询字段为表达式2.2.4 为查询结果指定别名2.2.5 结果去重 2.2 where 条件2.2.1 null的查询 2.3 结果排序2.4 筛选分…

如何搭建一个实时对话转录应用(类似zoom中的文本转录功能)并部署到 Heroku

文章目录 应用搭建Assembly AI文件夹结构前端搭建HTMLindex.js 后端搭建server.jspackage.json Heroku 部署创建账号创建Heroku应用上传仓库 应用搭建 应用基于 html javascript使用的第三方 API 是 Assembly AI 提供的 Assembly AI 要使用 real-time transcript 功能&…

ChatGPT:为教育创新提供五大机遇

随着智能技术的不断发展,ChatGPT在教育场景中的创新价值可能比我们能够意识到的还要多。比如它可以自动处理作业、在线答疑,可以辅助语言学习、实时沟通,甚至还可以用于评估诊断、科学研究。国内外关于利用ChatGPT实现教育创新的场景描绘已经…

【Matplotlib】多级雷达图绘制

一、实例1:个人能力画像雷达图 # -*- coding: utf-8 -*- """ Created on Sat Jul 1 20:52:54 2023author: zcq """import numpy as np import matplotlib.pyplot as plt import matplotlibmatplotlib.rcParams[font.family]SimHei …

灯夹三角架

2个卡箍1个无头螺丝拼1个灯夹 还需要1个三脚架固定 difference(){union(){translate([18,-7,0])cube([14,14,1]);translate([-7,18,40])cube([14,14,1]);translate([-7,-32,40])cube([14,14,1]);points [[7,-32,40], //0[18,-7,0], //1[18,7,0], //2[7,-18,40], //3[7,…

【C++面向对象】足球比赛数据统计系统(面向对象练习)

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化 👉荣__誉👈:阿里云博客专家博主、51CTO技术博主 &#x…

【IoT】硬件产品经理:从入门到精通(卫朋)

目录 介绍 出版过程 CSDN学院 下单方式 个人介绍 介绍 2023 年已经过去了一半。 作为阶段小目标,这本书也如期发布了。 先来看看封面,这里也要感谢编辑们的辛苦付出。 ​ 出版过程 出版本身其实是一件比较严肃的事情。 过去的一年多时间&#…

进程的基本概念解读

目录 什么是进程 PCB OS中用于管理控制的数据结构 进程控制块PCB的作用 进程控制块中的信息 前趋图 背景 作用 表示 示例 程序的顺序执行 程序顺序执行的特征 程序的并发执行 程序的并发执行的特征 例题解读 进程的三种基本状态 进程的三种状态之间的转换 进…

linux下RabbitMQ的使用

文章目录 linux下RabbitMQ的使用首先docker启动网页打开网址:用户名和密码登录创建exchanges:创建Queues增加Queues的Bind linux下RabbitMQ的使用 首先docker启动 su rootsudo docker run -d --hostname rabbitsvr --name rabbit -p 5672:5672 -p 15672:15672 -p …

Uniform的理解

Uniform:一种从Cpu的应用,向Gpu中的着色器发送数据的方式,它是全局的,可以被任意着色器程序在任意阶段访问。 若声明了一个Uniform却没用过,编译器会默认移除这个变量,导致编译出的版本并不包含它&#xff…

配置本地的application-dev.yml读取nacos上面的配置

我想配置本地的application-dev.yml读取nacos上面的配置,我应该在配置文件里怎么写?并且在nacos里怎么建立 在本地的application-dev.yml文件中,您可以使用Spring Cloud Nacos来读取Nacos上的配置。以下是在配置文件和Nacos中设置的步骤&…

servlet+JSP与SpringBoot+Vue项目交互——servlet访问Vue页面

问题 servletJSP与SpringBootVue项目交互——servlet访问Vue页面 详细问题 笔者前一段时间开发一个项目,使用的技术框架是servletJSP,现阶段开发的项目技术框架为SpringBootVue,笔者现在需要输入servletJSP的路由地址(登录页面…

3DTiles Next研究

3DTiles Next是Cesium发布的下一代3DTiles规范。 元数据 在这一代规范中,更重视元数据(metadata,如建筑物ID或者类型等),通过这些元数据可以对3dtiles进行样式调整或者过滤显示。 关于详细的元数据规范介绍看这里。 …

Spark SQL生产优化经验--任务参数配置模版

大表扫描 特殊case说明:当任务存在扫event_log表时需注意,若对event_log表进行了过滤,且过滤比很高,如下图的case,input为74T,但shuffle write仅为3.5G,那么建议提高单partition的读取数据量&a…

Redis数据库高可用之RDB和AOF持久化

Redis数据库高可用、RDB和AOF持久化、性能管理 一、Redis 高可用二、Redis 持久化Ⅰ、持久化的功能Ⅱ、两种持久化方式Ⅲ、RDB 和 AOF 的区别 三、RDB 持久化Ⅰ、触发条件Ⅱ、执行流程 四、AOF持久化Ⅰ、开启AOFⅡ、执行流程 五、RDB 和 AOF 的优缺点Ⅰ、RDB 持久化Ⅱ、AOF 持久…

金鹰优化算法,附MATLAB代码,直接复制

金鹰优化算法(golden eagle optimizer, GEO)是于2020年提出的新型智能优化算法,该算法建立于金鹰个体 捕食过程中的巡航和攻击行为之上,通过平衡两者关系,帮助函数寻找最优值,已经在许多方面得到了应用。 关…