CSMA/CD的概念

  • 根据以太网的最初设计目标,计算机和其他数字设备是通过一条共享的物理线路连接起来的。这样被连接的计算机和数字设备必须采用一种半双工的方式来访问该物理线路,而且还必须有一种冲突检测和避免的机制,以避免多个设备在同一时刻抢占线路的情况,这种机制就是所谓的CSMA/CD(Carrier Sense Multiple Access/Collision Detection)。

可以从以下三点来理解CSMA/CD:

CS:载波侦听

  • 在发送数据之前进行侦听,以确保线路空闲,减少冲突的机会。

MA:多址访问

  • 每个站点发送的数据,可以同时被多个站点接收。

CD:冲突检测

  • 由于两个站点同时发送信号,信号叠加后,会使线路上电压的摆动值超过正常值一倍。据此可判断冲突的产生。

  • 边发送边检测,发现冲突就停止发送,然后延迟一个随机时间之后继续发送。

CSMA/CD的工作过程

CSMA/CD的工作过程如下:

  • 终端设备不停的检测共享线路的状态。

  • 如果线路空闲则发送数据。

  • 如果线路不空闲则一直等待。

  • 如果有另外一个设备同时发送数据,两个设备发送的数据必然产生冲突,导致线路上的信号不稳定。

  • 终端设备检测到这种不稳定之后,马上停止发送自己的数据。

  • 终端设备发送一连串干扰脉冲,然后等待一段时间之后再进行发送数据。

  • 发送干扰脉冲的目的是为了通知其他设备,特别是跟自己在同一个时刻发送数据的设备,线路上已经产生了冲突。

  • 检测到冲突后等待的时间是随机的。