【贪玩巴斯】无线传感器网络(三)「Mac协议讲解」——2021-10-08

news/2024/11/29 13:38:23/

Mac协议

  • Mac协议的研究热点
  • 竞争性Mac协议
    • ALOHA协议
    • CSMA协议
    • CSMA/CA协议
    • 优点
    • 典型协议
      • Smac协议-前提条件和基本思想
      • TMac协议
    • PMAC协议
  • 分配型MAC协议

Mac协议的研究热点

  • 能量效率
    • 空闲监听
    • 冲突(会导致重传)
    • 控制开销
  • 可扩展型
  • 网络效率(挺重要)
  • 算法复杂度
  • 与其他层协议的协同

目前普遍认为重要性依次递减!

竞争性Mac协议

  • 基本思想
    • 采用按需使用信道的方式。首先通过竞争方式使用信道。发生冲突,节点按照事先设定的某种策略重传数据,直到发送成功或放弃。
  • 传统的无线网络
    • ALOHA
    • 载波侦听多路访问
    • CSMA/CA

ALOHA协议

  1. 纯ALOHA协议
  • 有需求时直接向信道发送数据分组
  • 发生冲突时,对冲突数据分组进行重发
    • 但在重传策略上,等待一段时间再发
  • 纯ALOHA协议:想发就发;时隙ALOHA协议:控制想发就发的随意性
  1. 时隙ALOHA协议
  • 它是对纯Aloha的一种改进,其基本思想是把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。该方法避免用户发送数据的随意性,减少了数据冲突,提高了信道的利用率,并且其吞吐量可以增加到纯Aloha的一倍。

CSMA协议

使用了一个载波侦听装置

  • CSMA协议的类型:
    • 非坚持型
    • 1-坚持型
    • p-坚持型
  • 非坚持CSMA
    • 节点一旦监听到信道忙或者发现其他节点在发送数据,就不再坚持侦听,而是根据协议的退避算法延迟一段随机事件后重新开始侦听。
    • 当某站监听到信道忙状态时,不再坚持监听,而是随机后延一段时间再来监听。其缺点是很可能在再次监听之前信道已空闲了,从而产生浪费。
  • 坚持型CSMA
    • 又称1-坚持CSMA,当某站要送数据时,先监听信道,若信道忙,就坚持监听,直到信道空闲为止,当空闲时立即发送一帧。若两个站同时监听到信道空闲,立即发送,必定冲突,即冲突概率为1,故称之为1-坚持型。假如有冲突发生,则等待一段时间后再监听信道。
    • 以概率1,立即发送数据
  • P坚持型
    • P坚持型CSMA
    • 这种方式适合于时隙信道,当某站准备发送信息时,它首先监听信道,若空闲,便以概率P传送信息,而以概率(1-P)推迟发送。如果该站监听到信道为忙,就等到下一个时隙再重复上述过程。P坚持型CSMA可以算是1-坚持型CSMA和非坚持型CSMA的折衷,这两者算是P-坚持算法的特例,即P分别等于1和0时的情形。
    • 对于P坚持型CSMA,如何选择P值,需要考虑如何避免在重负载情况下系统处于不稳定状态。假如当介质忙时,有N个站有数据等待发送,则当前的发送完成时,有NP个站企图发送,如果选择P过大,使NP>1,则冲突不可避免。最坏的情况是,随着冲突概率的不断增大,吞吐率会降为0。所以必须选择P值使NP<1。如果尸值选得过于小,则通道利用率会大大降低。

CSMA/CA协议

优点

  • 网络流量和网络规模变化自适应
  • 网络拓扑变化自适应
  • 算法比较简单

典型协议

SMAC 、TMAC 、PMAC 、WiseMAC 、Sitf

Smac协议-前提条件和基本思想

  • 前提条件:
    • 数据量少,可以进行数据的处理和融合
    • 节点协作完成共同任务
    • 网络可以容忍一定程度的通信延迟
  • 基本思想:
    • 802.11 Mac + 能量效率
    • 周期性睡眠、监听、协商一致的睡眠调度机制(虚拟簇)
    • RTS/CTS机制来减少重传和避免监听不必要的数据
    • 消息分割和突发传递机制来减少控制信息的开销和消息的传递延迟
  • 关键技术
    • 周期性睡眠和监听
    • 长消息传递机制
  • 算法描述
  • 多跳通信网络中,节点的周期性休眠会导致通信延迟的累加
  • FPA算法
    • 消除多跳延迟
    • 建立快速路径
    • 数据在快速路径多跳传输
  • 优点:
    • 降低了节点空闲监听的能耗
    • 减少了碰撞和控制数据包带来的能量损耗
      • 碰撞避免机制
      • 长消息传递机制
  • 缺点:
    • 不能很好的适应网络负载的变化。
    • 额外的延迟,减小了系统的吞吐量。

TMac协议

TMac协议采用动态调整调度周期中的活跃时间长度的策略。

  • 基本思想
    • TA:节点为了侦听到数据传输活动需要保持在唤醒状态的最小时间
    • 在TA时间内没有发生激活事件,则进入睡眠
    • 在休眠期间,节点如果有数据消息需要发送,则必须等到下一个活动期到来后再进行。
  • 关键技术
    • 周期性监听技术
      • 沿用SMAC协议思想,周期性广播SYNC帧
    • TA的选择
      • TA > 竞争信道时间 + RTS发送时间 + CTS准备时间
  • 早睡问题
    在这里插入图片描述
  • 早睡问题解决办法
    • T-MAC协议提出了两种方法来解决早睡问题。
    • 第一种称为未来请求发送(FutureRequest-To-Send,FRTS),如图2-5 (a)所示。当节点C收到B发送给A的CTS分组后,立刻向下一跳的接收节点D发出FRTS分组。FRTS分组包括节点D接收数据前需要等待的时间长度,节点D要在休眠相应长度的时间后醒来接收数据。由于节点C发送的FRTS分组可能干扰节点A发送的数据,所以节点A需要推迟发送数据的时间。节点A通过在接收到CTS介组后发送一个与FRTS分组长度相同的DS (Data-Send)分组实现对信的占用。DS分组不包括有用信息。节点A在DS分组之后开始发送正常的数据信息。FRTS方法提高了网络吞吐率,但是FRTS分组和DS分组也带来了额外的通信开销。
    • 第2种称作满缓冲区优先(Full Buffer Priority),如图2-5 (b)所示。当节点的缓冲区接近占满时,对收到的RTS作应答,而是立即向目标接受者发送RTS消息,并向目标节点传输数据。这个方法的优先是从根本上减小了早睡发生的可能性,而且能够控制网络的流量,缺点就是很大程度上会产生冲突。T-MAC协议为了解决早睡问题提出了许多方法,但都不是很理想。
      在这里插入图片描述

PMAC协议

  • SMAC调度占空比固定,TMAC面临早睡问题
  • 那么为了优化,我们引入——模式信息,节点能够通过模式信息提前获知邻居的下一步活动,调度都根据模式信息来进行。
  • PMAC协议空闲监听周期更长,SMAC的最短。
  • 关键技术
    • 模式的生成
      • 由二进制位串组成,1为监听,0为睡眠。
      • 节点根据网络流量更新模式
    • 模式的交换
      • 在当前周期结束时将进行广播来交换模式信息
      • 引入超帧STF,分为两子帧PRTF和PETF
      • 模式重复时间帧PRTF,节点重复自己的模式
        • 节点在每个时隙可工作于发送、监听和睡眠三种状态之一
        • 时隙模式为1,可发送数据,如果没有数据,则监听
        • 时隙模式为0,则睡眠
      • 模式交换时间帧PETF,邻居之间进行模式信息交换
        • PETF中时隙个数是一个节点可以拥有的最大邻居数
        • 时隙通过CSMA机制访问

分配型MAC协议

  • 基本思想

http://www.ppmy.cn/news/662133.html

相关文章

科普 | 什么是5G消息平台功能完备性认证,怎么才能获得5G消息平台功能完备性证书

5G消息平台功能完备性测试是由中国信息通信研究院同中国通信企业协会在5G消息工作组共同发起,旨在提升CSP的5G消息平台质量,促进5G消息业务发展。 测试针对5G消息平台的Chatbot下行消息交互、Chatbot接收消息、消息平台业务配置管理、消息平台业务统计管…

windows系统耳机插入后无响应解决方案

之前win10时,插入耳机会自动弹出一个框来确定信息,但是后来更新了win11后框没有了,当然,插入时也没有反应。我曾经怀疑过是否是耳机的问题,但耳机插到手机上或者平板上是没有问题的。查了很多方法都没有效果&#xff0…

在Android Studio 中运行React Native 项目

项目根目录执行命令安装开发依赖 yarn检查项目SDK、NDK、JDK否配置正确 点击 Android Studio 里点击大象 全部下载完毕,点击运行按钮,编译项目 连接真机的两种方式 无线连接 adb devices adb tcpip 5555 #连接端口默认5555 adb connect 192.168.0…

mysql5.7 优化配置,服务器为16核32GB

mysql5.7 优化配置 mysql5.7 优化配置,服务器为16核32GB。 当前服务器为Windows系统,找到MySQL配置文件my.ini。 当前路径为C:\ProgramData\MySQL\MySQL Server 5.7 打开独立表空间 innodb_file_per_table 1 #back_log 是操作系统在监听队列中所能保持…

JMeter 后置处理器之JSON提取器

目录 前言: 测试环境 插件介绍 插件参数 插件使用示例 JSON-PATH表达式介绍 操作符 函数 过滤器操作符 JSON PATH示例 前言: JMeter是一个功能强大的性能测试工具,它提供了许多后置处理器来处理和提取测试结果。其中一个常用的后…

微信 认证

小程序创建后要认证,无年审认证。 公众号创建后要认证,要年审认证。 付费认证一个服务号后可以用服务号快速免费认证小程序。

微信for

<view wx:for"{{array}}" wx:for-index"idx" wx:for-item"itemName">{{idx}}: {{itemName.message}} </view>

想了很久还是觉得有必要给两位表达自己的一些想法。 首先想说的是韦哥不用去找领导为我转工行的事情操心了&#xff0c;是我自己没有把握好这次机会&#xff0c;我从小考试的运气就不好&#xff0c;丢过准考证、涂错过答题卡&#xff0c;还有这次迟大到&#xff0c;面试也没有…