CSMA/CD协议

全称:载波监听多点接入/碰撞检测CSMA/CD(carrier sense multiple access with collision detection)
CS:载波侦听/监听,每一个站在发送数据之前要检测一下总线是否有其他计算机在发送数据。
MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。(总线型网络
CD:碰撞检测(冲突检测),“边发送边监听”,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。(半双工网络
那么,先听后发为什么还会冲突?
因为电磁波在总线上总是以有限的速率传播的。

传播时延对载波监听的影响

确定碰撞后的重传时机

截断二进制指数规避算法
1.确定基本退避(推迟)时间为争用期2r。
2.定义参数k,它等于重传次数,但k不超过10,即k=min[重传次数,10]。当重传次数不超过10时,k等于重传次数;当重传次数大于10时,k就不再增大而一直等于10。
3.从离散的整数集合[0, 1, 2的k次方 - 1]中随机取出一个数t,重传所需要退避的时间就是t倍的基本退避时间,即2tr。
4.当重传达16次仍不能成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错。
例:
注:若连续多次发生冲突,就表明可能有较多的站参与争用信道。使用此算法可使重传需要推迟的平均时间随重传次数的增大而增大,因而减小发生碰撞的概率,有利于整个系统的稳定。

最小帧长问题

A站发了一个很短的帧,但发生了碰撞,不过帧在发送完毕后才检测到发生碰撞,没法停止发送,因为发完了。。

CSMA/CA协议

全称:载波监听多点接入/碰撞避免CSMA/CA(carrier sense multiple access with collision avoidance)

工作原理

发送数据前,先检测信道是否空闲。
空闲则发出RTS(request to send),RTS包括发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息;信道忙则等待。
接收端收到RTS后,将响应CTS(clear to send)。
发送端收到CTS后,开始发送数据帧(同时预约信道:发送方告知其他站点自己要传多久数据)。
接收端收到数据帧后,将用CRC来检验数据是否正确,正确响应ACK帧。
发送方收到ACK就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间)。

对比

CSMACD协议与CSMACA协议相关推荐

  1. 计算机网络——CSMA-CA协议

    CSMA-CD协议是对碰撞的检测,CSMA-CA协议是对碰撞的避免 CSMA-CD和CSMA-CA应用场景不一样,CSMA-CA协议主要用于无线局域网,CSMA-CD应用与总线式以太网. 无线局域网用 ...

  2. 【计算机网络复习 数据链路层】3.5.5 CSMA-CA协议

    CSMA-CA协议 CSMA/CA协议 一.CSMA/CA协议 二.CSMA/CD 与 CSMA/CA CSMA/CA协议 一.CSMA/CA协议 载波监听多点接入/碰撞避免 CSMA/CA(carr ...

  3. 联网常见通信协议与通讯协议梳理- 通讯协议

    1  "通信"与"通讯"傻傻分得清 传统意义上的"通讯"主要指电话.电报.电传.通讯的"讯"指消息(Message),媒 ...

  4. IOT(34 )---联网常见通信协议与通讯协议梳理- 通讯协议

    联网常见通信协议与通讯协议梳理[上]- 通讯协议 1  "通信"与"通讯"傻傻分得清 传统意义上的"通讯"主要指电话.电报.电传.通讯的&q ...

  5. 数据库和服务器什么协议,数据库服务器协议

    数据库服务器协议 内容精选 换一换 本章节适用于MRS 3.x之前版本.Loader支持以下多种连接,每种连接的配置介绍可根据本章节内容了解.obs-connectorgeneric-jdbc-con ...

  6. Objective-C非正式协议与正式协议

    为什么80%的码农都做不了架构师?>>>    类别与类扩展的区别: ①类别中只能增加方法: ②是的,你没看错,类扩展不仅可以增加方法,还可以增加实例变量(或者合成属性),只是该实例 ...

  7. RIP协议与OSPF协议与BGP协议

    RIP协议: https://www.bilibili.com/video/BV19E411D78Q?p=54 RIP是一-种分布式的基于距离向量的路由选择协议,是因特网的协议标准,最大优点是简单. ...

  8. 计算机网络协议教案,计算机网络实验教案(6)网络协议分析-IP协议3.pdf

    计算机网络实验教案(6)网络协议分析-IP协议3.pdf (2页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 <计算机网络实验> ...

  9. 基于阿里云用C/C++做了一个http协议与TCP协议的web聊天室的服务器——《干饭聊天室》

    基于阿里云用C/C++做了一个http协议与TCP协议的web聊天室的服务器--<干饭聊天室> 在这里首先感谢前端小伙伴飞鸟 前端技术请看一款基于React.C++,使用TCP/HTTP协 ...

最新文章

  1. linux启动spark命令,在linux上安装spark
  2. C#SetWindowPos窗口置顶
  3. 【Python】全面掌握Python基础,这一篇就够了,建议收藏
  4. 如何正确地把服务器端返回的文件二进制流写入到本地保存成文件
  5. git rm -r --cached_【Git】工作中99%能用到的git命令
  6. kmeans聚类分析结果怎么看_聚类分析终稿1(SPSSAU)
  7. golang游戏服务器框架_教你从头写游戏服务器框架
  8. 是逻辑运算符 java_跟我学java编程—Java逻辑运算符
  9. 关于MFC对话框程序如何接收命令行传递过来的参数问题
  10. 如何操作别人计算机,如何远程控制别人的电脑【图解】
  11. 360兼容模式页面错位_如何处理网站兼容性
  12. css系统自带字体_CSS系统字体
  13. 量子统计中的涨落和时间关联函数的概念(谐振子例子)
  14. 测试睡眠质量软件,2018测睡眠质量的app排行榜:推荐10款有趣又有效的睡眠APP
  15. SOSO发布国内首家高清街景地图 引领地图换代
  16. 剑指Offer——中国银行面试知识储备+面试内容(Offer-2已收割)
  17. 《富爸爸穷爸爸》书摘-为什么要教授财务知识
  18. 华东理工大学计算机图形答案,华东理工大学信息科学与工程学院硕士研究生导师张静...
  19. MongoDB 之滴滴、摩拜都在用的索引-educoder上面的题目以及笔记
  20. SAP国际商品编码(EAN码)允许前导0增强

热门文章

  1. C语言实现wav文件的读写
  2. c# WPF中System.Windows.Interactivity的使用
  3. Spark环境搭建Standalone模式
  4. 【报错解决】为Blender构建Python模块
  5. linux下的go富集分析,GO富集分析示例【华为云技术分享】
  6. Assembly 调用的目标发生了异常
  7. Vdbench:解决运行时出现的常见问题记录1
  8. 问题解决:inittramfs unpacking failed:Decoding failed
  9. 区块链中nonce与难度系数
  10. HTTP和HTTPS协议,看一篇就够了