【时隙ALOHA,CSMA(载波侦听多路访问)carrier sense mltiple access,无线局域网: CSMA/CA】

本文主要是介绍【时隙ALOHA,CSMA(载波侦听多路访问)carrier sense mltiple access,无线局域网: CSMA/CA】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 时隙ALOHA
    • 时隙ALOHA的效率( Efficiency )
    • 纯ALOHA(非时隙)----效率低
    • CSMA(载波侦听多路访问)carrier sense mltiple access
    • CSMA冲突
    • CSMA/CD(冲突检测)边说边听(提高了信道利用率)以太网就是用的这个
    • 无线局域网: CSMA/CA
    • 无线局域网中的 MAC:CSMA/CA
    • 无线局域网: CSMA/CA
    • 冲突避免(续)

时隙ALOHA

假设

  • 所有帧是等长的
  • 时间被划分成相等时隙,每个时隙可发送一帧
  • 节点只在时隙开始时发送帧
  • 节点在时钟上是同步的
  • 如果两个或多个节点在一个时隙传输,所有的站点都能检测到冲突
    运行
  • 当节点获取新的帧,在下一个时隙传输
  • 传输时没有检测到冲突,成功
  • 检测时如果检测到冲突,失败
    • 节点在每一个随后的时隙以概率p重传帧直到成功
      在这里插入图片描述
      优点
  • 节点可以以信带全宽全速连续传输
  • 高度分布:仅需要节点之间在间隙上同步
  • 简单
    缺点
  • 存在冲突,浪费时隙
  • 即使有帧要发送,仍然有可能存在空闲的时隙
  • 节点检测冲突的时间<帧传输的时间
  • 需要时钟上同步

时隙ALOHA的效率( Efficiency )

效率
当有很多节点,每个节点有很多帧要发送时,x%的时隙时成功传输帧的时隙
在这里插入图片描述
在这里插入图片描述

纯ALOHA(非时隙)----效率低

  • 无时隙ALOHA:简单、无须节点间在时间上同步
  • 当有帧需要传输:马上传输

CSMA(载波侦听多路访问)carrier sense mltiple access

发送之前听一听,是否信道被占用
Aloha: 如何提高ALOHA的效率发之前不管有无其他节点在传输

CSMA:在传输前先侦听信道:

  • 如果侦听到信道空闲,传送整个帧
  • 如果侦听信道忙,推迟传送

人类类比:不要打断别人正在进行的说话!

CSMA冲突

冲突仍然可能发生:
由传播延迟造成:两个节点可能侦听不到正在进行的传输
冲突:
整个冲突帧的传输时间都被浪费了,是无效的传输
注意:
传播延迟(距离)决定了冲突的概率,距离越远,time越大,冲突可能性越大

  • 节点依据本地信道使用情况来判断全部信道的使用情况

CSMA/CD(冲突检测)边说边听(提高了信道利用率)以太网就是用的这个

==CSMA/CD: ==

- 载波侦听CSMA:和在CSMA中一样发送前侦听信道
- 没有传完一个帧就可以在短时间内检测到冲突
- 冲突发生时则传输终止,减少对信道的浪费
  • 冲突检测CD技术,有线局域网中容易实现:
    • 检测信号强度,比较传输与接收到的信号是否相同
    • 通过周期过零点检测

人类类比:礼貌的对话人

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

  • 指数退避
  • 目标:适配器试图适应当前负载,在一个变化的碰撞窗口中随机选择时间点尝试重发。
    • 高负载:重传窗口时间大,减少冲突,但等待时间长
    • 低负载:使得各站点等待时间少,但冲突概率大
  • 在变化的窗口中选择一个随机值

无线局域网: CSMA/CA

在这里插入图片描述

无线局域网中的 MAC:CSMA/CA

  • 冲突: 2+站点(AP或者站点)在同一个时刻发送
  • 802.11: CSMA – 发送前侦听信道
    • 不会和其它节点正在进行的传输发生冲突
  • 802.11: 没有冲突检测!
    不冲突不代表成功

无线局域网: CSMA/CA

发送方
1 如果站点侦测到信道空闲持续DIFS长,则传输整个帧 (no CD)
2 如果侦测到信道忙碌,那么 选择一个随机回退值,并在信道空闲时递减该值;如果信道忙碌,回退值不会变化
到数到0时(只生在信道闲时)发送整个帧
如果没有收到ACK, 增加回退值,重复2
接收方

  • 如果帧正确,则在SIFS后发送ACK
    可能会发生站点隐藏
    在这里插入图片描述

冲突避免(续)

允许发送方“预约”信道,而不是随机访问该信道:
避免长数据帧的冲突(可选项)

  • 发送方首先使用CSMA向BS发送一个小的RTS分组
    • RTS可能会冲突(但是由于比较短,浪费信道较少)
  • BS广播 clear-to-send CTS,作为RTS的响应
  • CTS能够被所有涉及到的节点听到
  • 其他节点抑制发送
    在这里插入图片描述

这篇关于【时隙ALOHA,CSMA(载波侦听多路访问)carrier sense mltiple access,无线局域网: CSMA/CA】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/990540

相关文章

使用Dify访问mysql数据库详细代码示例

《使用Dify访问mysql数据库详细代码示例》:本文主要介绍使用Dify访问mysql数据库的相关资料,并详细讲解了如何在本地搭建数据库访问服务,使用ngrok暴露到公网,并创建知识库、数据库访... 1、在本地搭建数据库访问的服务,并使用ngrok暴露到公网。#sql_tools.pyfrom

Javascript访问Promise对象返回值的操作方法

《Javascript访问Promise对象返回值的操作方法》这篇文章介绍了如何在JavaScript中使用Promise对象来处理异步操作,通过使用fetch()方法和Promise对象,我们可以从... 目录在Javascript中,什么是Promise1- then() 链式操作2- 在之后的代码中使

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

本地搭建DeepSeek-R1、WebUI的完整过程及访问

《本地搭建DeepSeek-R1、WebUI的完整过程及访问》:本文主要介绍本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主... 目录背景       搭建准备基础概念搭建过程访问对话测试总结背景       最近几年,人工智能技术

Ollama整合open-webui的步骤及访问

《Ollama整合open-webui的步骤及访问》:本文主要介绍如何通过源码方式安装OpenWebUI,并详细说明了安装步骤、环境要求以及第一次使用时的账号注册和模型选择过程,需要的朋友可以参考... 目录安装环境要求步骤访问选择PjrIUE模型开始对话总结 安装官方安装地址:https://docs.

Python实现多路视频多窗口播放功能

《Python实现多路视频多窗口播放功能》这篇文章主要为大家详细介绍了Python实现多路视频多窗口播放功能的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下... 目录一、python实现多路视频播放功能二、代码实现三、打包代码实现总结一、python实现多路视频播放功能服务端开

C/C++通过IP获取局域网网卡MAC地址

《C/C++通过IP获取局域网网卡MAC地址》这篇文章主要为大家详细介绍了C++如何通过Win32API函数SendARP从IP地址获取局域网内网卡的MAC地址,感兴趣的小伙伴可以跟随小编一起学习一下... C/C++通过IP获取局域网网卡MAC地址通过win32 SendARP获取MAC地址代码#i

解读静态资源访问static-locations和static-path-pattern

《解读静态资源访问static-locations和static-path-pattern》本文主要介绍了SpringBoot中静态资源的配置和访问方式,包括静态资源的默认前缀、默认地址、目录结构、访... 目录静态资源访问static-locations和static-path-pattern静态资源配置

Java访问修饰符public、private、protected及默认访问权限详解

《Java访问修饰符public、private、protected及默认访问权限详解》:本文主要介绍Java访问修饰符public、private、protected及默认访问权限的相关资料,每... 目录前言1. public 访问修饰符特点:示例:适用场景:2. private 访问修饰符特点:示例:

Python 标准库time时间的访问和转换问题小结

《Python标准库time时间的访问和转换问题小结》time模块为Python提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时... 目录模块介绍使用场景主要类主要函数 - time()- sleep()- localtime()- g