CSMA/CD
对总线型、星形和树形拓扑访问控制协议是CSMA/CD(Carrier Multiple Access/Collision Detection,载波侦听多路访问/冲突检测) 。
CSMA基本原理:发送数据之前,先监听信道上是否有人在发送。若有,说明信道正忙,否则说明信道是空闲的,然后根据预定的策略决定
(1)若信道空闲,是否立即发送。
(2)若信道忙,是否继续监听
如果连续发生16次故障后,认为网络繁忙或故障,不再尝试发送。
CSMA/CD三种监听算法
(1)非坚持型监听算法,后退随机时间
由于随机时延后退,从而减少了冲突的概率。问题是因为后退而使信道限制一段时间,这使信道的利用率降低,而且增加了发送延迟
(2)1-坚持型监听算法;继续监听,不等待
有利于抢占信道,减少信道空闲时间。但是,多个站同时都在监听信道时必然会发生冲突,冲突概率和利用率都搞
(3)p_坚持型监听算法
若信道空闲,以概率P发送,以概率(1-P)延迟一个时间单位,P大小可调整
例1:以太网介质访问控制策略可以采用不同的监听算法,其中一种是:“一旦介质空闲就发送数据,假如介质忙,继续监听,直到介质空闲后立即发送数据”这种算法称为(1-坚持型)监听算法,该算法的主要特点是(介质利用率和冲突概率都高)
冲突检测原理
载波监听只能减小冲突的概率,不能完全避免冲突。当两个帧发生冲突后,若继续发送将会浪费网络带宽。为了改进带宽利用率,发送站应采取边发边听的冲突检测方法,即:
(1)发送期间同时接收,并把接收的数据与站中存储的数据进行比较。
(2)若比较结果一致,说明没有冲突,重复(1)
(3)若比较结果不一致,说明发生了冲突,立即停止发送,并发送一个简短的干扰信号(Jamming)使所有站都停止发送。
(4)发生Jamming信号后,等待一段随机长的时间,重新监听再试着发送