概述
无线通信中,为什么要有MAC协议?
无线网络主要通过光、无线电波进行传输。大家都是通过一个共享的无线物理链路把所有的用户联结起来。由排队理论得知,对个用户,也就是多址通信的接入方式有好多种,但是最重要的一点都是要避免多个用户的碰撞,否则会产生干扰。理想的多址通信是让所有的队列排成一个总队列,由信道服务。那么,这种排队的方式,就需要有一个协议,这个协议就是无线通信中的MAC协议。
MAC协议的种类?
多个用户,多址接入的核心问题就是:对于一个信道,多个用户产生竞争的时候,如何采用一些协调机制,也就是采用何种MAC协议。例如两种极端的MAC协议,一种是完全自由的方式,用户自由发送,但是要解决一个问题是碰撞后如何办,一种是完全排序,每个用户都被规定了详细的规则来发送,接收包。但是,实际上不可能这样的,因为MAC协议,主要决定了通信的吞吐量、延迟等性能,所以,这块是非常重要的,是多种方式的结合。MAC协议主要分为以下三类
1、固定分配信道。信道基本上可以分为频分、时分、码分、空分,每个用户都被固定的分配了一个信道,这种方式实时性很高,但是有浪费。主要是面向语音。例如FDMA(电话)、TDMA(GSM)、CDMA.
2、随机分配信道。。主要是面向数据。例如 ALOHA,CSMA就是随机分配的典型例子。
3、按需分配信道。根据用户的要求,按照需求分配信道,例如802.16就是按照需求分配信道。主要是面型多媒体。
MAC协议的主要指标和参数?
协议的主要指标有
1、延迟。就是一个数据进入队列后,发送出去的时间,包括发送错误后,重新发送的时间
2、吞吐量。就是传输效率,单位时间内,最大传输的数据。
3、公平性。多个用户,多个数据,不能只传一个人的,要公平的把用户的数据都传输出去,不能只传送特殊的数据。
4、稳定性。协议存在开销,稳定的、比较小开销能让系统传送更多的数据。
5、支持多媒体,也就是支持Qos.
无线MAC协议要重点考虑的问题?
无线的MAC协议有一些点要重点考虑,例如资源有限、信道会随着时间、环境变化、半双工的操作、信道有突发错误、和客户端的位置有很大关系(隐藏终端的问题、暴露终端的问题)、捕获效应(就是信号强度大的获得带宽高,引起不公平)、鲁棒性(鲁棒性就是指对抗信号衰落时,网络和信道仍能维持稳定的工作)、对于PHY层透明、公平性、节能性、对移动的支持性等。
无线MAC层CSMA/CA的简单介绍?
在无线通信系统中,由于发送信号的泄漏,在发送的时候很难进行检测,因为无线信道信号的强度变化范围非常大,所以就无法采用CD的方式,也就是冲突检测的方式。所以,只能是在发送前,先检测一下,也就是载波侦听。载波侦听主要有两种方式,一种是物理(直接)载波监听(PCS),还有一种是虚拟(间接)监听(VCS),因为物理监听的方式下,无线信道不稳定,信号变化强度大,所以,通产采用虚拟的方式,就是利用帧中持续时间的保留信息,该信息包括将要使用信道的时间和其他控制信息。
CSMA/CA主要是进行带内控制信息。不考虑捕获效应,假设没有衰落,分组错误只是因为碰撞。
首先我们假设两次握手协议,发送方检测信道,等待DIFS时间,这个时间就是两个帧的间隔,如果没有人发送数据,说明信道空闲,就发送数据,接受方在收到数据后,等待一个SIFS(最短帧间隔),回复ACK。但是,这种方式有一个问题,容易发生碰撞,就是两个站都在检测,都等待了DIFS的时间,都没有传输,然后发送,结果就碰撞了,这种方式下,就增加一个时间slot时间,就是等待了一个DIFS的时间后,再退避[0,N]个的slot时间,这样就大大降低了碰撞几率,但是,还有一个严重问题,那就是不能解决隐藏终端的问题,所以,就需要改进,然后提出了三次握手的协议。
三次握手协议,就是在发送数据之前,首先发送一个RTS,包含要发送数据的时间长度,接受方收到以后,回复一个CTS,CTS同样包含了发送数据包的长度,这样隐藏终端收不到RTS,但是可以收到CTS,这样,所有其他的客户端就会等待足够的时间,让通信的双方完成通信,在发送端收到CTS之后,开始发送数据。这就是通常说的三次握手,RTSàCTSàDATA,注意,这是没有ACK的,如果加上ACK,就是大家通常说的四次握手了。这个时候,还有一个问题就是暴露终端的问题。 暴露终端只能听到RTS,收不到CTS,暴露终端也听不到任何发送CTS端的任何数据,暴露终端就会和其他的终端联系,就可能会发生碰撞,这个时候,引入了五次握手的机制。
五次握手机制就是发送端在收到CTS后,要通知暴露终端,这个RTS和CTS的信道建立起来了,也就是在发送数据的时候,提前发送一个数据DS(Data Sending),通过这个来通知暴露终端。当时这种方式下,又带来一个问题,就是公平性的问题。
这些握手机制,都是为了避免冲突,我们可以考虑另外一种思路,就是碰撞后,如何进行重传的算法,就是通过分裂算法(Splitting)来解决冲突分解,这种算法名字叫做CRA。CRA(Collision Resolution Algorithm)常用的方法有:树形算法、先到先服务算法。
这里再补充一点,就是CSMA是没有中心的方式,我们再介绍一下有中心方式的MAC协议。1)ISMA协议,中心站周期性的广播空闲信令。 2) DSMA 3)RAP协议。
在解决了数据传输的问题后,如果业务中有了视频、VOIP等,那么如果修改这些协议,满足这些要求呢。这就是802.11e协议,该协议主要对分布式协同(DCF)作了修订。
802.11e的修订标准称为增强型分布式协同(EDCF)。增强型分布式协同(EDCF)把流量按设备的不同分成8类,也就是8个优先级。当线路空闲时,无线设备在发送数据前必须等待一个约定的时间,这个时间称为“给定帧间时隙”(AIFS),给定帧间时隙(AIFS)的时间间隔来取代DIFS,AIFS不像DCF中定义的DIFS那样不变,它的值是不唯一的,不同的业务类型有着不同的AIFS值,这个值由支持QoS的无线接入点(QAP)来分配。AIFS其长短由其流量的优先级决定:优先级越高,这个时间就越短。不难看出,优先级高的流量的传输延迟比优先级低的流量小得多。为了避免冲突,在8个优先级之外还有一个额外的控制参数,称为竞争窗口,实际上也是一个时间段,其长短由一个不断递减的随机数决定。哪个设备的竞争窗口第一个减到零,哪个设备就可以发送数据,其它设备只好等待下一个线路空闲时段,但决定竞争窗口大小的随机数接着从上次的剩余值减起。通过这种方式,实现了QoS的功能。
802.11的帧类型有哪些?
镇类型主要有三类,
一类是控制帧:例如RTS、CTS、ACK。
二类是管理帧:例如试探请求、响应、信标、认证、解除认证等
三类是数据帧:
802.11X的MAC协议详细介绍?
前边的CSMA/CD已经对WLAN的协议介绍的理论介绍了,现在我们详细的看一下里面的过程。
DCF:分布式协调功能,其基础就是CSMA/CA,包括载波检测、随机退避等,在所有的STA上实现。
PCF:PCF的基础是DCF,PCF把时间分为竞争和非竞争的时间,通过轮巡的方式把发送数据的权利交给各个终端,这种方式现在用的很少了。
DIFS==分散帧间隔
tF==帧的传输时间
tDIFS=分布式帧间间隔
tBO==平均退避时间, 平均退避次数×时隙长
tACK==应答时间。持续时间为SIFS+ACK
MAC协议定义了5类时序间隔,其中两类是由物理层决定的基本类型:短帧空间(SIFS)和时隙(slot time)。SIFS是最短的时序间隔,其次为时隙。时隙可视为MAC协议操作的时间单元。通常SIFS和时隙分别为10和20μs,其余3类时序间隔则基于以上两种基本的时序间隔:
优先级帧间空间(PIFS),PIFS等于SIFS加1个时隙,PCF模式下的IFS。
分散帧间空间(DIFS),在传输数据之前,必须侦听DIFS长的时间。分布式帧间间隔,每个节点检测到信道空闲之后,需要等待28μs,才能开始退避计数;DIFS等于SIFS加2个时隙
扩展帧间空间(EIFS)。EIFS比上述4类时序间隔都长得多,通常在当收到的数据帧出现错误时才使用。
如果信道在DIFS时序间隔内空闲,那么移动站开始将信道时间分为多个时隙单元;同时生成以时隙为单位的随机退避间隔(random backoff interval);继续检测信道。接着,在信道仍保持空闲的每个时隙中,退避间隔值减1。当间隔值为0时,移动站将开始传送分组数据。
随机退避时间的窗口大小:7,15,31,63,127,255。
RTS的帧也会碰撞,碰撞后采用回退机制。
对于帧的结构描述?
801.11 协议族 MAC 帧结构: |
2 | 2 | 6 | 6 | 6 | 2 | 6 | 0-2312 bytes | 4 bytes |
Frame Control | Duration | Address 1 | Address 2 | Address 3 | Seq | Address 4 | Data | Check Sum |
|
2 | 2 | 4 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Version | Type | Subtype | To DS | From DS | MF | Retry | Pwr | More | W | O |
|
最后
以上就是鳗鱼热狗为你收集整理的对MAC层协议的几个问题的理解的全部内容,希望文章能够帮你解决对MAC层协议的几个问题的理解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复