[计算机网络-数据链路层] CSMA、CSMA/CA、CSMA/CD详解
1.CSMA(载波侦听多路访问协议)
CSMA 当其他节点检测到信道被占用时不发送数据。但是当数据发送完后其他节点同时检测到信道为空闲,之后又在同一时刻发送数据,可能再次产生冲突。
2.CSMA/CD(带冲突检测的载波侦听多路访问协议)
由于以太网(Ethernet)成为现存局域网络结构的绝大多形式,CSMA/CD(Carrier Sense Multiple ACcess/Collision Detection)载波监测多址接人协议也成为局域网采用最多的MAC协议。CSMA/CD适宜于总线型局域网拓扑结构的随机竞争型媒体访问控制。总线型网络允许同一时刻只有一个节点(Node)发送数据,一旦两个或以上节点同时发送数据,则会发生数据碰撞,数据不能正常发送和接收。CSMA/CD协议就是尽可能保证网络上同时只有一个节点发送数据,减小数据“碰撞”概率。
CSMA/CD工作过程
当MAC收到LLG发来的数据以后,首先监测网络电缆上是否具有数据,即载波传送。
发送数据前 先侦听信道是否空闲 ,若空闲 则立即发送数据.在发送数据时,边发送边继续侦听.若侦听到冲突,则立即停止发送数据。等待一段随机时间(通过二进制指数回退算法),再重新尝试。
先听后发,边发边听,冲突停发,随即延迟后重发
CSMA/CD使用条件
L/R >= 2*T(L为发送数据包的大小,R为带宽,T为从发送端到接收端的传播时延)。
3.CSMA/CA协议(带冲突避免的载波侦听多路访问协议)
CSMA作为随机竞争类MAC协议,算法简单而且性能丰富,所以在实际局域网的使用中得到了广泛的应用。但是在无线局域网中,由于无线传输媒体固有的特性及移动性的影响,无线局域网的MAC在差错控制、解决隐藏终端等方面存在应有别于有线局域网。因此WLAN与有线局域网所采用的CSMA备一定的差异。WLAN采用CSMA/CA(CSMA/Collision Avoidance)协议,其与CSMA/CD最大的不同点在于其采取避免冲突工作方式。
与CSMA/CD不同,WLAN媒体访问控制(MAC)层采用的CSMA/CA(CSMA/Collision Avoidance)协议,由于在RF传输网络中冲突检测比较困难,所以该协议用避免冲突检测代替802.3协议使用的冲突检测,采用冲突避免机制尽量减小冲突碰撞发生的概率,以提高网络吞吐性能与迟延性能。协议使用信道空闲评估(CCA)算法来决定信道是否空闲,通过测试天线能量和决定接收信号强度RSSI来完成,并且使用RTS、CTS和ACK帧减少冲突。数据加密与普通局域网的等同加密(WEP)算法一样,使用64位密钥和RC4加密算法。
CSMA/CA工作过程
当发射端希望发送数据时,首先检测介质是否空闲,若是介质为空闲时,送出RTS(Request To Send请求发送),RTS信号包括发射端的地址、接收端的地址、下一笔数据将持续发送的时间等信息,接收端收到RTS信号后,将响应短信号CTS(Clear To Send),CTS信号上也RTS内记录的持续发送的时间,当发射端收到CTS包后,随即开始发送数据包。接收端收到数据包后,将以包内的CRC(CyClic Redundancy Check,循环冗余校验)的数值来检验包数据是否正确,若是检验结果正确时,接收端将响应ACK包,告知发射端数据己经被成功地接收。当发射端没有收到接收端的ACK包时,将认为包在传输过程中丢失,而一直重新发送包。
4.CSMA/CA与CSMA/CD的区别
(1)载波检测方式:因传输介质不同,CSMA/CD与CSMA/CA的检测方式也不同。CSMA/CD通过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电压就会随着发生变化;而CSMA/CA采用能量检测(ED)、载波检测(CS)和能量载波混合检测三种检测信道空闲的方式。
(2)信道利用率比较CSMA/CA协议信道利用率低于CSMA/CD协议信道利用率。但是由于无线传输的特性,在无线局域网不能采用有线局域网的CSMA/CD协议。信道利用率受传输距离和空旷程度的影响,当距离远或者有障碍物影响时会存在隐藏终端问题,降低信道利用率。
具体最高的信道利用率与传输速率有关。在IEEE802.11b无线局域网中,在1Mb/s速率时最高信道利用率可到90%,而在11Mb/s时最高信道利用率只有65%左右。
[计算机网络-数据链路层] CSMA、CSMA/CA、CSMA/CD详解的更多相关文章
- 计算机网络——OSI、TCP/IP协议族详解
一.OSI七层协议体系结构域TCP/IP四层体系结构对比 ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是 ...
- Linux目录处理命令cd、pwd、rmdir、cp、mv、rm详解
命令cd详解 命令cd(英文原意:change directory),命令路径及执行权限为: 可以看到它的路径为/usr/bin/cd,因此,它的执行权限是所有用户 基本功能是切换目录,例如:cd . ...
- CSMA系列区别比较:p-pCSMA;CSMA/CA;CSMA/CD
CSMA系列小结 CSMA,又称载波侦听多路访问协议.在计算机网络课程中,其一共有四个基础协议与两个实际应用(分别是802.11和802.3) 忙 空闲 传输冲突 应用 1-p CSMA 持续侦听,等 ...
- 计算机网络: IP地址,子网掩码,默认网关,DNS服务器详解
楔子: 以Windows系统中IP地址设置界面为参考(如图1), IP地址, 子网掩码, 默认网关 和 DNS服务器, 这些都是什么意思呢? 学习IP地址的相关知识时还会遇到网络地址,广播地址,子网等 ...
- 计算机网络: IP地址,子网掩码,网段表示法,默认网关,DNS服务器详解
楔子: 以Windows系统中IP地址设置界面为参考(如图1), IP地址, 子网掩码, 默认网关 和 DNS服务器, 这些都是什么意思呢? 学习IP地址的相关知识时还会遇到网络地址,广播地址,子网等 ...
- Linux命令详解之–cd命令
cd命令是linux实际使用当中另一个非常重要的命令,本文就为大家介绍下Linux中cd命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux cd命令用于切换当前工作目录至 d ...
- 【Devops】【docker】【CI/CD】关于jenkins构建成功后一步,执行的shell命令详解+jenkins容器运行宿主机shell命令的实现方法
1.展示这段shell命令 +详解 #================================================================================= ...
- 计算机网络基础之IP地址详解
计算机网络基础之IP地址详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.IP地址概述 1>.什么是IP地址 我们为什么要使用逻辑地址(IP地址)来标识网络设备,而不采 ...
- DOS批处理中%cd%与%~dp0的区别详解
转载:https://www.jb51.net/article/105325.htm DOS批处理中%cd%与%~dp0的区别详解 Windows下批处理中%cd%和%~dp0都能用来表示当前 ...
随机推荐
- WPF自定义命令
WPF的自定义命令实现过程包括三个部分,定义命令.定义命令源.命令调用,代码实现如下: public partial class MainWindow : Window { public MainWi ...
- 优步UBER司机奖励政策:含高峰、翻倍、行程、金牌司机、保底奖励(持续更新...)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://didi-uber.com/archiv ...
- 苏州Uber优步司机奖励政策(4月11日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- RHCSA-day1
1. 破解密码 开机 e 进入编辑模式 linux16 /boot/.............................en_US.UTF_8 这行末尾插入 rd.break (空格) ctrl ...
- 1245 最小的N个和
1245 最小的N个和 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 有两个长度为 N 的序列 A 和 B, ...
- Linux 删除用户时报错:userdel: user zhoulijiang is currently used by process 1
一.发现问题: 有技术人员离职,需要删除系统帐号,但是进行删除操作的时候报:" userdel: user zhoulijiang is currently used by process ...
- Apache入门篇(三)之apache2.4.33的新特性解析与虚拟主机实战
1.http 2.4新特性 新特性: (1) 在编译时可以将多个MPM构建为可加载模块,可以在运行时通过LoadModule指令配置所选的MPM: (2) 2.2版本的event MPM在实验阶段,到 ...
- 基于ejabberd实现各个客户端消息同步
先上图再说(左侧是web端,右侧是ios端) 要实现上面的功能,如果所有设备都在线的话,那么carboncopy(xmpp xep-0280协议)这个模块是可以实现接收到的消 ...
- DB知识点记录
DB知识点记录 分页 SqlServer:ROW_NUMBER () over (ORDER BY ID) AS RN, MySql:limit Oracle:ROWNUM AS RN 数据表的基本结 ...
- Oracle创建表管理表
--创建图书表 create table books_lib ( book_id ) primary key, --unique¬ null book_name ) not null ) ...