ALOHA的目的是实现每一个节点自由的进行数据发送,当然冲突就是不可避免的。一旦产生冲突,冲突的节点均等待一个随机时间后,再进行自由地发送数据。
对ALOHA进行改进,从而形成时隙ALOHA协议,其方法是将时间分成若干个小的时间片,每一个用户发送数据必须等到下一个时间片。这样在一定程度上减少了冲突的可能性。
如果假设每一个节点对信道的利用均服从泊松分布,则可得协议吞吐量S与负载G之间的关系:
纯ALOHA协议: 。
时隙ALOHA协议: 。
由公式可知在同等的情况下,同样的负载下,时隙ALOHA协议的吞吐量要比纯ALOHA协议的吞吐量大,即时隙ALOHA在一定程度上比纯ALOHA协议性能要好。
(2)CSMA协议
CSMA是在ALOHA协议的基础上提出的,它是对ALOHA的改进。它的工作原理简单的说就是“先听后说”,即每个节点在发送数据前,先监听信道,只有在监听到信道空闲时,节点才进行数据的发送。如果监听到信道忙碌,退避一个随机时间再尝试发送数据。
根据监听策略的不同,CSMA协议可分为三种[4]:
非持续CSMA 只要监听到信道处于忙碌中就不再监听下去,延迟一个随机时间后再进行信道监听,直到监听到信道空闲即进行数据发送。
1-持续CSMA 监听到信道忙碌后继续监听下去,直到监听到信道空闲。一旦监听到信道空闲就发送数据,如果有冲突发生,则等待一随机时间再进行信道监听。
p-持续CSMA 信道监听一直到监听到信道空闲为止。监听到信道空闲时以概率p发送数据,以概率1-p延迟一随机时间再次监听信道。
图3 传播时延对载波监听的影响
如图3在A节点监听到信道空闲时,就开始向B节点发送数据。如果在数据未到达B节点的过程时间τ内,B节点也监听到信道空闲,随机其向A节点发送数据,则在信道中发生了碰撞。在一定的时间内,A、B节点均知道发生碰撞,两点均等待一个随机时间后再尝试发送数据。
非持续CSMA可以减少用户发送数据的盲目性和碰撞的可能性,但其对信道的利用率却不是很高。持续CSMA在一定程度上提高了对信道的利用率,但其发生碰撞的可能性相对高了一些。而p-持续CSMA相对于它们不仅减少了碰撞的可能性,同时也保证了比较高的信道利用率。
(3)CSMA/CD协议
CSMA/CD也是ALOHA协议的改进型,同时也是对CSMA协议的改进。其工作思想简单的说就是“边听边说”。节点在发送数据前先监听信道,监听到信道忙碌时,等待一个随机时间后再次监听信道。如果监听到信道空闲即发送数据,同时也进行信道中冲突的检测。如果监听到冲突的发生,停止发送数据,同时发送一个干扰信号,告诉其他节点冲突的发生。然后等待一个随机时间再次尝试发送数据。
冲突检测的思想是节点在发送数据的同时也进行数据的接收,然后比较发送的数据和接收的数据,通过比较信号的大小或者是判断过零点位置,又或者是逐个比特的比较来判断是否发生冲突。
(4)CSMA/CA协议
CSMA/CA协议是无线局域网802.11的基本协议。它是带碰撞避免的CSMA协议,它的要求是在信道由忙碌转到空闲状态时,每一个站点都要执行退避算法。这样就减少了发生碰撞的概率。
3. OPNET建模机制
3.1 网络仿真技术介绍
网络仿真技术就是以相似原理、数学模型、统计分析及仿真应用领域的相关专业知识为基础,以计算机系统和仿真器为工具,利用网络模型对已有的或设想的系统进行研究、分析、实验和运行的一门多学科的综合性技术。
网络仿真软件主要有MEL3开发的OPNET,Cadence Design System公司的BO-Nes,CACI公司开发的COM-NET Ⅲ,以及NS2和SSFNET。其中OPNET和NS2应用最为广泛[5]。而OPNET作为商用软件,以其更加完善的功能从而得到更为广泛的应用。 基于OPNET的CSMACD协议研究与仿真(4):http://www.youerw.com/tongxin/lunwen_330.html