【网络基础】CSMA/CD和CSMA/CA
计算机在网络上是如何发送数据而不影响其他计算机发送数据的?

特别是如果网络中有很多计算机同时发送和接收数据,不断会有相互碰撞的数据包。

但即使碰撞时有发生,特别是在较老的网络上,一项技术的发展不仅有助于避免碰撞,而且可以在碰撞发送时做出正确的反应,这种技术就是 CAMA/CD(载波监听多点接入/碰撞检测)
CAMA/CD 载波监听多点接入/碰撞检测
CAMA/CD(载波监听多点接入/碰撞检测)
全称:carrier sense multiple access with collsion detection
这是早期以太网(早期的半双工网络)使用的访问方式。
早期的半双工网络使用同轴的电缆和早期版本的双绞线

工作原理
CSMA/CD 的基本工作原理是
- 每台执行CSMA/CD的计算机首先检测 总线是否空闲,如果空闲,则可以发送自己的数据,因此可以避免碰撞
- 如果发生碰撞,计算机会税基等待一段时间,然后重试发送数据

实现流程
举例:
有四台计算机,共享一个公共传输介质,也就是这条电缆。
碰撞会导致数据丢失或者中断。该电缆必须经过管理,目的是使这些计算机不会在同一时间发送数据而导致碰撞。

监听
监听总线是否空闲。

发送
监听到总线上没有信号,就发送数据

监听
在发送数据的同时,还将监听碰撞。

碰撞
如果两台数据同时监听到总线空闲,同时决定发送数据,那么就会导致碰撞。



监听到碰撞发生,他们会立即停止发送数据,并在网络上传输干扰信号。
该干扰信号会通知网络上其他所有计算机发生了碰撞。
在计算机收到该干扰信号后,导致该碰撞的两台计算机将等待一段随机事件,然后发送数据。
(对于每台计算机,等待时间必须是随机的,这样冲突就不会再次发生)


应用
CSMA/CD 用在早期以太网中,现在没那么重要了。
它只适用于较早的半双工网络中。在这种网络中,数据在两个方向上通信,但不能双向同时通信。
如今,我们使用全双工网络,数据可以同时在两个方向上通信

CSMA/CA 载波监听多点接入/碰撞避免
CSMA/CA(carrier sense multiple access with collision avoidance)
载波监听多点接入/碰撞避免
这是无线网络中用于载波传输的接入方法。

因为就像有线网络一样,无线网络也需要避免碰撞。这就是他的工作原理。
当计算机想要通过无线网络发送数据时,它真的无法感知或听到网络上是否有出现碰撞。(因为没有电缆)所以它尽量避免碰撞。
实现流程(一)
在这个方法中,当计算机想要发送数据时,它首先会感测是否有其他传输发生。

如果它检测到任何其他传输,在再次检查通信之前,它将等待一小段时间,

当它再次检查通信道时,如果感测不到任何传输,它会随机等待一小段时间,然后发送数据,

一旦目标设备接收到数据,它将给发送方发回一个确认作为响应,通知发送方它已收到数据。

但是,如果发送红方没有收到来自目标设备的确认, 它会假设目标设备没有收到数据,它会重新开始这个过程。

实现流程(二)
CSMA/CA用来避免碰撞的另一种方法是,可选的RTS/CTS协议
RTS Require To Send 请求发送
CTS Clear To Send 允许(清除)发送
这是一种在无线网络上与CSMA/CA一起使用的可选协议。
该协议使得计算机可以发送RTS帧给无线接入点,用来请求发送数据的机会。

如果无线接入点同意该请求,接入点将暂时停止网络上的所有其他通信,


然后,它将给该计算机发回CTS帧,告诉计算机可以发送数据了。

对于该协议,无线接入点是无线网络上的流量控制器。
- 详情参考: RTS与CTS的含义
参考:

浙公网安备 33010602011771号