5 方案实施验证分析
实验现场为华侨大学厦门软件园嵌入式技术开放实验室(厦门软件园二期54号402,华侨大学产学研基地)。网络节点由两个PC机节点和一个嵌入式系统节点组成。PC机节点配置是DELL工作站PY597 + ZD1211b无线网卡,安装CentOS 5操作系统(内核版本号为26.18-128.e15),加载Aodv路由协议模块,支持直接或多跳的通信。嵌入式系统节点配置则为致远MagICARM2410 + Asus WL-167无线网卡,加载Aodv路由协议模块,支持直接或多跳的通信。PC1的IP为192.168.0.5;PC2的IP为192.168.0.55;K1的IP为192.168.0.45。网络拓扑如图4所示。
由于测试区域较小,节点PC1不需要经过中继节点K1就可直接到达节点PC2。为了测试Aodv路由协议的“跳转”功能,采取屏蔽策略,使PC1与PC2相互屏蔽。
(1)PC1对PC2的屏蔽
在PC1执行:iptables -A INPUT -p ALL -m mac --mac-source 00:02:72:61:ED:4B -j DROP。其中,00:02:72:61:ED:4B为PC2的Mac地址,使得PC1拒绝PC2发送的数据包。
(2)PC2对PC1的屏蔽
在PC2执行:iptables -A INPUT -p ALL -m mac --mac-source 00:02:72:61:ED:53 -j DROP。其中,00:02:72:61:ED:53为PC1的Mac地址,使得PC2拒绝PC1发送的数据包。
①K1节点定期广播传送HELLO消息,发现了附近的两个节点PC1和PC2,如图5所示。
②PC1节点定期广播传送HELLO消息,先发现了附近的K1节点,然后透过K1发现了PC2,并对其建立路由。如图6所示。
③PC1节点PINg PC2节点,信息返回成功,如图7所示。
从Ping命令的输出结果中可以看到,数据包所经过的路径是PC1→K1→PC2→K1→PC1。经过K1节点上 Aodv模块的路由功能将Ping数据包转发,使得不能直接通信的节点PC1和PC2实现了数据传输,具有了路由发现和网络自组的功能。
本文提出按需路由协议的实现方案,充分考虑了按需路由的特点,针对按需路由在linux嵌入式环境下实现的难点,提出了解决方案和设计实现方案,其功能函数具有良好的通用性。该方案为以后研究员验证和比较各种协议在实际网络中的性能提供了良好的基础。
参考文献
[1] HARTENSTEIN H. Topics in ad hoc and sensor networks - A tutorial survey on vehicular ad hoc networks[J]. IEEE Communications Magazine,2008,46(6).
[2] GIOVANARDI A, MAZZINI G. Ad hoc routing protocols: emulation vs simulation[C]. 2nd International Symposium on Wireless Communication SystEMS, 2005:140-144.
[3] BOUKHALKHAL A, YAGOUBI M B, DJOUDI M, et al.Simulation of mobile ad hoc routing strategies[C]. 4th International Conference on Innovations in Information Technologies, Dubai, United Arab EMIrates, 2007:128-132.
[4] 余旭涛,毕光国.Ad Hoc网络按需路由协议的改进[J].计算机学报,2004,27(6).
[5] PETERSON L L,DAVIE B S. Computer networks:a system approach[M]. Morgan KauFMann Publishers, 2nd edition, 2000.
[6] RANDHAWA T, RICHAROS J. Implementation of a kernel mode IPv6 AODV routing daemon to improve data throughput[C]. 2005 IEEE International Conference on Communications (ICC 2005), 2005(5):16-20.
[7] NetfiLTEr/Iptable homepage[EB/OL]. http: //www.netfilter.org,2005-09.
[8] Tun/Tap universal driver[EB/OL].http://vtun.sourceforge.net/tun/, 2005-10.