S-MAC协议
来源:互联网 发布:linux解压tgz文件命令 编辑:程序博客网 时间:2024/05/16 06:25
S-MAC是一种以节能为首要目的的无线传感器网络的MAC层协议。主要思想是使节点周期性地休眠以减少串音侦听和空闲侦听导致的时延,来降低能量的消耗。如果有消息需要发送,通过握手机智竞争通道,在侦听阶段发送。S-MAC协议中节点采用退避机制竞争信道。一个完整的侦听和休眠过程叫一个周期。在每个周期开始时,消息队列非空的节点会从[0,W-1]中随机选择一个退避数,其中,W为竞争窗口的大小,协议中规定竞争窗口的大小不变。选择退避数后,如果信道保持空闲且持续一个时隙的时间,则节点的退避数会在时隙结束后减1。当网络中某节点的退避数首先减少为0时,该节点将发送数据,如果2个或者2个以上的节点同时发送数据,则会造成冲突。而那些未能发送数据的节点会因为侦听到信道状况变为繁忙而取消当前的退避转而进行休眠,等待下一个周期的到来。
主要功能模块:
1. 周期性侦听与休眠机制
每个节点周期性地进入休眠状态,周期长度固定,节点的侦听活动时间也是固定的。节点苏醒后进行侦听,判断是否需要通信。为了便于通信,相邻节点间应尽量维持调度同步,并维护一张时间调度表,记录所有已知相邻节点的侦听与休眠调度信息。允许一个节点采用多个休眠调度,以使采用不同休眠调度的节点可以通过此类节点进行数据转发,能使网络在多跳情况下正常工作。各节点需要周期性地更新它们的休眠时间,防止长期的时钟漂移。
2. 消息冲突与串音避免机制
采用类似于IEEE802.11DCF中的冲突避免机制,还采用RTS/CTS机制解决隐终端问题。为了避免串音,S-MAC协议使节点在接收到发往其他节点的RTS和CTS消息后进入休眠。
3. 长消息传递机制
采用一种称为“消息传递”的机制来高效地传送长数据消息。只使用一个RTS和CTS消息为所有短数据包预约通道,每个数据包分开进行确认。若一个节点在某一发送节点发送的中间被唤醒或一个新节点在发送的中间加入网络,不管该节点是发送节点的相邻还是接收节点的相邻都应立即进入休眠状态。若数据段丢失或出错,发送节点可以延长发送时间。- S-MAC协议
- S-MAC协议的相关知识
- Contiki之MAC协议:MAC协议架构
- mac libtool -s -o
- mac's apache server
- Zigbee Mac 层协议
- 802.11的 MAC协议
- mac 协议的 类型
- WSN MAC协议总结
- T-MAC协议
- HTTP协议,S-HTTP协议,HTML
- Mac OSX - Application's Configuration
- Futaba S-BUS协议解析
- SSL记录协议中的MAC
- 无线传感网MAC协议
- 基于竞争的MAC协议
- MAC地址,ARP协议,以太网
- MAC协议之CRC校验码
- 详情页返回列表页时保持原来的位置
- Mac SourceTree使用
- 从零开始搭建 ResNet 之 残差网络(持续更新)
- 向梦想出发
- NDK各个版本链接
- S-MAC协议
- 获取手机IMSI,区分移动联通 电信,4G问题
- 微信支付(商户支付模式一)扫码支付接口回调详解
- 4.关于laravel框架中Blade模板引擎
- 算法竞赛入门经典Chap5笔记
- T-MAC协议
- MySql需要注意的知识点
- Centos7.2相关命令
- mysql中count(*)、count(列)、count(1)分析