网络模型OSI

news2024/9/25 17:20:58

网络模型

  • OSI定义
    • 模型分布
    • 数据封装、解封过程
  • 数据链路层
    • 1.LLC逻辑链路控制子层(Logic Link Control Sub Layer)
    • 2.MAC媒介访问控制子层(Medium Acess Control Sub Layer)
      • CSMA/CA
        • RST-CST原理

OSI定义

OSI:Open Systems Interconnection Reference Model,开放系统互连参考模型
目的:用于计算机或通信系统间互联的标准,以实现网络互通

模型分布

在这里插入图片描述
在这里插入图片描述

物理层(Physical Layer):定义物理设备标准,包括电气特性、机械特性、功能特性、规程特性这四个方面。用于建立、维护、断开物理连接。定义通信的传输介质,实现实际终端设备信号传输,码流通过物理设备传输。工作设备主要有网卡、集线器、各种线缆(光纤、网线、同轴电缆)

数据链路层(Data Link Layer):
1.提供mac地址(网卡物理地址),物理地址寻址
2.数据成帧frame、转发
3.错误检测机制,发现数据有丢失则通知对方重传

网络层(Network Layer):
1.提供IP地址,数据传送的目的地寻址
2.选择一个传送数据的最佳路线,根据路由器运行的不同的路由协议选择最佳路径

传输层(Transport Layer):
1.提供端口号,根据端口号识别对应服务(每种应用对应不同的端口号)
2.控制数据流量,确保传输准确。发送端分段数据、接收端重组数据

会话层(Session Layer):
在应用程序之间建立维护并拆除会话连接

表示层(Presentation Layer):
为不同客户端提供数据和信息的语法转换,使系统能解读成正确的数据,同时它还能提供压缩解压、加密解密等服务。

应用层(Application Layer):
给用户和抽象的网络之间提供一个接口,使用户可以通过使用应用程序、app来使用整个的6层网络模型

数据封装、解封过程

在这里插入图片描述
在这里插入图片描述

数据链路层

数据链路层有两个著名sub layer

1.LLC逻辑链路控制子层(Logic Link Control Sub Layer)

该子层实现了两个站点之间帧的交换,实现端到端(源到目的),无差错的帧传输和应答功能及流量控制功能

2.MAC媒介访问控制子层(Medium Acess Control Sub Layer)

解决共用信道竞争,分配信道使用权。
目前LAN中常用的媒介访问控制方法是CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance,译为载波监听多路访问/冲突避免机制))

有线和无线使用MAC差异
有线使用“冲突检测”CSMA/CD(Carrier Sense Multiple Access/Collision Detect,载波监听多路访问/冲突检测机制):
1.发送数据前监听信道是否空闲,空闲则发送;
2.发送数据的同时监听,监听到冲突时停时发送,停止随机时间后重新发送

无线使用“冲突避免”CSMA/CA:同时发送和监听的方式,对于无线介质来说浪费资源。

CSMA/CA

由于无线网络是共享介质,协调的作用是使各个无线设备使用无线网络时避免冲突发生。

两种冲突避免方案:
1.避退:发送数据前,先监听无线链路状态是否空闲。当无线链路被其他设备占用时,设备会随机为每一帧选择一段退避(backoff)时间,减少冲突发生。

2.RST-CST握手:发送数据前,终端发送一个RST帧给目标,目标回复CST才开始传输数据。确保后续传输数据时其他设备不会使用信道。
RST、CST帧长很小所以消耗很少:
RST请求发送帧:20字节,内容包含要发送的数据帧长,
CST允许发送帧:14字节,内容包含请求中欲发送的数据帧的长度

RST-CST原理

在这里插入图片描述
RST-CST如何解决多个站之间数据传输冲突
站A无线信号覆盖范围:B、C、E
站B无线信号覆盖范围:A、D、E
如果A向B发送数据:
1.A向B发送RST,因为B、C、E在A的覆盖范围内,所以都能接收到A发送的RST
2.B向A发送CST,因为A、D、E在B的覆盖范围内,所以都能接受到B的CTS
3.C接收到A的RST,接收不到B的CST。在A向B发送数据的同时,可以发送数据,不会干扰B
4.D接受不到A的RST,可以接收B的CST。在收到B发送的CST后关闭数据发送,避免干扰B
5.E接收A的RST和B的CST,在A发送数据帧的整个过程中不能发送数据
6.若A和E同时向B发送RST,两个RST冲突使得B接收不到正确的RST,则B无法产生CST,此时A和E各自推迟随机时间后重新发送RST

802.11提供3种“RST-CST”可供使用
1.使用RST-CST帧
2.不使用
3.在一定条件下使用,当数据帧的长度超过某一数值时

协调功能(Coordination Function)
CSMA/CA具体运作时由协调功能来控制,协议规定四种协调功能
1.分布式协调功能(Distributed CF,简称DCF)
2.基于DCF之上的Point CF(Point CF,简称PCF)
3.混合型协调功能(Hybrid CF,简称HCF)
4.用于Mesh网络的(Mesh CF,简称MCF)
基于竞争的服务(contention-based service,使用DCF进行数据交换)
基于无竞争的服务(contention-free service,使用PCF进行数据交换)

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

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

相关文章

2023年前端开发的八大趋势,值得你关注下

随着新年的到来,许多人制定了提高自己和工作的决心。对于前端开发人员而言,跟上最新的潮流趋势是成功的关键。特别是在经济不好的情况下,很多科技专家在最近一个季度内被解雇,这更加强调了这一点。在2023年,有许多令人…

学习 Python 之 Pygame 开发坦克大战(五)

学习 Python 之 Pygame 开发坦克大战(五)坦克大战完善地图1. 创建砖墙2. 给砖墙增加子弹击中的碰撞效果3. 给砖墙坦克不能通过的碰撞效果坦克大战完善地图 我的素材放到了百度网盘里,里面还有原版坦克大战素材,我都放在一起来&am…

Blazor入门100天 : 身份验证和授权 (2) - 角色/组件/特性/过程逻辑

目录 建立默认带身份验证 Blazor 程序角色/组件/特性/过程逻辑DB 改 Sqlite将自定义字段添加到用户表脚手架拉取IDS文件,本地化资源freesql 生成实体类,freesql 管理ids数据表初始化 Roles,freesql 外键 > 导航属性完善 freesql 和 bb 特性 本节源码 https://github.com/…

Flink03: 集群安装部署

Flink支持多种安装部署方式 StandaloneON YARNMesos、Kubernetes、AWS… 这些安装方式我们主要讲一下standalone和on yarn。 如果是一个独立环境的话,可能会用到standalone集群模式。 在生产环境下一般还是用on yarn 这种模式比较多,因为这样可以综合利…

C++入门:引用

目录 一. 什么是引用 1.1 引用的概念 1.2 引用的定义 二. 引用的性质和用途 2.1 引用的三大主要性质 2.2 引用的主要应用 三. 引用的效率测试 3.1 传值调用和传引用调用的效率对比 3.2 值返回和引用返回的效率对比 四. 常引用 4.1 权限放大和权限缩小问题 4.2 跨…

【超好用】自定义的mybatis-plus代码生成器

BACKGROUND你是否也有这样的烦恼:每次写代码都需要创建很多包很多层很多类很多接口?耗时且费力姑且不谈,有时可能还大意了没有闪,搞出一堆bug这谁顶得住啊都3202年了,让程序自力更生吧!!教程 le…

原创|关于一次产品需求程序设计及优化的经历

文章目录一、流程梳理二、设计梳理三、技术方案3.1、下单接口扩展3.3.1、Request类新增deviceType3.3.2、申请单新增字段产品策略(productStrategy)3.3.3、下单产品策略的处理逻辑3.2、询价模块的设计3.2.1、Context设计3.2.2、ProductStrategy类设计3.2.2.1、AbstractProductS…

k8s篇之概念介绍

文章目录时光回溯什么是K8SK8S不是什么一、K8S构成组件控制平面组件(Control Plane Components)kube-apiserveretcdkube-schedulerkube-controller-managercloud-controller-managerNode 组件kubeletkube-proxy容器运行时(Container Runtime&…

Spring Cloud Nacos实战(七)- Nacos之Linux版本安装

Nacos之Linux版本安装 Linux版NacosMySql生产环境配置 ​ 已经给大家讲解过了Nacos生产环境下需要搭建集群配置,那么这里我们预计需要:1个Nginx3个Nacos注册中心1个MySql 具体配置: 在官网上下载NacosLinux版本:https://github…

基于SSM框架的CMS内容管理系统的设计与实现

基于SSM框架的CMS内容管理系统的设计与实现 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目…

并查集(高级数据结构)-蓝桥杯

一、并查集并查集(Disioint Set):一种非常精巧而实用的数据结构用于处理不相交集合的合并问题。用于处理不相交集合的合并问题。经典应用:连通子图。最小生成树Kruskal算法。最近公共祖先。二、应用场景有n个人,他们属于不同的帮派。 已知这些…

Kafka漏洞修复之CVE-2023-25194修复措施验证

Kafka漏洞修复之CVE-2023-25194修复措施验证前言风险分析解决方案AdoptOpenJDK Zookeeper Kafka多版本OpenJDK安装切换Zookeeper安装Kafka安装与使用其他Kafka消息发送流程Linux配置加载顺序参考链接前言 场景介绍 Kafka最近爆出高危漏洞CNNVD-202302-515,导致Apa…

LeetCode刷题复盘笔记—一文搞懂贪心算法之56. 合并区间(贪心算法系列第十四篇)

今日主要总结一下可以使用贪心算法解决的一道题目,56. 合并区间 题目:56. 合并区间 Leetcode题目地址 题目描述: 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间…

QXlsx(访问Excel)

再Qt中已经有了QAxObject来访问Excel,但访问的是微软的com,只能访问正版的Excl中的 .xls//xlsx ,而且使用起来及其不方便(本人亲测)。 在这里使用QXlsx,能更简单的访问Excel数据,但QXlsx这个类并没有在Qt Creator中&a…

《MySQL学习》 MySQL优化器选择如何选择索引

一.优化器的选择逻辑 建表语句 CREATE TABLE t (id int(11) NOT NULL AUTO_INCREMENT,a int(11) DEFAULT NULL,b int(11) DEFAULT NULL,PRIMARY KEY (id),KEY a (a),KEY b (b) ) ENGINEInnoDB;往表中插入10W条数据 delimiter ;; create procedure idata() begindeclare i in…

目标检测三大数据格式VOC,YOLO,COCO的详细介绍

注:本文仅供学习,未经同意请勿转载 说明:该博客来源于xiaobai_Ry:2020年3月笔记 对应的PDF下载链接在:待上传 目录 目标检测常见数据集总结 V0C数据集(Annotation的格式是xmI) A. 数据集包含种类: B. V0C2007和V0C2012的区别…

QT学习记录散件

fromLocal8Bit() qt中fromLocal8Bit()函数可以设置编码。 因为QT默认的编码是unicode,不能显示中文的 而windows默认使用(GBK/GB2312/GB18030) 所以使用fromLocal8Bit()函数,可以实现从本地字符集GB到Unicode的转换,从…

32-Golang中的map

Golang中的map基本介绍基本语法map声明的举例map使用的方式map的增删改查操作map的增加和更新map的删除map的查找map的遍历map切片基本介绍map排序map的使用细节基本介绍 map是key-value数据结构,又称为字段或者关联数组。类似其它编程语言的集合,在编程…

2023美赛ABCDEF思路汇总

注:以下每个题思路仅是个人所想所做,不代表他人。由于时间仓促完成这么多,难免有不足之处,还请谅解。 文章目录A题第一大问第二大问B题第一问第二问第三问C题第一问第二问第三问第四问D题第一问第二问第三问第四问第五问E题第一问…

#Paper Reading# Language Models are Unsupervised Multitask Learners

论文题目: Language Models are Unsupervised Multitask Learners 论文地址: https://life-extension.github.io/2020/05/27/GPT技术初探/language-models.pdf 论文发表于: OpenAI 2019 论文所属单位: OpenAI 论文大体内容: 本文主要提出了GPT-2(Gener…