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的更多相关文章

  1. .Net Core自动化部署系列(三):使用GitLab CI/CD 自动部署Api到Docker

    之前写过使用Jenkins实现自动化部署,最近正好没事研究了下GitLab的自动化部署,顺便记录一下. 使用GitLab部署我们需要准备两件事,第一个起码你得有个GitLab,自己搭建或者使用官方的都 ...

  2. [计算机网络-数据链路层] CSMA、CSMA/CA、CSMA/CD详解

    1.CSMA(载波侦听多路访问协议) CSMA 当其他节点检测到信道被占用时不发送数据.但是当数据发送完后其他节点同时检测到信道为空闲,之后又在同一时刻发送数据,可能再次产生冲突. 2.CSMA/CD ...

  3. HTTP协议详解及http1.0与http1.1http2.0的区别

    HTTP协议介绍 http(超文本传输协议)是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.特点: (1)支持客户/服务器模式. HTTP是一个客户端和服务器端请 ...

  4. HTTP1.0、HTTP1.1 和 HTTP2.0 的区别

    一.HTTP的历史 早在 HTTP 建立之初,主要就是为了将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器.也是说对于前端来说,我们所写的HTML页面将要放在我们的 web 服务器上 ...

  5. JAVA GET 和 POST 的区别

    GET 和 POST 的区别 GET请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:/test/demo_form.asp?name1=value1&name2=val ...

  6. 密钥密码体系CA,CSC,CV

    密钥密码体系CA,CD,CSC,CV 片内操作系统 (cos) 密码学(Cryptography) 非接触式智能卡Contactless Smart Card, CSC 密钥名词 名词 英文说明 中文 ...

  7. DOS批处理中%cd%与%~dp0的区别详解

    转载:https://www.jb51.net/article/105325.htm DOS批处理中%cd%与%~dp0的区别详解     Windows下批处理中%cd%和%~dp0都能用来表示当前 ...

  8. 介质访问控制子层-Medium Access Control Sublayer:多路访问协议、以太网、无线局域网

    第四章 介质访问控制子层-Medium Access Control Sub-layer 4.1介质访问控制子层概述 MAC子层不属于之前提到的OSI或TCP/IP架构的任何一层,这也是为什么这一层被 ...

  9. 无线网络中的MAC协议(1)

    前文我们对传统的有线网络的MAC协议进行了分析,接下来我们在对无线网络的MAC也进行一个详细的介绍.那么无线网络中的MAC工作方式是如何的呢?无线局域网(WLAN)中MAC所对应的标准为IEEE 80 ...

随机推荐

  1. W3C中不同标准的含义

    学习CSS/HTML的过程中,当出现释义冲突时,W3C(万维网联盟)官网所陈列的技术标准是最核心的判断参考.但是新手在查阅W3C标准索引页面时,会发现同一个属性或者模型会出现多个不同的阶段规范展示结果 ...

  2. 在linux下,为什么 i386 ELF可执行文件默认从地址(.text)0x08048000开始分配。 而 x64是0x400000

  3. Spring源码之注解的原理

    https://blog.csdn.net/qq_28802119/article/details/83573950 https://www.zhihu.com/question/318439660/ ...

  4. 查看ceph集群被哪些客户端连接

    前言 我们在使用集群的时候,一般来说比较关注的是后台的集群的状态,但是在做一些更人性化的管理功能的时候,就需要考虑到更多的细节 本篇就是其中的一个点,查询ceph被哪些客户端连接了 实践 从接口上来说 ...

  5. SQL Server 数据库开启日志CDC记录,导致SQL Server 数据库日志异常增大

    这几天单位的SQL Server业务数据生产库出现数据库日志增长迅速,导致最终数据无法写入数据库,业务系统提示"数据库事务日志已满",经过多方咨询和请教,终于将日志异常的数据库处理 ...

  6. matlab 数组操作作业

    写出下列语句的计算结果及作用 1.A= [2 5 7 3 1 3 4 2];    创建二维数组并赋值 2.[rows, cols] = size(A);    ​把A的尺寸赋值给数组,rows为行, ...

  7. 04、MyBatis DynamicSQL(Mybatis动态SQL)

    1.动态SQL简介 动态 SQL是MyBatis强大特性之一. 动态 SQL 元素和使用 JSTL 或其他类似基于 XML 的文本处理器相似. MyBatis 采用功能强大的基于 OGNL 的表达式来 ...

  8. js,昨天的日期

    var mydate = new Date(); var yester = mydate-24*60*60*1000; var yesterday = new Date(); yesterday.se ...

  9. webug第八关:CSRF

    第八关:CSRF 用tom用户登陆,进入更改密码界面 用burp构造csrf页面 将构造好的页面放在服务器上,然后点击, admin的密码被更改

  10. 被 C# 的 ThreadStatic 标记的静态变量,都存放在哪里了?

    一:背景 1. 讲故事 前几天公号里有一位朋友留言说,你windbg玩的溜,能帮我分析下被 ThreadStatic 修饰的变量到底存放在哪里吗?能不能帮我挖出来,其实这个问题问的挺深的,玩高级语言的 ...