CSMA系列区别比较:p-pCSMA;CSMA/CA;CSMA/CD
CSMA系列小结
CSMA,又称载波侦听多路访问协议。在计算机网络课程中,其一共有四个基础协议与两个实际应用(分别是802.11和802.3)
| 忙 | 空闲 | 传输冲突 | 应用 | |
|---|---|---|---|---|
| 1-p CSMA | 持续侦听,等待空闲 | 立刻抢占(传输概率为1) | (传输之后检测到冲突)随机等待一段时间后再试 | - |
| Non-p CSMA | 不再持续监听,而是随机等待一段时间后再试 | 立刻抢占 | (传输之后检测到冲突)随机等待一段时间后再试 | - |
| p-p CSMA【分槽】 | 等待下一个时间槽 | 有p概率发送,1-p概率推迟到下一个时间槽 | (传输之后检测到冲突)随机等待一段时间后再试 | - |
| CSMA/CD(detect) | - | - | (检测到传输进行中的冲突)立刻停止传输;之后随机等待一段时间后再试 | - |
| 二进制指数后退的1-p CSMA/CD | 持续侦听 | 立刻抢占 | (检测到传输进行中的冲突)立刻停止传输;之后等待[0,2^i-1]个随机时间槽之后再试 | 经典以太网-802.3 |
| CSMA/CA(avoid)【分槽】 | 监听到有帧在发送则暂停计时器 | 以一个随机的后退时间槽开始计时 | 没有收到ACK,则加倍后退选择的时间槽数 | 无线局域网-802.11 |
其中,CSMA/CD强调的是其在信号传输中使用检测冲突以加快传输速度的做法,如果一定追究其在信道忙和信道空闲时候的表现,应考虑1-pCSMA。而二进制指数后退的CSMA/CD与CSMA/CD模型的区别只在于明确了退避的时间算法。
二进制指数后退的1-p CSMA/CD每次会在2的指数级内随机一个数开始后退。不难发现这样做会使后退的时间越来越多,因此在第10次冲突之后,这一数字就不再增加,并会在第16次尝试失败之后放弃发送,返回一个错误报告。
而CSMA/CA与之前几个模型的区别相对较大。主要原因是由于无线电信道是半双工类型,无法在发送数据的同时监听噪声,因此采取了更为谨慎的策略来避免冲突(所以叫冲突避免)。下图是几个协议间吞吐量的区别。

关于更多详细的介绍各位可以关注我的博客 关于计算机网络-MAC子层的内容~~
主贴连接: https://www.cnblogs.com/maomaozi/p/14107866.html
CSMA系列区别比较:p-pCSMA;CSMA/CA;CSMA/CD的更多相关文章
- .Net Core自动化部署系列(三):使用GitLab CI/CD 自动部署Api到Docker
之前写过使用Jenkins实现自动化部署,最近正好没事研究了下GitLab的自动化部署,顺便记录一下. 使用GitLab部署我们需要准备两件事,第一个起码你得有个GitLab,自己搭建或者使用官方的都 ...
- [计算机网络-数据链路层] CSMA、CSMA/CA、CSMA/CD详解
1.CSMA(载波侦听多路访问协议) CSMA 当其他节点检测到信道被占用时不发送数据.但是当数据发送完后其他节点同时检测到信道为空闲,之后又在同一时刻发送数据,可能再次产生冲突. 2.CSMA/CD ...
- HTTP协议详解及http1.0与http1.1http2.0的区别
HTTP协议介绍 http(超文本传输协议)是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.特点: (1)支持客户/服务器模式. HTTP是一个客户端和服务器端请 ...
- HTTP1.0、HTTP1.1 和 HTTP2.0 的区别
一.HTTP的历史 早在 HTTP 建立之初,主要就是为了将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器.也是说对于前端来说,我们所写的HTML页面将要放在我们的 web 服务器上 ...
- JAVA GET 和 POST 的区别
GET 和 POST 的区别 GET请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:/test/demo_form.asp?name1=value1&name2=val ...
- 密钥密码体系CA,CSC,CV
密钥密码体系CA,CD,CSC,CV 片内操作系统 (cos) 密码学(Cryptography) 非接触式智能卡Contactless Smart Card, CSC 密钥名词 名词 英文说明 中文 ...
- DOS批处理中%cd%与%~dp0的区别详解
转载:https://www.jb51.net/article/105325.htm DOS批处理中%cd%与%~dp0的区别详解 Windows下批处理中%cd%和%~dp0都能用来表示当前 ...
- 介质访问控制子层-Medium Access Control Sublayer:多路访问协议、以太网、无线局域网
第四章 介质访问控制子层-Medium Access Control Sub-layer 4.1介质访问控制子层概述 MAC子层不属于之前提到的OSI或TCP/IP架构的任何一层,这也是为什么这一层被 ...
- 无线网络中的MAC协议(1)
前文我们对传统的有线网络的MAC协议进行了分析,接下来我们在对无线网络的MAC也进行一个详细的介绍.那么无线网络中的MAC工作方式是如何的呢?无线局域网(WLAN)中MAC所对应的标准为IEEE 80 ...
随机推荐
- leetcode bitmap系列问题整理
1. 题目: 编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量). 示例 : 输入: 11输出: 3解释: 整数 11 的二进制表示为 000000 ...
- TIME_WAIT状态存在的原因
TIME_WAIT状态存在有两个理由: 1.可靠地实现TCP全双工连接的中断 2.允许老的重复分节在网络中消失 第一个理由:如果客户端的ACK丢失了,服务器将会重新发送它的最终的那个FIN,因此客户端 ...
- 硬盘LBA 和CHS的关系(转)
磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数 l 磁头(head)数:每个盘片一般有上下两面,分别对应1个磁头,共2个磁头:l 磁道(track)数:磁 ...
- ceph 的crush算法 straw
很多年以前,Sage 在写CRUSH的原始算法的时候,写了不同的Bucket类型,可以选择不同的伪随机选择算法,大部分的模型是基于RJ Honicky写的RUSH algorithms 这个算法,这个 ...
- Python_案例_斐波那契数
方法一: 1 #!/usr/bin/python3 2 3 # Fibonacci series: 斐波纳契数列 4 # 两个元素的总和确定了下一个数 5 a, b = 0, 1 6 while b ...
- Java中常见内存溢出模拟及错误分析
在JVM虚拟机规范中,Java虚拟机运行时数据区域除了程序计数器(Program Counter Register)外都有可能出现OutOfMemoryError的情况,使用Hotspot虚拟机简单的 ...
- uniapp开发小程序
uniapp开发小程序 uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS.Android.Web(响应式).以及各种小程序(微信/支付宝/百度/头条 ...
- win10,ubuntu时间不对问题
sudo apt-get install ntpdate sudo ntpdate time.windows.com # ntp2.aliyun.com 然后将时间更新到硬件上: sud ...
- POJ1390 Blocks (区间DP)
题目链接:POJ 1390.Blocks 题意: 有n个方块排成一列,每个方块有颜色即1到n的一个值,每次操作可以把一段相同颜色的方块拿走,长度为k,则获得的分数为 \(k\times k\),求可获 ...
- MySQL如何实现万亿级数据存储?
前言 业界对系统的高可用有着基本的要求,简单的说,这些要求可以总结为如下所示. 系统架构中不存在单点问题. 可以最大限度的保障服务的可用性. 一般情况下系统的高可用可以用几个9来评估.所谓的几个9就是 ...