CSMA/CD解释与理解

1. CSMA/CD含义

CSMA/CD即载波监听多点接入/碰撞检测,此协议是使用在总线型网络中的,不同计算机是通过多点接入的方式连接在一起。协议的重点在于监听和碰撞检测。

2. 为什么要监听和碰撞检测

当初学习的时候,对于为什么要监听空闲和检测碰撞一直很疑惑,其实原因很简单,对于总线型网络来说,如果有多个主机同时发送信号,那么是很难从中分辨出信息的。举个栗子就是一堆不同频率相位的正弦混合在一起,让你从波形图中画出某条正弦曲线,是不是感觉非常的困难?为了避免在网络中遇到这个问题,所以采用载波监听和碰撞检测的方法。

3.载波监听用处

载波监听其实就是检测信道是不是为空,如果是,那么就可以发送自己的信息了。如果信道正忙,那么只能等到信道空闲,才能发送自己的信息。那么,是不是只要空闲发送自己的信息就永远不会出错呢?当然不是,我们联系生活中的一个栗子就能知道,当开会讨论的时候,如果一片安静,那么之后就可能会有两个或者多个人同时开始说话发言。信道上也是如此,甚至更加明显。因为载波监听只能是在自己的位置监听,而从别的主机发送过来的信号需要时间。这就不可避免的会出现主机B明明发送了信息,但是主机A没有发现,也发送一个信息出来,这样便会发生碰撞,导致数据信号失真。

4.碰撞检测用处

碰撞检测就是为了解决上面说的同时发送,或者说在很短时间(B发送信号尚未到达A)内同时发送引发的碰撞问题。碰撞检测即适配器在发送数据的过程中也要检测信道信号,若发现信号电压变化幅度增大超过某个阈值,则认为发生碰撞。

5.截断二进制指数退避

发送了碰撞怎么办?当然是停止发送,找个合适的时间再发送。那么怎么寻找一个合适的时间呢?那就要用到截断二进制指数退避,这个名字听起来很高端大气,其实很简单。首先我们明确一个概念,叫做争用期。什么叫争用期,就是在这个发送信息后的这段时间内可能发生碰撞,但是过了这个争用期,那么就一定不会发生碰撞。我们把争用期定义为两倍的端到端传播时延,如下图,δ足够小的时候,A要经过2τ的时间才能发现碰撞。

退避算法:
1.从[0,1,2, ...,(2^k-1)]中随机选一个数,记为r。重传应在r倍争用期之后进行。k的取值为Min[重传次数,10],即k小于10时为重传次数,最大不超过10 。
2.若重传超过16次还是不成功,则说明信道中数据过多,放弃重传,向高层报告。

6.最短帧长

那么,经历了上面的一系列操作,我们是不是可以保证信道中不会存在冲突了呢?答案是,不能。我们要注意到我们的碰撞检测和监听都是在本机的位置上进行的,不能够跑到别的信道位置上进行。那么这样就存在了一个问题,那就是要发送的信息过短,导致碰撞检测在发送该信息的时候没有检测到碰撞,但是在发送出去之后,这个信息与其他的信息碰撞。就好像你寄东西,寄出去的时候还是好好的,等送到别人手里变得一塌糊涂,这就是在寄的过程中发生了冲突。解决办法很简单,就是增加信息长度。以太网规定最短帧长为64字节,对于10Mbit/s以太网,发送64字节(512bit)数据需要51.2us,也就是上面的争用期。这样如果发生碰撞,那么一定能在自己这边检测出来,因为自己的信号和别人发送的信号混在一起,导致信号电压变化超过阈值。如果发送完了,那么自己是不知道自己发送的东西在路上有没有出现意外,这个就只有接收方才能知道,会把这个丢弃,但是自己不会再次发送,这就导致数据的丢失。并且由于发现冲突就会停止发送,所以可以认为,凡是长度小于64字节的帧都是由于冲突而停止发送无效帧。

7.强化碰撞

在发送数据的时候发生冲突,除了停止发送用户数据,还要继续发送32bit或者48bit的干扰信号,目的就是为了让所有用户都知道现在发生了冲突。

原文地址:https://www.cnblogs.com/FZfangzheng/p/10806732.html

时间: 2024-11-08 22:11:31

CSMA/CD解释与理解的相关文章

搞懂CSMA/CD,你就明白为什么以太网最小帧是64字节。

每出现一个新的东西,新的技术, 小编就经常反问自己的一句话就是:为什么会诞生它(CSMA/CD)呢?why? 每个东西的产生或发明都是有它的存在的原因或背景的. 我们先来看看最初的以太网的构思吧! 把相距有一定距离的一些电脑连接起来,实现计算机之间互相通信就可以了. 最初都是把这些计算机连接在一根网线上,这种方式实现起来简单又可靠. 总线的特点是:当一台计算机发送数据时,总线上的所有计算机都能监听到这个数据.这也是我们常说的:广播通信.但现实中,我们并不总是需要一对多通信.所以为了实现一对一通信

冲突域和CSMA/CD

★冲突域 最早的以太网是将许多的计算机连接到一根总线上,因为当初认为这种方法既简单又可靠,因为在那个时代普遍认为"有源器件不可靠,而无源的电缆线才是最可靠的"(现在听起来是不是觉得前辈们也有不靠谱的时候?只不过或许我们现在的许多技术迟早也会在后人看来觉得很是不成熟吧).然后这个总线上只要有一台计算机发送数据,总线的传输资源就会被占用.这样的一个会产生冲突的区域就是冲突域. ★CSMA/CD Carrier Sense Multiple Access with Collision Det

CSMA/CD

CSMA/CD(Carrier Sense Multiple Access with Collision Detection)即带冲突检测的载波监听多路访问技术.在传统的共享以太网中,所有的节点共享传输介质.如何保证传输介质有序.高效地为许多节点提供传输服务,就是以太网的介质访问控制协议要解决的问题. 1基础篇 CSMA/CD是一种争用型的介质访问控制协议.它起源于美国夏威夷大学开发的ALOHA网所采用的争用型协议,并进行了改进,使之具有比ALOHA协议更高的介质利用率.主要应用于现场总线Eth

2016.6.20 计算机网络复习要点第三章之CSMA/CD协议

1.最早的以太网是将许多计算机都连接到一根总线上: (1)总线的特点是:当一台计算机发送数据时,总线上的所有计算机都检测到这个数据,这种就是广播通信方式: (2)为了实现在总线上的一对一通信,可以使每一台计算机的适配器拥有一个与其他适配器都不同的地址,当数据帧中的目的地址与适配器ROM中存放的硬件地址一致时,该适配器才能接收到这个数据帧: (3)人们通常把局域网上的计算机称为“主机”,“工作站”,“站点”或“站” 2.以太网为了通信方便采取的措施: (1)采用较为灵活的无连接的工作方式,即不必先

计算机网络——CSMA/CD协议

局域网的数据链路层 局域网的特点是网络为一个单位所拥有,且地理和站点数目均有限 局域网的优点: (1)具有广播功能,从一个站点可以很方便地访问全网,局域网上的主机可共享连接在局域网上的各种硬件和软件资源 (2)便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变 (3)提高了系统的可靠性.可用性和生存性. 共享信道要着重考虑的一个问题就是如何使众多用户能够合理而方便地共享通信媒体资源. (1)静态划分信道,用户只要分配到了信道就不会和其他用户发生冲突.但代价较高. (2)动态接入控制,又称为

▶链路层第三弹◀ 两种信道下的数据链路层【下】广播通信CSMA/CD

两种信道情况下的数据链路层     之 广播信道的数据链路层---CSMA/CD(载波监听多路访问/冲突检测) l  局域网概念 在局域网中用到的就是广播通信,所以以局域网的通信来讲解广播信道的数据链路层特点.在学习广播通信 特点之前,先来了解一下局域网. n 局域网的分类 所有的PC机接到中间设备核心上.但是如果核心设备一点坏掉了,则所有PC机都将受到影响.虽然核心坏掉会出现问题,但是一般核 心不会坏,坏的一般是线路,星形网中线路的毁坏并不会影响其他PC的工作,所以星形网在局域网中用的比较多.

计算机网络-CSMA/CD

假定1km长的CSMA/CD网络的传输速率为1Gbit/s.设信号在网络上的传播速率为200000km/s,则能够使用此协议的最短帧长是? 答案:2×104bit/s 解析:C=2×105km/s,即每千米单程传播时间为1/2×105=5×10-6s(5μs),所以来回路程传播时间为10μs,CSMA/CD的功能之一是冲突检测,其耗时最长为端到端传播时延的两倍.所以发送帧的最短耗时要大于10μs,即 10μs×1Gbit/s=10-6×1010=104bit=1250byte. 说白了这道题就是

计算机网络【2】—— CSMA/CD协议

参考文献: https://blog.csdn.net/loveCC_orange/article/details/79177129 一.认识以太网 最早的以太网是将许多计算机都连接到一根总线上. 使用总线如何通信呢? 当一台计算机发送数据的时候,总线上的所有计算机都能检测到这个数据.这就是广播通信方式.当我们需要在总线上进行一对一通信的时候,就需要使每一台计算机的网卡拥有一个与其他网卡都不同的地址.这个时候,我们在发送数据帧时,就需要表明数据帧接收站的地址.只有网卡地址与其相同时,才接受数据帧

CSMA/CD协议

广播信道可以一对多通局域网的数据链路层 局域网的特点:网络为一个单位所拥有,且地理范围和站点数目均有限. 如何使局域网上的众多主机能够合理而方便的共享通信媒体资源?在技术上有两种方法: ? 静态划分信道:在物理层进行频分复用.时分复用.码分复用,这种方法代价较高,不适合局域网使用. ? 动态媒体接入控制,又称为多点接入,信道并非在用户通信时固定分配.这种方法又分为两类 ? 随机接入:所有连接在局域网上的用户可以随机的发送信息,但是如果有两个用户在同时发送信息,那么就会产生碰撞,因此必须要有解决碰