老卫带你学---CDMA,CSMA,CSMA/CD,CSMA/CA

CDMA是码分多路复用,是多路复用技术的一种。

多路复用技术是为了提高物理层通信线路的利用率,因为单一信号往往小于传输介质的带宽。所以我们可以在一个传输介质上进行一个类似分区的操作,传递多个信号。

CSMA是载波监听多路访问协议。用于数据链路层的介质访问控制层。介质访问是指网络结点使用信道进行通信,因此协调各网络结点的行为、决定广播信道使用权的协议就称为介质访问控制协议。 载波监听多路访问协议就是一种介质访问控制协议。


CDMA

CDMA,码分多路复用。 既共享信道的频率,又共享时间,每一个用户可以在同样的时间使用同样的频率进行通信。

CSMA

CSMA,即载波监听多路访问协议。在采用CSMA协议的网络系统中,每个结点在发送数据之前,先监听信道是否为空闲状态,再根据监听的结果决定如何动作。

CSMA主要分为四种协议:

  • 1-坚持 CSMA:当一个结点想要发送数据时,先监听一下信道,如果忙则继续等待,直到信道空闲。如果空闲则立即发送数据。
  • 非坚持CSMA :当一个结点要发送数据,先监听信道,如果空闲则立即发送数据,否则放弃监听,随机等待一段时间后再监听。
  • p-坚持CSMA :当一个结点要发送数据,先监听信道,如果信道忙,则坚持监听到下一个时隙。如果信道空闲,则有p的概率发送数据,1-p的概率继续等待。

CSMA/CD

CSMA只在发送数据前检查是否冲突,而数据发送过程中是有可能冲突的,这时CSMA会继续将剩下的数据发送完,浪费时间、浪费带宽。

所以出现了带有冲突检测的CSMA协议,即CSMA/CD。是对CSMA的改进,网络结点在发送数据时,边发送边监听,一旦发现有冲突,立即停止发送

这时候大家都不发送了,会产生一个争用时隙, 冲突的各结点在停止发送后,等待一段时间再监听信道,发现空闲信道则发送数据。 而当很多结点彼此都冲突时,则会产生一系列的争用时隙,在经过几轮竞争后,有一个结点发送数据成功。有数据要发送的结点将开始新一轮竞争。

可以看出,其实CSMA/CD的工作周期就是传输周期、争用周期、空闲周期交替出现的一个过程。

CSMA/CA

CSMA/CA,带有冲突检测的载波多路访问协议,是对CSMA/CD协议的修改,把冲突检测改为冲突避免。

主要用于无线局域网。

为什么要冲突检测呢?

在无线局域网中,每个移动的站点发送的范围可以看成是一个以本身为圆心的圆。这有可能会出现两个问题:

  • 隐蔽站问题
    老卫带你学---CDMA,CSMA,CSMA/CD,CSMA/CA
    A站点和C站点都想发送数据给B站点,但是A和C相距较远,都认为到B的信道是空闲的,就都向B发送数据,两个方向来的数据发生碰撞,那就有问题了。
  • 暴露站问题
    老卫带你学---CDMA,CSMA,CSMA/CD,CSMA/CA
    ABCD四个站点,黄色和白色是B的传播范围,白色和蓝色是C的传播范围,B向A发送数据时,C想向D发送数据,这时候C发现信道是冲突的(因为B的传播信号是圆形范围的),于是选择了不向D发送数据,可是我们可以看到B向A发送数据并不影响C向D发送数据。这就造成了信道明明不忙,却也不能发送的问题。

综合上面两个问题,CSMA/CA协议,要求每个发送站点在发送帧数据之前,先监听信道,空闲则发送,但是发送完一帧后,必须等待一个短时间间隔,检查接受站点是否发回帧确认。已达到冲突检测的目的。