2. Ad hoc网络暴露结点问题分析
2.1 Ad hoc网络的网络结构及其特点
Ad hoc网络是一种特殊的网络组织形式,是一种为特殊、专用用途而组织的网络,它省去了中介设备无线AP和路由等设备。在Ad hoc网络中,一般具有多个结点,每个结点具有报文转发的特点代替路由设备,结点间的数据转发可能要经过多个结点。所以Ad hoc网络中的网络协议和算法就显得尤为重要,依靠其中一些高效、便捷、安全的协议,来协调结点间数据发送,解决结点数据发送拥堵等,使各个结点形成一个有序、高效的网络来进行数据传输、数据收集,从而使其发挥其存在的意义。
如所示Ad hoc网络是一种专用的无线网络,各个结点地位平等,可以互相转发报文。与普通的网络相比其具有以下的特点:
Ad hoc网络结构
1)没有中心结点
所有结点之间并没有一个固定的中心控制结点,各结点地位平等。结点可以随时地离开网络,不会影响网络的稳定性。所以Ad hoc网络具有很强的抗毁性。
2)自动组织
各个结点在布设完成开机之后,通过各种协议和算法自动协调快速地组成一个完整的网络。
3)多次路由
当一个结点要与其它间隔的结点进行通信时,中间可能跨越多个结点,数据的传输经过结点转发而不是路由器的转发。
4)拓扑动态
Ad hoc网络是一个动态网络。结点可以随时添加、删除、开机、关机,网络拓扑可以根据需求改变改变。这些特点使得Ad hoc网络对于传统的网络具有不可比拟的优势。
2.2暴露结点问题
暴露结点的产生是由于在无线环境中,各个结点一般随机分布导致拓扑结构不规律,结点之间不能准确的确定自己所处的环境和其它结点的位置关系。当两个结点原本可以同时发送数据时,但是由于一个结点检测到另一个结点(即一个结点暴露给另一个结点)发出的RTS(请求发送)信号时,该结点停止和其他结点通信,其实该结点并不在首先发送RTS信号的结点覆盖范围内,而停止自身和其它结点的通信,从而导致通信效率降低。虽然有CSMA/CA(载波侦听多路访问冲突避免)策略在发送数据前,检测链路的状态是否繁忙,如果线路忙,则等待一段时间后再发送数据,并且每个设备的等待的随机时间不同,以减少冲突的机会,但是当结点数量庞大的时候,这种策略的效用就大大降低了。
2.3无线网络中RTS/CTS的运行机制
无线网络中的RTS/CTS机制(request to send /clear to send)即请求发送/清除发送机制。该机制主要用于解决无线结点中隐藏结点问题即结点A向结点B发送数据,结点C也向结点B发送数据,结点C无法检测到A向B发数据,结点A相对于结点C来讲就是隐藏结点,A、C同时向结点B发送数据,那么就会导致数据冲突,导致数据包丢失等问题。当配置RTS/CTS生效时,结点A要发送数据时,向结点B发出RTS信号,结点B收到RTS信号时,向外发出CTS信号,告诉周围的结点它即将要和一个结点通信,停止接受其他结点数据(除发出CTS信号的结点),当结点A收到CTS信号时,相当于A、B两个结点握手成功,接下来将进行数据传输,这样就减少了了结点间在通信的时候受其它结点的影响。