CSMA/CA协议的原理及相关技术
来源:互联网 发布:方正兰亭纤黑简体 mac 编辑:程序博客网 时间:2024/06/05 05:34
CSMA/CA协议:载波侦听多路访问及冲突避免协议
(一)CSMA/CA协议的产生背景(原因)
无线局域网不能使用CSMA/CD协议,只能使用改进的CSMA协议;
(二)CSMA/CD的缺陷
(1)CSMA/CD不能进行冲突的避免,只能进行冲突检测
(2)CSMA/CD是边传输变检测的,容易造成冲突;
(3)隐蔽终端问题
当A和C都检测不到信号,认为信道空闲时,同时向终端B发送数据帧,就会导致冲突;
(4)暴露终端问题
当B向A发送数据的时候,终端C也想给D发送数据:但是,终端C检测到信道处于忙状态,则不会向D发送数据,但是,B向A发送数据是不会影响C向D发送数据的。
(三)CSMA/CA的工作原理
当一个终端节点要向另一个终端节点发送数据时,先进行通道的预约。
当终端A想要给终端B发送数据的时候,在侦听到信道空闲的前提下:
1)终端A先向终端B发送一个控制帧RTS(Request To Send);
2)终端B可以在可以接收数据的情况下:就会发送一个响应控制帧CTS(Clear To Send);
3)终端A接收到终端B发送的帧就开始发送要发的数据帧;
4)终端B接收到终端A发送的数据帧后,经过一段时间,就会向终端A发送一个确认帧。
CSMA/CA协议只能避免数据帧的冲突,不能避免控制帧的冲突。
(四)CSMA/CA协议的关键技术
1.帧间间隔
SIFS(最短帧间间隔):使用SIFS的帧优先级最高,用于需要立即响应的服务。eg:ACK帧,CTS帧和控制帧等。
PIFS:PCF方式下节点使用的帧间间隔,用以获得在无竞争访问周期启动时访问信道的优先权。
DIFS:DCF方式下节点使用的帧间间隔,用于发送数据帧和管理帧。
2.虚拟载波监听机制
当其他节点通过源终端向目的终端发送的ACK帧以及目的终端对于源终端回应的CTS帧得知在某一时间段,这两个终端将要进行会话,则其他终端节点会停止侦听,进入休眠状态(节省能量),直到会话结束,则又开始侦听。这种机制就称做虚拟载波侦听。
3,争用窗口
在有众多的终端节点都想发送数据并且信道空闲时:先经过一个DIFS的时长,然后,每一个节点都产生一个随机的争用窗口(计时器),进行倒计时,当先结束计时结束的节点进行数据的发送,其他节点冻结争用窗口,停止计时,并且记住剩余的时间,当该节点的数据发送完成,在经过一个DIFS的时间,其他节点的争用窗口重新启动并且开始计时,依次下去,直到所有的节点发送完毕。若节点在争用窗口计时结束后发送数据与其他节点发生冲突,则发生冲突的节点都随机产生一个争用窗口,继续进行倒计时。
(五)总结
CSMA/CA协议只能用于有明确目标地址的帧,不能用于组播报文和光播报文传输。
- CSMA/CA协议的原理及相关技术
- CSMA/CA和CSMA/CD的区别 以及BTMA协议
- CSMA/CA协议 80211
- CSMA/CA协议分析
- CSMA/CD 和 CSMA/CA 之原理
- 笔记3~CSMA/CA协议
- CSMA/CD协议和CSMA/CA协议有什么具体的区别?
- 【csma/ca协议和csma/cd协议的matlab仿真详解】
- 【无线传感网】:CSMA/CA与CSMA/CD协议的区别和联系
- CSMA/CA与CSMA/CD的区别
- CSMA/CA与CSMA/CD的区别
- CSMA/CA与CSMA/CD的区别
- CSMA/CD与CSMA/CA的区别
- 802.11协议精读3:CSMA/CD与CSMA/CA
- 802.11为什么采用CSMA/CA协议
- CSMA/CA
- CSMA/CA
- CSMA/CA
- 标准C++中的string类的用法总结
- 常量
- VBR、Loose CBR、Hard CBR
- 总结19
- 在分类中如何处理训练集中不平衡问题
- CSMA/CA协议的原理及相关技术
- 静态链接库和动态链接库
- C++ 异常处理-2
- codeforces 732F
- PHP中几种常见的超时处理全面总结(三)
- Matlab 二值图像label regions
- 从list集合里随机获取数据
- STL-vector
- 虚函数