无线传感网学习笔记(3)—— MAC协议 和 CSMA协议
一、Medium Access Control protocol(媒质访问控制协议MAC)
1、概念:网络中的通信介质通常被大量节点共用,传输各自的数据包,而MAC协议负责协调网络中各个节点对共用介质的访问,在OSI七层模型中属于数据链路的子层。
2、功能:① 决定节点何时可以访问共享介质
② 解决发生在竞争节点间的潜在访问冲突
③ 纠正物理层的通信差错
④ 执行寻址、流量控制等任务
3、 设计考虑的因素:A:传输可靠性 B:能量效率
4、分类:① 无竞争介质访问协议:使用固定分配或动态分配的方式使每个节点互斥地访问介质。(如FDMA、CDMA)
② 基于竞争的介质访问协议:节点在传输数据前先进行协商,通过竞争访问介质。(如CSMA、ALOHA)
二、Open Systems Interconnection(开放系统互连模型OSI)
OSI模型在理论上更加清晰,但TCP/IP模型却是当前的主流,实质上也是现行标准。TCP/IP模型将OSI模型的应用层、表示层和会话层集合成为一个应用层,将数据链路层和物理层集合成为一个数据链路层,使模型变得相对简单。
作用 | OSI | 相关的网络协议 |
---|---|---|
为应用程序提供服务 | 应用层(Application) | HTTP、FTP、 NFS |
数据格式转换、数据加密 | 表示层(Presentation) | Telnet, Rlogin |
建立、管理、维护会话 | 会话层(Session) | SMTP, DNS |
建立、管理、维护端到端连接 | 传输层(Transport) | TCP、UDP |
IP选址和路由选择 | 网络层(Network) | IP、ICMP |
提供介质访问和链路管理 | 数据链路层(DataLink) | FDDI、Ethernet |
提供可靠的点到点通信 | 物理层(Physical) | IEEE802.1A、IEEE802.11 |
(物理层需要通过介质Medium实现)
TCP/IP | 与OSI模型的区别 |
---|---|
应用层 | 包含OSI中的应用层、表示层和会话层 |
传输层 | 对应OSI中的传输层 |
网际层 | 对应OSI中的网络层 |
网络接口层 | 包含OSI中的数据链路层和物理层 |
注意:如果想要详细了解请翻阅至底部查看图片。
三、Carrier Sense Multiple Access(载波监听多路访问CSMA)
1、基本思想:节点在传输数据前,先监听信道是否空闲。
2、分类:WSN中的许多基于竞争的MAC协议是基于CSMA协议及其变体版本的。
① 非持续型CSMA:当无线节点在监听到信道空闲时传输数据,信道繁忙时采取退避操作。
② 1-持续型CSMA:传输数据的节点一直处于监听信道的活动状态,当信道空闲时传输数据,如果传输过程发生碰撞时该节点采取退避操作,再尝试传输。
③ P-持续型CSMA:传输数据的节点一直处于监听信道的活动状态,当信道空闲时,节点以概率P传输数据,以概率1-P延迟此次传输,如果传输过程发生碰撞时该节点采取退避操作,再尝试传输。
(退避操作:随机等待一段时间)
四、退避时间
1、在非时隙的CSMA中,随机退避的时间是连续的。
2、在按时隙划分的CSMA中,随机退避的时间为时隙的整数倍。
(时隙是电路交换汇总信息传送的最小单位)
五、CSMA的两种基本变体
1、基于冲突检测的CSMA(CSMA/CD)
① 概念:发送者检测通信介质来确定介质是否空闲来选择传输数据。
② 应用:在有线系统中可以通过检测有线电缆上的直流信号平均电压等级来判断是否有冲突,所以一般用于有线系统。
2、基于冲突避免的CSMA(CSMA/CA)
① 概念:采用主动避免碰撞的方式来解决冲突问题。
② 应用:可以满足不易检测是否有冲突发生的系统需求,所以一般用于无线系统,因为碰撞发生在接收机端,而发送者不知道是否存在冲突。
③ 隐患:产生隐藏终端和暴露终端的问题。
六、CSMA/CA协议的技术原理
Step1: 节点监听信道,当监听到信道空闲时并不立即使用信道。
Step2: 节点先等待一个DIFS帧间距的时间,再等待一个随机退避时间,由于该协议是按时隙划分的,所以该随机退避时间是时隙的整数倍。(分布式帧间间隙DIFS:Distributed Inter-frame Space)
Step3: 为防止多个节点同时接入信道,退避时间较短的节点会占用信道。
注意点:
① 计算等待时间需要考虑DIFS帧间距的时间以及可能存在的其他节点的传输时间。
② 每个节点的退避时间都需要完全执行,即使在竞争时被其它节点抢先,但在 接下来的竞争中还得继续完成剩余的退避时间。
七、隐藏终端问题
节点B在节点A和C的通信范围内,但节点A和C互不在通信范围内(因为环境导致信号衰减),导致二者都无法监听到对方是否在发送数据,所以当A向B发送数据,C也向B发送数据的时候,节点B无法正确接收来自A和C的任何有效数据。此时,称A和C互为隐藏终端。
八、暴露终端问题
节点B正在传输数据给节点A,当节点C想要向节点D传输数据时,C监听到B正在不间断传输,因为C无法判断B是否是在给D发送数据,所以需要等待节点B传输结束。又因为节点D在B的传输影响范围之外,B的传输并不干扰D进行数据的接收,所以C的等待其实并没有必要,反而导致了信道利用率下降的问题。此时,C称为B的暴露终端。(如果C先传输数据,那么B称为C的暴露终端)
无线传感网学习笔记(3)—— MAC协议 和 CSMA协议相关推荐
- 无线传感网学习笔记(8)—— DSDV路由协议 和 AODV路由协议
一.DSDV路由协议 1.概念:一种目的节点序列机理矢量的路由算法.(Destination-Sequenced Distance Vector) 2.组成:该路由为先应式路由,采用分布式Bellan ...
- 武汉理工大学 mooc网 的无线传感网技术笔记
武汉理工大学 mooc网 的无线传感网技术笔记 只有截屏,该笔记仅供学习使用. 第一章 P1 第一章 P2 第一章 P3 第二章 P1 信源熵的定义:信源各个离散消息的自信息量的数学期望(即概率加权的 ...
- 无线传感网的MAC层协议
非理想特性: 无线传感网的协议栈 MAC层的帧结构 MAC层协议: 功能:数据成真,真校验, 传感器节点之间分配和共享无线传感网节点 M ...
- 《高级计算机网络》之无线传感网——大连理工大学研究生课程整理笔记(非常详细,通俗易懂)
注:本文是根据大连理工大学研究生课程<高级计算机网络>整理的笔记,非常全面和详细,通俗易懂,对于您考试或者面试都会有很大的帮助,如果对您有用,请点个赞吧!! <高级计算机网络> ...
- 无线传感网笔记--物理层
趋肤效应:高频随频率的变高,电分布在电线的外边 R = P*l/s 不能用在高频的原因:热损耗(s面积变小), ...
- 宽带接入与无线网络(学习笔记一)——VLAN原理
宽带接入与无线网络(学习笔记一)--VLAN原理 1. VLAN的概念及作用 1.1 VLAN的概念 1.2 VLAN的作用 2. 广播域的分割 2.1为什么需要隔离广播域 2.2 如何分割广播域 3 ...
- An Energy-Efficient Ant-Based Routing Algorithm for Wireless Sensor Networks (无线传感网中一种基于蚁群算法的能量有效路由)
牙说:这篇论文是研究蚁群算法在能量有效路由协议的过程中必读的一篇文章,原是全英文,在这里按照自己的理解大致翻译成中文,好好学习,与君共勉. 论文题目:An Energy-Efficient Ant-B ...
- 物联网概论(IoT)__Chp4 传感器与无线传感网//WSN
Chp4 传感器与无线传感网 传感器(Sensor:Measuring Element:Transducer)是一种以一定的精确度把"被测量"转换为与之有确定对应关系的.便于应用的 ...
- 无线传感网课后习题(书本名称无线传感器网络基础 : 理论和实践 : Fundamentals of wireless sensor networks : theory and practice)
无线传感网课后习题(书本名称无线传感器网络基础 : 理论和实践 : Fundamentals of wireless sensor networks : theory and practice) 1 ...
最新文章
- 防抖技术 | OpenCV实现视频稳流
- javascript 初学对象
- MySQL检查冗余索引代码
- 广东线上比赛过程集锦
- mysql share 字体 中文_MySQL 存储生僻字/不常见繁体字解决方案(未完全解决)
- NIO入门系列之第4章:缓冲区内部细节
- 蚌埠学院官网综合新闻条目抓取
- token验证+vuex的localStorage应用
- 项目上传服务器后,图片上传功能不能用了?附件不能成功上传。
- php中的转义字符(用反斜杠\来输出,和C语言一样)
- JavaScript/JS闭包理解
- RK3399:HDMI输出固定频率与热插拔
- 安卓测试二(Espresso)
- hrbust 哈理工oj 1633 word!word!【欧拉路、欧拉回路的有向图判断】
- 阅读Logback文档笔记--Logback的Appender配置
- access简述报表的功能_2016Access教程:第四章 报表.doc
- showDoc的基本使用方法
- 阅读感受-致命的自负1
- 解密铁路12306手机客户端的开发技术
- SQLZOO学习,答案