载波监听

载波监听

中文名 载波监听
发送语言 阻塞报文(Jam)
好处 可以提高总线的利用率
目录导航

发展背景

载波监听图片载波监听图片(4)  在总线和环形拓扑中,网络上的设备必须共享传输线路,为解决同一时间几个设备同时争用传输介质,需要有某种访问控制方式,以便协调各设备访问介质的顺序,在设备之间交换数据。 在总线系统中,每个站都能独立地决定帧的发送,若两个或多个站同时发送,就产生冲突,同时发送的所有帧都会出错。因此一个用户发送信息成功与否在很大程度上取决于总线是否空闲的算法以及两个不同节点同时发送的分组发生冲突时所使用和中断传输的方法,总线争用技术分为载波监听多路访问(CSMA)和具有冲突检测的载波监听多路访问(CSMA/CD)这两大类。载波监听多路访问(CSMA)的技术,也叫做先听后说(LBT),希望传输的站首先对信道进行监听以确定是否有别的站在传输。如果信道空闲,该站可以传输,否则,该站将避让一段时间后再尝试。需要有一种退避算法来决定退让时间。常用的有三种算法。1、非坚持CSMA;2、1-坚持CSMA;3、P-坚持CSMA。

  通信中对介质的访问可以是随机的,即各工作站可以在任何时刻、任意地访问介质;也可以是受控的,即各工作站可以用一定的算法调整各站访问介质的顺序和时间。在随机访问方式中,常用的争用总线技术为CSMA/CD.

  这种控制方式对任何工作站都没有预约发送时间,工作站的发送是随机的,必须在网络上争用传输介质,故称之为争用技术。若同一时刻有多个工作站向传输线路发送信息,则这些信息会在传输线上互相混淆而遭破坏,称为“冲突”。为尽量避免由于竞争引起的冲突,每个工作站在发送信息之前,都要监听传输线上是否有信息在发送,这就是“载波监听”。

  CSMA是从一种叫ALOHA的控制协议演变而来的,之所以要采用这种控制协议,是因为当许多用户共享一个容量为C b/s的信道时,如果两个或更多的用户同时都在共享信道上发送信息,这样就会产生冲突。习惯上把这种冲突叫做碰撞。碰撞的产生会导致冲突的用户发送都告失败。

基本定义

  载波监听多路访问/冲突检测(CSMA/CD):在CSMA中,由于通道的传播延迟,当两个站点监听到总线上没有存在信号而发送帧时,仍会发生冲突。由于CSMA算法没有冲突检测功能,即使冲突己发生,仍然要将已破坏的帧发送完,使总线的利用率降低。 一种CSMA的改进方案是使站点在传输时间继续监听媒体,一旦

载波监听图片载波监听图片(3)检测到冲突,就立即停止发送,并向总线上发一串短的阻塞报文(Jam),通知总线上各站冲突己发生,这样通道容量不致因白白传送己受损的帧而浪费,可以提高总线的利用率,这就称作载波监听多路访问/冲突检测协议,简写为CSMA/CD,这种协议己广泛应用于以太网和IEEE802.3标准中。

  此时,浪费掉的带宽就减少为用检测冲突所花费的时间。那么,怎么来估算所需的冲突检测时间呢?对于基带总线而言,此时用于检测一个冲突的时间等于任意两个站之间最大的传播延迟的两倍,所以对于基带CSMA/CD,要求分组长度应该至少两倍于传播延迟,否则在检测出冲突之前传输已经完成,但实际上分组被冲突所破坏。

发展应用

  CSMA/CD是用争用的方法来决定对介质的访问权。而这种争用协议一般用于总线网。载波监听多路访问(CSMA) 发展情况及存在问题:

  CSMA/CD总线网络中的一个关键技术问题是冲突控制或冲突分解问题,即由于发送冲突而遭碰撞的报文要经过一段随机延时后重发,典型的冲突控制算法,亦即后退算法有以下五种:二进制指数后退算法BEB、多项式后退算法PB、线性增值后退算法LIB、固定平均后退算法FMB、顺序后退算法OB.

具有冲突检测的载波监听多路访问CSMA/CD

检测协议

  在CSMA中,由于信道传播时延的存在,即使总线上两个站点没有监听到载波信号而发送帧时,仍可能会发生冲突。由于CSMA算法没有冲突检测功能,即使冲突已发和,仍然将已破坏的帧发送完,使总线的利用率降低。

载波监听图片载波监听图片(4)  一种CSMA的改进方案是使发送站点传输过程中仍继续监听媒体,以检测是否存在冲突。假如发生冲突,信道上可以检测到超过发送站点本身发送的载波信号的幅度,由此判定出冲突的存在。一于检测到冲突,就立即停止发送,并向总线上发一串阻塞信号,用以通知总线上其它各有关站点。这样,通道容量就不致因白白传送已受损的帧而浪费,可以提高总线的利用率。这种方案称做载波监听多路访问/冲突检测协议,简写为CSMA/CD,这种协议已广泛应用于局域网中。

  CSMA/CD的代价是用于检测冲突所花费的时间。对于基带总线而言,最坏情况下用于检测一个冲突的时间等于任意两个站之间传播时延的两倍。从一个站点开始发送数据到另一个站点开始接收数据,也即载波信号从一端传播到另一端所需的时间,称为信号传播时延。信号传播时延(μs)=两站点的距离(m)/信号传播速度(200m/μs)。假定A、B两个站点位于总线两端,两站点之间的最大传播时延为tp。当A站点发送数据后,经过接近于最大传播时延tp时,B站点正好也发送数据,此时冲突便发生。发生冲突后,B 站点立即可检测到该冲突,而A站点需再经过一份最大传播时延tp后,才能检测出冲突。也即最坏情况下,对于基带CSMA/CD来说,检测出一个冲突的时间等于任意两个站之间最大传播时延的两倍(2tp)。

  数据帧从一个站点开始发送,到该数据帧发送完毕所需的时间和为数据传输时延;同理,数据传输时延也表示一个接收站点开始接收数据帧,到该数据帧接收完毕所需的时间。数据传输时延(s)=数据帧长度(bit)/数据传输速率(bps)。若不考虑中继器引入的延迟,数据帧从一个站点开始发送,到该数据帧被另一个站点全部接收所需的总时间,等于数据传输时延与信号传播时延之和。

  由上述分析可知,为了确保发送数据站点在传输时能检测到可能存在的冲突,数据帧的传输时延至少要两倍于传播时延。换句话说,要求分组的长度不短于某个值,否则在检测出冲突之前传输已经结束,但实际上分组已被冲突所破坏。

  由于单向传输的原因,对于宽带总线而言,冲突检测时间等于任意两个站之间最大传播时延的4倍。所以,

  对于宽带CSMA/CD来说,要求数据帧的传输时延至少4倍于传播时延。

  在CSMA/CD算法中,一旦检测到冲突并发完阻塞信号后,为了降低再次冲突的概率,需要等待一个随机时间,然后再使用CSMA方法试图传输。为了保证这种退避操作维持稳定采用了一种称为二进制指数退避和算法,其规则如下:(1)对每个数据帧,当第一次发生冲突时,设置一个参量L=2;(2)退避间隔取1到L个时间片中的一个随机数,1个小时片等于两站之间的最大传播时延的两倍;(3)当数据帧再次发生冲突,由将参量L加倍;(4)设置一个最大重传次数,超过该次数,则不再重传,并报告出错。

  二进制指数退避算法是按后进先出LIFO(List In First Out)的次序控制的,即未发生冲突或很少发生冲突的数据帧,具有优先发送的概率;而发生过多次冲突的数据帧,发送成功的概率就更少。

  IEEE 802.3就是采用二进制指数退避和1-坚持算法的CSMA/CD媒体访问控制方法。这种方法在低负荷时,如媒体空闲时,要发送数据帧的站点能立即发送;在重负荷时,仍能保证系统的稳定性。由于在媒体上传播的信号会衰减,为确保能检测出冲突信号,CSMA/CD总线网限制一段无分支电缆的最大长度为500米。

问题解答

载波监听无线载波监听无线(1)冲突是怎样发生的?

–  t--端到端传播时延,2t--往返时延

–  由于信号在信道上以有限速度传输,所以采用载波监听并不能完全消除冲突。

–  图4-5画的是局域网上的两个站A和B。这两个站相距1km,传播速度=2/3*C=200m/us,因此1km电缆需要 t=5us 的传播时延。

–  A向B发出的信息,在5us后才能传送到B。B若在A发送的信息到达B之前发送自己的帧(因为这时载波监听检测不到A所发送的信息),则发生冲突。

–  冲突的结果是两个帧都变得无用。A可以检测到自己发送的帧已经和其他站发送的帧产生了冲突。

(2)如何检测到冲突?

CSMA/CD采用曼彻斯特编码(每比特中间有跳变,先高后低代表“1”)

•    比较接收到的信号的电压(因为距离会造成信号衰减,因此使用不多)。

•    电压的过零点是在每一比特的正中央。当发生冲突时,叠加的过零点将改变位置。

•    发送帧时也同时进行接收,再比较

(3)检测到冲突后怎么办?

•    强化冲突:发送帧的站一旦发现冲突,立即停止发送数据,还要再继续发送若干比特的人为干扰信号。

•    Why? 原因:设冲突点离A很远,离B很近(例如40米,即B发送2bit后冲突,4bit后停发),4bit的叠加数据远距离传到A,可能被A忽略。A继续发送,浪费时间。

•    强化冲突的违规码长度介于32-64比特之间,不易被忽略。

(4)争用期-----如何选择重发的时间?

–  截断二进制指数类型(truncated binary exponential type)的退避算法,决定重传帧所需的时延Delay

•    先确定基本退避时间,取为2t(51.2微秒,2.5公里,中间允许经过4个中继器)

•    K=Min[当前重传次数,10](最多16次重传)

•    从离散的整数集合[0,1,…,2k-1]中随机地取出一个数,记为r

•    Delay = r * 2t

•    因此第一次重发在0,1之间取一个值,第二次重发在0,1,2,3之间取一个,第三次是0到7,…

相关百科
返回顶部
产品求购 求购