CSMA/CD 载波监听多点接入/碰撞检测协议

“多点接入”表示许多计算机以多点接入的方式连接在一根总线上。

“载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。 “载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。

“碰撞检测”就是计算机边发送数据边检测信道上的信号电压大小。当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。所谓“碰撞”就是发生了冲突。因此“碰撞检测”也称为“冲突检测”。

检测到碰撞后:在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中恢复出有用的信息来。每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。

特点:

1、使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。

2、每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。

争用期:

最先发送数据帧的站,在发送数据帧后至多经过时间 2a (两倍的端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。

以太网的端到端往返时延 2a 称为争用期,或碰撞窗口。通常,取 51.2 us 为争用期的长度。对于 10 Mb/s 以太网,在争用期内可发送512 bit,即 64 字节。以太网在发送数据时,若前 64 字节未发生冲突,则后续的数据就不会发生冲突。

如果发生冲突,就一定是在发送的前 64 字节之内。由于一检测到冲突就立即中止发送,这时已经发送出去的数据一定小于 64 字节。以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。

“等待一段随机时间”的解释 —— 二进制指数类型退避算法:

发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。

确定基本退避时间,一般是取为争用期 2a。

定义参数 k ,
                      k = Min[重传次数, 10]

从整数集合[0,1,…, (2^k - 1)]中随机地取出一个数,记为 r。重传所需的时延就是 r 倍的基本退避时间。

当重传达 16 次仍不能成功时即丢弃该帧,并向高层报告。

你可能感兴趣的:(计算机网络)