CSMA/CD协议

  1. 以太网采用无连接的工作方式,适配器对发送的数据帧不进行编号,也不要求对方发回确认。以太网提供的是尽最大努力交付,即不可靠的交付。

  2. 以太网发送数据使用曼彻斯特(Manchester)编码的信号。

CSMA/CD协议要点:

  1. “多点接入”,总线型网络。

  2. “载波监听”,检测信道。不管在发送前还是发送中,每个站都必须不停的检测信道。

  3. “碰撞检测”,即边发送边监听。当几个站同时在总线上发送数据时,总线上的信号电压变化幅度会增大(互相叠加)。

  4. 电磁波在1km电缆的传播时延约为5 μs。

  5. 在使用CSMA/CD协议时,一个站不可能同时进行发送和接收(但必须边发送边监听信道)。因此,使用CSMA/CD协议的以太网不可能进行全双工通信而只能进行双向交替通信(半双工通信)。

  6. 总线上的单程端到端时延记为τ;端到端的往返时间2τ称为争用期。

  7. 以太网使用截断二进制指数退避算法来确定碰撞后重传的时机。

    具体如下:

    (1)协议规定了基本退避时间为争用期2τ,具体的争用时间是51.2μs。也可使用比特作为争用期的单位。

    (2)从离散的整数集合[0,1,...,(2^k-1)]中随机取出一个数,记为r。重传应推后的时间就是r倍的争用期。参数k可用以下的公式计算:

    k=Min[重传次数,10]

    (3)当重传次数达16仍不成功时,

  8. 则丢弃该帧,并向高层报告。

  9. 以太网规定最短帧长不小于64字节,即512bit。因此,凡长度小于64字节的帧都是由于冲突而异常终止的无效帧。还规定 帧间最小间隔为9.6μs。

  10. 强化碰撞:当发送数据的站一旦发现发生了碰撞时,除了立即停止发送数据外,还要继续发送32比特或48比特的人为干扰信号。

CSMA/CD协议要点归纳如下:

(1)准备发送:适配器从网络层获得一个分组,加上以太网的首部和尾部,组成以太网帧,加入适配器的缓存中。但在发送之前,必须先检测信道。

(2)检测信道:若检测到信道忙,则应不停的检测,一直等待信道转为空闲。若检测到信道空闲,并在96比特时间内信道保持空闲(保证了帧间最小间隔),就发送这个帧。

(3)在发送过程中仍不断的检测信道,即网络适配器要边发送边监听。

①发送成功:在争用期内一直未检测到碰撞。这个帧肯定能发送成功。发送完毕后什么也不做,回到(1)。

②发送失败:在争用期内检测到碰撞。这时立即停止发送数据,并按规定发送人为干扰信号。适配器接着就执行指数退避算法,等待r倍512比特时间后,返回步骤(2),继续检测信道。若重传达16次仍不成功,则停止重传而向上报错。

以太网每发送完一帧,一定要把已发送的帧暂时保留一下。如果在争用期内检测出发生了碰撞,那么还要在推迟一段时间后再把这个暂时保留的帧重传一次。

猜你喜欢

转载自blog.csdn.net/weixin_42061048/article/details/80171232