ALOHA 协议详解
注:本文为 “ALOHA 协议” 相关文章合辑。
未去重整理。
动态分配信道(ALOHA 协议、CSMA 协议)
QuantumYou 于 2021-07-27 09:32:04 发布

ALOHA 协议
纯 ALOHA 协议
-纯 ALOHA 协议思想:不监听信道,不按时间槽发送,随机重发。想发就发
冲突如何检测?
如果发生冲突,接收方在就会检测出差错 ,然后不予确认,发送方在一定时间内收不到就判断发生冲突。
冲突如何解决?
超时后等一随机时间再重传。

时隙 ALOHA 协议
-时隙 ALOHA 协议的思想:把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。 * 控制想发就发的随意性 *

ALOHA 协议小结
-
1、纯 ALOHA 比时隙 ALOHA 吞吐量更低,效率更低。
-
2、纯 ALOHA 想发就发,时隙 ALOHA 只有在时间片段开始时才能发。
CSMA 协议
载波监听多路访问协议 CSMA ( carrier sense multiple access)
-
CS: 载波侦听 / 监听,每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,即发生了冲突
-
MA: 多点接入,表示许多计算机以多点接入的方式连接在一根总线上。
协议思想:发送帧之前,监听信道。

1 - 坚持 CSMA
坚持指的是对于监听信道忙之后的坚持。
1 - 坚持 CSMA 思想:如果一个主机要发送消息,那么它先监听信道。 空闲则直接传输,不必等待。忙则一直监听,直到空闲马上传输。如果有冲突(一段时间内未收到肯定回复),则等待一个随机长的时间再监听,重复上述过程
-优点:只要媒体空闲,站点就马上发送,避免了媒体利用率的损失。
-缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免。
非坚持 CSMA
- 非坚持指的是对于监听信道忙之后就不继续监听。
非坚持 CSMA 思想:如果一个主机要发送消息,那么它先监听信道。 空闲则直接传输,不必等待。忙则等待一个随机的时间之后再进行监听。
-优点:采用随机的重发延迟时间可以减少冲突发生的可能性。
-缺点:可能存在大家都在延迟等待过程中,使得媒体仍可能处于空闲状态,媒体使用率降低。
p - 坚持 CSMA
p - 坚持指的是对于监听信道空闲的处理。
p 坚持 CSMA 思想:如果一个主机要发送消息,那么它先监听信道。
-
空闲则以 p 概率直接传输,不必等待;概率 1-p 等待到下一个时间槽再传输。
-
忙则持续监听直到信道空闲再以 p 概率发送。
-
若冲突则等到下一个时间槽开始再监听并重复上述过程。
优点:既能像非坚持算法那样减少冲突,又能像 1 - 坚持算法那样减少媒体空闲时间的这种方案。
但是,发生冲突后还是要坚持把数据帧发送完,造成了浪费。
三种 CSMA 对比

数据链路层 动态分配信道 ALOHA 协议、CSMA 协议、CSMA/CD 协议、CSMA/CA
posted @ 2021-06-26 23:15 PBDragon
一、动态分配信道
动态分配信道是信道并非在用户通信时固定分配给用户的。
动态分配信道,可以分为轮询访问控制 令牌传递协议;随机访问介质访问控制 ALOHA 协议、CSMA 协议、CSMA/CD 协议、CSMA/CA 协议。
随机访问介质访问控制:所有用户可随机发送信息,发送信息时占全部带宽。就是因为用户可以随机发送信息,所以就需要相关的控制协议来协调通信双方信息的发送。
二、ALOHA 协议
ALOHA 协议又可以分为两种纯 ALOHA 协议和时隙 ALOHA 协议。
(1)ALOHA 协议
ALOHA 协议是不监听信道,不按时间槽发送,随机重发。图例:

ALOHA 协议如何检测冲突呢?
如果发生冲突,接收方会检测出差错,不回复确认帧,发送方在一定时间内收不到确认帧,就会判断发生了冲突。
ALOHA 协议如何如何处理冲突?
超时后等一随机时间再重传。
(2)时隙 ALOHA 协议
时隙 ALOHA 协议的思想就是把时间分成若干个相同的同间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。

当每个站点在发送数据的时候,只能在一个时间片的开始来发送,如(站点 1 和站点 2 只对应自己的 T0,从图上可以看到他们在时间上并不交叉),当数据发送时没有发生冲突,那么在单位的时间 T0 内,接收方就可以正确接收数据;当数据发生冲突时,在一个 T0 的时隙内,发送方没有收到确认帧,那么发送方判断发生了冲突,发送方会在下一个时间片开始再次重传。
ALOHA 协议与时隙 ALOHA 协议的区别
(1)ALOHA 协议比时隙 ALOHA 协议吞吐量更低,效率更低。
(2)ALOHA 协议是想发就发,时隙 ALOHA 协议只有在时间片开始时才能发。
三、CSMA 协议
CSMA 协议叫载波监听多路访问协议。CS 载波侦听 / 监听:每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。(当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大,互相叠加,当一个站检测到的信号电压摆动值超过一定门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,即发生了冲突。)MA 多点接入:表示许多计算机以多点接入的方式连接在一根总线上。
根据 CSMA 协议的思想,发送数据帧之前,监听信道。监听的结果有两种一种是信道空闲则立刻发送无整数据帧;另一种是信道忙推迟发送数据帧。根据什么时候发送数据以及需要推迟多久,有三种不同的协议,分别是 1 - 坚持 CSMA、非坚持 CSMA、p - 坚持 CSMA。
(1)1 - 坚持 CSMA
1 - 坚持 CSMA:如果一个主机要发送消息,那么它先监听信道。
1)如果信道空闲则直接传输,不必等待。
2)如果信道忙则一直监听,直到空闲马上传输。
3)如果有冲突,则等待一个随机长的时间再监听,重复上述过程。
优点:只要信道空闲,站点马上发送信息,提高了信道的利用率;
缺点:如果有两个或两个以上的站点有数据要发送,冲突就不可避免。
(2)非坚持 CSMA
非坚持 CSMA:如果一个主机要发送消息,那么它先监听信道。
1)如果信道空闲则直接传输,不必等待。
2)如果信道忙则等待一个随机的时间之后再进行监听。
优点:采用随机的重发延迟时间可以减少冲突发生的可能性。
缺点:可能存在站点都在延迟等待,使得信道可能处于空闲状态,信衜的利用率低。
(3)p - 坚持 CSMA
p - 坚持 CSMA 指的是对监听信道空闲的处理。
p - 坚持 CSMA:如果一个主机要发送消息,那么它先监听信道。
1)空闲则以 p 概率直接传输,不必等待;概率 1-p 等待到下一个时间片再传输。
2)如果信道忙则等待一个随机的时间之后再进行监听(与非坚持 CSMA 一致)。
优点:既能像非坚持那样减少冲突,又能像 1 - 坚持 CSMA 那样提高信道的利用率。
缺点:发生冲突后还是要坚持把数据帧发送发,会造成信道浪费。
三种 CSMA 方式的对比

四、CSMA/CD 协议
信道划分介质访问控制协议,有四种控制的方法,1、频分多路复用 FDM;2、时分多路复用 TDM;3、波分多路复用 WDM;4、码分多路复用 CDM。这四种协议有一些共同的特点,就是网络负载重时,共享信道效率很高,因为这几种协议都是对信道进行均分;但是在网络负载轻时,则共享信道的效率就很低,因为很多的信道被占用了,但是使用率不高。
随机访问控制协议,如随机访问介质访问控制 ALOHA 协议、CSMA 协议,则根据用户随机发送信息,发送信息时可以独占信道带宽,当网络负载重时,容易发生冲突而占用信道开销;但在网络负载轻时,共享信道效率高,单个结点可以利用全部信道带宽。
CSMA/CD 也叫轮询访问 MAC 协议,它可以检测出碰撞、冲突,主要应用于有线以太网。它既不产生冲突,发送数据时又可以占全部带宽。
CSMA/CD 协议轮询 “邀请” 从属结点发送数据,主要问题有:1. 轮询开销、2. 等待延迟(指还没有轮询到的主机有数据也不能发)、3. 单点故障(指网络的指挥官轮询主机发生故障)
注:如果连续发生 16 次碰撞后,认为网络繁忙,不再尝试发送。
五、CSMA/CA 协议
载波监听多点接入 / 碰撞避免 CSMA/CA 协议,它可以避免碰撞,不能检测碰撞,主要应用于无线局域网。
为什么有了 CSMA/CD 协议还需要 CSMA/CA 协议?
主要的问题是 CSMA/CD 协议不可能做到在无线局域网范围内,全面检测冲突和碰撞,另外的问题,就是隐蔽站的问题。
什么是隐蔽站问题?
当 A 和 C 都检测不到信号,认为信道空闲时,同时向 B 发送数据帧,就会导致冲突。
CSMA/CA 协议工作原理
(1)发送数据前,先检测信道是否空闲。
(2)空闲就发出请求发送数据帧 RTS(request to send),RTS 包括发射端的地址、接收端的地址、数据将持续发送的时间等信息,信道忙则等待。
(3)接收端收到 RTS 后,会响应请求数据帧 CTS(clear to send)。
(4)发送端收到 CTS 后,开始发送数据帧(同时预约信道,发送方告知其他站点自己对信道的占用时间)
(5)接收端收到数据帧后,用采用 CRC 来检验数据是否正确,正确则回复 ACK 帧。
(6)发送方收到 ACK 帧后就进行下一帧数据的发送,若没有收到则重传直至规定的次数为止。(采用二进制指数退避算法来确定随机的推迟时间)。
注:RTS 与 CTS 数据帧主要用于解决隐蔽站的问题。
CSMA/CA 协议总结
(1)预约信道 (2)ACK 确认帧 (3)RTS/CTS 帧
CSMA/CD 与 CSMA/CA 的区别
相同点:
CSMA/CD 与 CSMA/CA 都是基于 CSMA 的思路,其核心是先监听再传输。
不同点:
(1)CSMA/CD 主要用于总线型以太网,CSMA/CA 主要用于无线局域网。
(2)载波检测方式不同,CSMA/CD 通过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电压会随着发生变化;而 CSMA/CA 采用能量检测(ED)、载波检测(CS)和能量载波混合检测三种检测信道空闲的方式。
(3)CSMA/CD 可以检测冲突,CSMA/CA 是避免冲突,二者出现冲突后都会进行有上限的重传。
六、令牌传递协议
以下是令牌环网的基本结构:

这个令牌环网由四台 PC 组成,分别是主机 A、主机 B、主机 C、主机 D,TCU 转发器就是一个传递数据帧的转发接口,它可以转发所有经过的数据帧。
那么令牌是什么呢?它是一个特殊格式的 MAC 控制帧,不含任何信息。它可以控制信道的使用,确保同一时刻只有一个结点独占信道。那么令牌环网就无碰撞也没有冲突,因为,在同一时刻,只有某一台主机可以获得令牌,那么才可以独占信道。
令牌环网的传递过程:每个结点都可以在一定的时间内(令牌持有时间)获得发送数据的权利,并不是无限制的持有令牌。
令牌环网的问题有:1. 令牌开销、2. 等待延迟、3. 单点故障。
令牌环网的应用:主要应用于令牌环网(物理星型拓扑,逻辑环形拓扑),采用令牌传送方式的网络常常是负载较重、通信量较大的网络。
via:
-
动态分配信道(ALOHA 协议、CSMA 协议)_aloha 信道 - CSDN 博客 QuantumYou 于 2021-07-27 09:32:04 发布
https://blog.csdn.net/QuantumYou/article/details/119113171 -
数据链路层 动态分配信道 ALOHA 协议、CSMA 协议、CSMA/CD 协议、CSMA/CA - PBDragon - 博客园 posted @ 2021-06-26 23:15 PBDragon
https://www.cnblogs.com/PBDragon/p/14928547.htmlstion/35919386
相关文章:
ALOHA 协议详解
注:本文为 “ALOHA 协议” 相关文章合辑。 未去重整理。 动态分配信道(ALOHA 协议、CSMA 协议) QuantumYou 于 2021-07-27 09:32:04 发布 ALOHA 协议 纯 ALOHA 协议 -纯 ALOHA 协议思想:不监听信道,不按时间槽发送…...
Quant connect的优势和不足,学习曲线难
Quant connect的优势和不足 Quant connect作为一个成熟的算法交易平台,具有许多优势,包括: 强大的回测功能:Quant connect提供了丰富的数据源和回测功能,可以对各种交易策略进行全面的回测和分析。 容易上手…...
分布式 漏桶算法 总结
前言 相关系列 《分布式 & 目录》《分布式 & 漏桶算法 & 总结》《分布式 & 漏桶算法 & 问题》 概述 简介 LBA Leaky Bucket Algorithm 漏桶算法是一种流行于网络通信领域的流量控制/频率限制算法。漏桶算法的核心原理是通过一个概念上的“漏桶”来…...
2450.学习周刊-2024年50周
封面 人生五个球 ✍优秀博文 面对老板安排的工作,事事有回应,有必要吗? 职场精英进阶手册:工作推进五原则,让你合理高效地利用时间 上个班而已,千万别畏手畏脚 理解了雷军说的SU7要守正出奇࿰…...
前端性能优化实战:从加载到渲染的全链路提升
"这个页面怎么这么慢啊?" 产品经理小李站在我的工位旁,指着屏幕上的数据大屏抱怨道。我打开 Chrome DevTools 看了一眼,首屏加载时间确实有点吓人 - 足足用了 8 秒。作为一个追求极致体验的前端开发者,这个数字让我坐不住了。 回想起上周的性能检测会议,…...
pdf merge
在 Ubuntu 22.04 上,你可以使用以下命令行工具来合并多个 PDF 文件: 1. pdftk pdftk 是一个强大的 PDF 工具,支持合并、拆分和其他操作。安装和使用方法如下: sudo apt install pdftk pdftk file1.pdf file2.pdf cat output me…...
Python高性能web框架-FastApi教程:(3)路径操作装饰器方法的参数
路径操作装饰器方法的参数 1. 定义带有参数的POST请求路由 app.post(/items,tags[这是items测试接口],summary这是items测试的summary,description这是items测试的description,response_description这是items测试的response_description) def test():return {items: items数据…...
怎么禁用 vscode 中点击 go 包名时自动打开浏览器跳转到 pkg.go.dev
本文引用怎么禁用 vscode 中点击 go 包名时自动打开浏览器跳转到 pkg.go.dev 在 vscode 设置项中配置 gopls 的 ui.navigation.importShortcut 为 Definition 即可。 "gopls": {"ui.navigation.importShortcut": "Definition" }ui.navigation.i…...
bean创建源码
去字节面试,直接让人出门左拐:Bean 生命周期都不知道! spring启动创建bean流程 下面就接上了 bean生命周期 doGetBean Object sharedInstance this.getSingleton(beanName); sharedInstance this.getSingleton(beanName, new ObjectF…...
axfbinhexelf文件区别
0 Preface/Foreword axf,bin,hex,elf四个都能存在于嵌入式软件领域。 1 文件介绍 嵌入式软件中常见的文件包含: axf,包含调试信息,文件最大。调试信息放在机器码前面。elfhex,包含地址信息,文件内容较大。bin&#x…...
ABAP时间戳与日期时间转换及时区处理
一、时间戳转换为日期时间 1. 基本转换 CONVERT TIME STAMP <fs_back>-lastchangedatetime TIME ZONE sy-zonloINTO DATE DATA(lv_date)TIME DATA(lv_time).2. 解决8小时时差问题的方案 方案1:直接使用UTC时区(推荐) CONVERT TIME …...
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍01
免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停…...
Flink是什么?Flink技术介绍
官方参考资料:Apache Flink — Stateful Computations over Data Streams | Apache Flink Flink是一个分布式流处理和批处理计算框架,具有高性能、容错性和灵活性。以下是关于Flink技术的详细介绍: 一、Flink概述 定义:Fli…...
DETR-ResNet-50:Facebook的革命性目标检测模型
在计算机视觉领域,DETR(DEtection TRansformer)模型,由Facebook推出,已成为一项具有革命性的技术。DETR-ResNet-50作为一种结合了Transformer和ResNet-50骨干网络的端到端目标检测模型,凭借其出色的性能和创…...
0002.基于springboot +layui二手物品交易平台
适合初学同学练手项目,部署简单,代码简洁清晰; 注:当前项目架构使用前后端未分离哦! 一、系统架构 前端:layui| html 后端:springboot | mybatis-plus 环境:jdk1.8 | mysql | maven 二、代…...
【游戏设计原理】7 - 加德纳的多元智能理论
虽然多元智能理论是对认知方式的分类,但它也可以为游戏设计提供丰富的思路和策略,帮助设计师创建更具吸引力、包容性和多样性的游戏。通过理解不同玩家的认知方式和优势,我们可以更精准地设计游戏的元素和玩法,使其能够吸引广泛的…...
React Image Crop——在React应用中轻松实现图片裁剪功能
React Image Crop是一个用于在React应用程序中裁剪和调整图像的库。它提供了一个简单而强大的界面,允许用户选择和调整裁剪区域,并生成裁剪后的图像。 什么是React Image Crop? React Image Crop是一个开源的React组件,用于在浏览…...
深度对比:Ubuntu 与 CentOS 系统的异同点解析
一、历史背景与发展路线 1.1 Ubuntu 的发展历程 诞生时间:2004 年,由 Canonical 公司发布。定位:致力于成为“用户友好的 Linux”,强调桌面和服务器端的广泛适用性。社区支持:拥有全球最大的开源社区之一,…...
操作系统内存管理
内存 内存被设计用来存储数据,以便程序在执行之前能够先被加载到内存中,进而被CPU高效地处理。这一机制有效地缓解了CPU与硬盘之间存在的速度差异和矛盾,确保了数据处理流程的顺畅进行。 一、内存管理 1. 进程运行的基本原理 在深入探讨内…...
数据链路层(Java)(MAC与IP的区别)
以太网协议: "以太⽹" 不是⼀种具体的⽹络, ⽽是⼀种技术标准; 既包含了数据链路层的内容, 也包含了⼀些物理 层的内容. 例如: 规定了⽹络拓扑结构, 访问控制⽅式, 传输速率等; 例如以太⽹中的⽹线必须使⽤双绞线; 传输速率有10M, 100M, 1000M等; 以太…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
uniapp手机号一键登录保姆级教程(包含前端和后端)
目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...
多模态图像修复系统:基于深度学习的图片修复实现
多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...
【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...
Python竞赛环境搭建全攻略
Python环境搭建竞赛技术文章大纲 竞赛背景与意义 竞赛的目的与价值Python在竞赛中的应用场景环境搭建对竞赛效率的影响 竞赛环境需求分析 常见竞赛类型(算法、数据分析、机器学习等)不同竞赛对Python版本及库的要求硬件与操作系统的兼容性问题 Pyth…...
