OSI 网络 7 层模型

    • 问: 请你介绍一下OSI七层网络模型
      • 物理层
          • 解决什么问题?
          • 功能原理
          • 问题
      • 数据链路层
          • 解决什么问题
          • 功能原理
      • 网络层
          • 解决的问题
          • 功能原理
      • 传输层
          • 解决什么问题
          • 功能原理
          • 会话层
          • 解决什么问题
          • 功能原理:
      • 表示层
          • 解决什么问题
      • 应用层
          • 解决什么问题
          • 如何展示?

问: 请你介绍一下OSI七层网络模型

物理,链路,网络,传输,会话,表示,应用

问题: 他们都有什么用,解决了什么问题?

物理层

解决什么问题?
  • 数据传输的问题.
功能原理
  • 网络传输的硬件基础,数据传输的媒介

  • 传输 bit 数据

  • 形象的理解: 网线(当然不止)

问题

只负责传输数据,不管传给谁.(信号的广播)

例子
就像一个广播器,你发送什么,他就广播给路线上面的所有人

数据链路层

解决什么问题

数据谁接收的问题.

上面的物理层只负责发送数据,不管数据谁接收,如何判断数据发送给谁的?

很简单,每个数据上面写个名字就知道是发送给谁的了

功能原理
  • 信息的选择性接收,每一个机器都有一个唯一的网卡(mac 地址独一无二),
  • 将 bit数据封装为帧,每一帧都加上接收方的 mac 地址,
  • 接受数据的时候只接受我的 mac 地址的数据,其他数据不管.

例子

将字写到一个信封里面,每一封信都写上名字(mac 地址),每个人都只收自己的信,别人的信不管.

网络层

解决的问题
  • 信息发送到哪里的问题

  • 是遍布全世界的一张巨型大网,数据从一端发送到另外一端要经历无数的交叉节点(路由器),如果全部使用广播的形式传输数据效率太低了,而且还会有无数次的数据重复

  • 那要高效的将数据发送到对应位置,我们的信封上面应该写上邮政编码(收信地址)

功能原理
  • 提供 IP 地址
  • 将数据帧封装成包,每个包写上 IP 地址(邮政编码),路由器拿到包解析 IP 地址,对比自己本地的 ip 地址转发表,将包发送到下一个路由器.

例子

  • 简单理解就是邮件的发送过程,邮件写上名字只知道谁的邮件,全世界这么多人要一个个找吗?
  • 所以邮政编码相当于 IP,路由器相当于邮件中转站;
  • 当邮件到达一个中转站,会根据他的邮政编码将邮件发送到下一个中转站而不是通过广播的方式传输.

到这里网络的基本雏形就有了,信号可以从一台设备发送到另一台设备

传输层

解决什么问题
  • 进程间的网络通信.
  • 上面只实现了设备之间的通信,就类似一个对讲机,功能比较单一.
  • 那么如果我想要与多台机器同时通信呢,如何区分他们谁是谁?(比如同时使用 QQ 与微信,如何区分哪些是 QQ 消息,哪些是微信消息?)
功能原理
  • 增加了端口
  • 将包封装为报文,每个报文都添加端口号,每个端口只能被一个进程使用,当报文达到设备(电脑),(操作系统)解析端口并交个对应的进程

举个例子

  • 你接收了很多的邮件,他们代表不同的功能(有中奖的,有工作的,有催你还花呗的),
  • 这时,你有一个秘书(操作系统)帮你将邮件放入对应的处理工序(进程)里面
  • 这时你可以同时接受各个地方发来的各种邮件,而这些邮件不会 乱成一团

而且根据不同的场景还提供了更加丰富的协议 tcp 与 udp

传输层的多进程支持为后面丰富的应用层功能提供基础

会话层
解决什么问题
  • 传输层进一步包装,
  • 控制连接开启,关闭,维护的控制中心
功能原理:
  • 控制连接与断开(代表:ssh)

类似于一个控制器,开关

表示层

解决什么问题
  • 数据传输的加密(加密通信:https)与多数据格式的解析(比如图片,音频,视频,收到的都是二进制形式的,如何转换成原始的数据)
  • 主要解决安全问题与丰富的文件格式的支持

应用层

解决什么问题
  • 展示发送方发送的数据最原始的样子(页面)
如何展示?
  • 发送方与接收方必须是相同的网络传输协议,采用相同一套的数据排版方式,
  • 这样拿到数据之后才知道每个数据怎么使用,放到那个位置,而不是接受一堆二进制数据.

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

VTK知识学习(27)- 图像基本操作(二)

1、图像类型转换 1)vtkImageCast 图像数据类型转换在数字图像处理中会频繁用到。一些常用的图像算子(例如梯度算子)在计算时出于精度的考虑,会将结果存储为float或double类型,但在图像显示时,一般要求图像为 unsigned char 类型,…

Go C编程 第6课 无人机 --- 计算旋转角

旋转的秘密---认识角度 rt、lt命令学习 goc电子课程 一、编程步骤 第一步 第二步 第三步 第四步 二、画“四轴无人机” (一)、画第一根机轴 (二)、画第二根机轴 (三)、画完整的无人机 三、画“多轴无人…

cursor保存更改操作技巧

1. 当我们在agent模式时,要求cursor更改代码时,cursor回答后,就已经更改了代码了,这时候就可以对程序进行编译和测试, 不一定先要点” accept“, 先测试如果没有问题再点“accept”,这样composer就会多一条…

graphRAG+llama3.2的MOOC课程资源问答系统

文章目录 参考代码地址anacondapycharmLLaMA 3传统ragGraphRAG初始化提示词微调 prompt tuning来创建更适应知识库的知识图谱使用语言模型(LLM)从每个文本块中提取实体、关系和声明。检索 query(本地搜索(Local Search&#xff09…

一键打断线(根据相交点打断)——CAD c# 二次开发

多条相交线根据交点一键打断,如下图: 部分代码如下: finally namespace IFoxDemo; public class Class1 {[CommandMethod("ddx")]public static void Demo(){//"ifox可以了".Print();Database db HostApplicationServices.Workin…

Websocket客户端从Openai Realtime api Sever只收到部分数据问题分析

目录 背景 分析 解决方案 背景 正常情况下,会从Openai Realtime api Sever收到正常的json数据,但是当返回音频数据时,总会返回非json数据。这是什么问题呢? 分析 期望的完整响应数据如下: {"session": {"inp…

flask后端开发(1):第一个Flask项目

目录 一、Helloworddebug、host、port的配置 一、Helloword 一般是会创建两个文件夹和app.py app.py from flask import FlaskappFlask(__name__)app.route(/) def hello_world():return Hello World!if __name__ __main__:app.run()右键运行这个py文件,消息绑定…

OAuth 2.0

简介 OAuth 是一种开放标准的授权协议或框架,它提供了一种安全的方式,使第三方应用程序能够访问用户在其他服务上的受保护资源,而无需共享用户的凭证(如用户名和密码)。OAuth 的核心思想是通过“授权令牌”来代替直接…

玩原神学编程-原神时钟

前言 最近喜欢玩原神这种开放世界探索的游戏(还有黑神话、古墓丽影等),只能说纳塔版本的boss盾真的厚,萌新的我去打boss,从白天打到黑夜,黑夜再打到白天(游戏里面的时间)。 闲话结…

【Spring】深入解析 Spring 原理:Bean 的多方面剖析(源码阅读)

🔥个人主页: 中草药 🔥专栏:【Java】登神长阶 史诗般的Java成神之路 一、Bean的作用域 在 Java Spring 框架中,Bean 的作用域是一个关键概念,它决定了 Bean 的生命周期和实例化方式,对应用的性…

基于高德地图js api实现掩膜效果 中间矢量 周围卫星图

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>管网服务</title><style>html,body,#ma…

Vue.js组件(6):echarts组件

1 前言 本章主要对常用的echars图表展示进行基本的组件封装。使用该组件前需要在项目中引入echarts。官网&#xff1a;Apache ECharts npm install echarts --save 2 图表组件 2.1 折线图组件 组件属性&#xff1a;chartId&#xff0c;指定图表挂载div的id&#xff0c;注意不…

RCE常见姿势

文章目录 常见漏洞执行函数&#xff1a;1.系统命令执行函数2.代码执行函数 命令拼接符读取文件命令绕过&#xff1a;空格过滤绕过关键字绕过长度过滤绕过无参数命令执行绕过无字母数字绕过利用%0A截断利用回溯绕过利用create_function()代码注入无回显RCE1.反弹shell2.dnslog外…

selenium执行js

JS知识 获取元素 document.getElement 移除属性&#xff1a;removeAttribute("xx") 窗口移动&#xff1a;window.scrollTo(0, document.body.scrollHeight)方法 drivier.execute_script(js)场景&#xff1a; 日期选择框&#xff0c;不能输入&#xff0c;只能设置…

三维场景重建与3D高斯点渲染技术探讨

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;编程探索专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年12月25日10点11分 神秘男子影, 秘而不宣藏。 泣意深不见, 男子自持重, 子夜独自沉。 文章源地址(有视频)&#xff1a;链接h…

springboot启动不了 因一个spring-boot-starter-web底下的tomcat-embed-core依赖丢失

这个包丢失了 启动不了 起因是pom中加入了 <tomcat.version></tomcat.version>版本指定&#xff0c;然后idea自动编译后&#xff0c;包丢了&#xff0c;删除这个配置后再也找不回来&#xff0c; 这个包正常在 <dependency><groupId>org.springframe…

Java日志框架:log4j、log4j2、logback

文章目录 配置文件相关1. properties测试 2. XMl使用Dom4j解析XML Log4j与Log4j2日志门面 一、Log4j1.1 Logges1.2 Appenders1.3 Layouts1.4 使用1.5 配置文件详解1.5.1 配置根目录1.5.2 配置日志信息输出目的地Appender1.5.3 输出格式设置 二、Log4j22.1 XML配置文件解析2.2 使…

基于LSTM长短期记忆神经网络的多分类预测【MATLAB】

在深度学习中&#xff0c;长短期记忆网络&#xff08;LSTM, Long Short-Term Memory&#xff09;是一种强大的循环神经网络&#xff08;RNN&#xff09;变体&#xff0c;专门为解决序列数据中的长距离依赖问题而设计。LSTM因其强大的记忆能力&#xff0c;广泛应用于自然语言处理…

机器学习基础 衡量模型性能指标

目录 1 前言 ​编辑1.1 错误率(Error rate)&精度(Accuracy)&误差(Error)&#xff1a; 1.2 过拟合(overfitting): 训练误差小&#xff0c;测试误差大 1.3 欠拟合(underfitting)&#xff1a;训练误差大&#xff0c;测试误差大 1.4 MSE: 1.5 RMSE: 1.6 MAE: 1.7 R-S…

TCP的流量控制的实现

滑动窗口的介绍 滑动窗口是tcp协议中的一个重要概念&#xff0c;滑动窗口是字节为单位&#xff0c;而tcp头部的序列化和确认号也是以字节为单位的&#xff0c;滑动窗口里是含有可以传输的字节的数量&#xff08;可以传输不是已经传输&#xff09;&#xff0c;而滑动窗口的大小是…