载波监听多路访问协议CSMA协议
- CS:载波监听/帧听,每一个站再发数据之前都要检测链路上是否有其他站在发送数据。(检测电压摆动值,当几个站同时发送数据时,总线上的电压摆动值就会增大。)
- MA:多点接入,表示许多计算机以多点接入的方式链接在一根总线上。
- CSMA协议思想:发送帧之前,监听信道。
- 信道空闲:发送完整的帧(1-坚持CSMA、非坚持CSMA、p-坚持MA)。
- 信道忙:推迟发送。
- 坚持:指对于监听的信道忙之后的坚持。
1-坚持CSMA
- 1-坚持CSMA的思想:一个主机要发送消息,则先监听信道。如果信道空闲,则直接发送消息;如果信道忙,则一直监听等待信道空闲;如果有冲突(一段时间内未收到确认帧ACK),则等待一个随机长的时间再监听,重复上述过程
- 1-坚持CSMA的优点:信道空闲,站点立刻发送数据,信道利用率高。
- 1-坚持CSMA的缺点:如果多个站点发送数据,则冲突不可避免。
非坚持CSMA
- 非坚持CSMA的思想:一个主机要发送消息,则先监听信道。如果信道空闲,则直接发送消息;如果信道忙,则等待一个随机时间后在监听。
- 非坚持CSMA的优点:采用随机的重发延迟时间可以减少冲突发生的可能性。
-
- 非坚持CSMA的缺点:可能存在大家都在等待过程中,使得媒体可能处于空闲状态,媒体使用率低。
p-坚持CSMA协议
- p-坚持是指对于监听信道的空闲的处理。
- p-坚持CSMA协议的思想:一个主机要发送消息,则先监听信道。如果信道空闲,则以p的概率直接发送消息,不必等待。以1~p的概率等待下一个时间槽再出传输;如果信道忙,则持续监听直到信道空闲再以p概率发送;若冲突,则等到写一个时间槽开始监听并重复上述过程。
- p-坚持CSMA协议的优点:即能像非坚持算法那样减少冲突,又能想1-坚持算法那样减少信道空闲时间。
- p-坚持CSMA协议的缺点:发生冲突之后还是要坚持把数据帧发送完,这样造成了冲突。