ALOHA和时隙ALOHA的吞吐率都很低,其主要原因在于当其中一个站点发送数据的时候,其他站点也很可能发送数据,这样就很容易引起冲突。此时,如果其他的站点能够及时监听到信道是否已占用,就会减少冲突,提高信道的利用率。这就产生了载波监听多点接入(CSMA)技术。通俗地讲,ALOHA是“只说不听”,一个站点不管其他的站点有没有在“说”,只要想“说”就“说”,如果不止一个站点“说”,就会导致什么都听不到。CSMA是“先听后说”,当一个站点要“说”时,先听一听有没有其他站点在“说”。CSMA是ALOHA的进一步改进,减少了发送时间的随意性和盲目性,避免了不必要的冲突。它的基本思想是站点在发送数据前,先监听信道上有无其他站点正在发送信息,如果没有(信道空闲),则发送数据;如果有(信道忙),则暂不发送,等待一段时间后再发送。
图4-4a为站点分别在ALOHA和CSMA下的发送数据流程图。当站点有待发帧时,如果是ALOHA机制,站点就直接发送;如果是CSMA,就先监听。
图4-4 ALOHA和CSMA3种机制下的发送数据流程图
a)ALOHA和CSMA机制下站点发送数据流程图 b)CSMA3种监听策略(www.daowen.com)
CSMA有3种不同的载波监听策略:非坚持、1坚持和p坚持。图4-5b给出了CSMA机制下的这3种监听策略。
1)非坚持CSMA:站点如果监听到信道空闲,就立即发送数据;当站点监听到信道忙时就不再监听下去,等待一段随机长的时间后再重新开始监听。这种CSMA一定程度上减少了冲突的可能性,但在随机等待的时间里信道很可能就处于空闲状态,信道的利用率不是很高。
2)1坚持CSMA:当站点监听到信道忙时依然监听下去,直到信道变为空闲为止。一旦信道空闲就立即发送数据,如果出现冲突,则等待一段随机时间再监听。这种CSMA与非坚持CSMA相比,可以充分地利用信道,但每当信道一空闲,想要发送数据的站点都会发送数据,因此冲突的可能性也有所增加。
3)p坚持CSMA:当站点监听到信道忙时依然监听下去,直到信道变为空闲为止。当信道变为空闲,站点发送的数据的概率是p;延迟一个时间单位(最大传播时延)的概率为1-p,延迟之后再重新监听信道。这里的p(0<p≤1)值根据信道通信量的多少来设定。当p=1时,就是1坚持CSMA。不难看出,p坚持CSMA是非坚持CSMA和1坚持CSMA的折衷。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。