基于Batman-adv的自组网系统设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息系统工程 │ 2019.5.20
80
SYS SECURITY 系统安全
摘要:论文设计了一种基于Batman-adv的无线自组网系统,将Batman-adv协议嵌入Openwrt系统中,经编译下载至自组网节点,实现了多个节点开机组网功能,并通过实验对基于Batman-adv的自组网系统进行了可行性验证,实验结果表明,基于Batman-adv的自组网系统能够实现无线节点的快速组网和高效部署。
关键词:Batman-adv;Openwrt;自组网
一、前言
自组网是由一系列无线移动节点组成的动态的多跳自组织的网络,相对于现有的网络而言,其不依赖于预设的基础设施,具有移动性、无中心性、拓扑架构动态变化等特点,是目前研究的热点方向[1-3]。无线自组网通信的链路可靠性,都要求网络具有建立和维护稳定有效的路由信息[4],路由算法作为实现无线网络的基础,目前主要的路由协议有AODV、Babel、DSDV、DSR、HSLS、ZRP、OLSR、OSPF 等,但由于低功耗有损网络(Low-Power and Lossy Networks,LLN)的特点,上述路由协议并不能满足面向低功耗的无线自组网的需求[5]。而Batman-adv 路由协议在吞吐量、时延、CPU 负载和路由开销等方面有更好的性能表现[6-7],同时耗费资源少,对硬件要求低,特别适合嵌入式应用。本文基于Batman-adv 作为自组网的路由协议,研究了基于Batman-adv 协议的快速组网方法,通过在Openwrt 上移植Batman-adv 协议,并下载到AR9344路由器,实现了自组网系统开机快速组网的功能。
二、基于Batman-adv 的自组网系统设计
本系统主要由AR9344路由器、Openwrt 固件及PC 机组成,将Batman-adv 嵌入Openwrt 系统中,并将编译后的固件下载到AR9344路由器,在PC 端进行相关配置,即可实现无线节点自组网。
(一)Batman-adv 在Openwrt 上的移植
Opemwrt 是一款基于linux 的开源嵌入式操作系统,拥有强大的网络组件和扩展性能,具有高度模块化、自动化的特点,本文基于Opemwrt 进行系统移植。在Openwrt 中,Batman-adv 同时支持有线网络接口和无线网络接口,在将接口设置为Batman-adv 模式之后,所有网络接口的数据都会被转发到bat0接口进行处理,并给这些接口需要配置相应的IP 地址即可运行。Batman-adv 协议在内核中会监听通过bat0接口的MAC 地址,根据MAC 地址决定转发数据包的目的地址,进而实现路由功能。
Batman-adv 在Openwrt 上的移植及配置过程如下:首先对无线网卡进行设置,修改mac80211.sh文件,模式设为adhoc,无线设为自动开启状态,将batnet 网络接口加入到wireless 中。主要代码如下:
Set wireless.radio${devidx}.disabled=0
Set wireless.default_radio${devidx}.ifname=adhoc0Set wireless.default_radio${devidx}.network=badnet
Set wireless.default_radio${devidx}.mode=adhoc Set wireless.default_radio${devidx}.ssid=mesh 然后,修改config_generate文件,设置bat和batnet两个网络接口,bat 设置为桥接,选择static 的协议规则,mtu 设置为1500,batnet 的mtu 设置为1560。具体代码如下:
Generate_bat_network(){Set network.bat=’interface’Set network.bat.ifname=’bat0’Set network.bat.proto=’static’Set network.bat.mtu=’1500’Set network.bat.type=’bridge’Set network.bat.ipaddr=’172.16.6.3’}Generate_batnet_network(){Set network.batnet=’interface’Set network.bat.proto=’static’Set network.bat.mtu=’1560’’}(二)内核编译
Batman-adv 在Linux 系统中以内核驱动的方式运行,使用Batman-adv 开源程序源代码,在Linux 系统下进行编译,形成固件后下载到AR9344路由器操作系统中运行。具体操作是:首先执行make v=99命令编译生成具有自组网功能的固件OpenWrt-ar71xx-generic-mw4530r-v1-squashfs-sysupgrade.bin,然后将其下载到AR9344路由器中,在浏览器的网址栏输入192.168.1.1进入Luci (Openwrt Web 管理界面),在bat0接口下输入IP 地址,即可完成移植。
三、系统测试与结果分析
(一)实验环境搭建
此次实验搭建了一个包含3个节点的自组网系统,对基于Batman-adv 的自组网系统进行验证实验。自组网系统节点硬件实物如图1-a 所示,系统测试选择在办公楼内作为测试环境,A 是源节点,B 是中继节点,C 是目的节点。室内部署情况如图1-b 所示。
图1 系统实验硬件及实验部署图
基于Batman-adv 的自组网系统设计与实现
马新舒 唐 欣 李晓欢
◆
SYS SECURITY 系统安全
(二)测试结果与分析
首先测试从自组网系统开机到生成路由表的入网时间,方法是在数据接收端,将测试入网时间的代码写入开机启动脚本文件中,共计测试30次,最后取平均入网时间。如表1所示。
表1入网时间测试结果
实验次数最小入网时间最大入网时间平均入网时间3022.86s22.94s22.91s
如表1所示,最小入网时间为22.86s,最大入网时间为22.94s,平均入网时间为22.91s。实验结果表明,自组网系统组网时间短且稳定,可实现自组网系统的快速部署和高效组网。
在PC端登陆putty后输入ssh 192.168.1.1,使得Openwrt系统用SSH服务与PC端传递信息。为测试节点A(两跳)和节点B(一跳)的传输带宽和延时性能,本文在节点A和B处输入iperf -s使其工作在监听状态,在目的节点C处分别输入iperf -c
表2带宽测试结果
节点最小带宽最大带宽平均带宽
A 3.03Mb/s 9.44Mb/s7.01Mb/s
B13.6Mb/s21.0Mb/s18.2Mb/s
表3延时测试结果
节点最小延时最大延时平均延时
A 2.62ms 6.06ms 3.08ms
B 1.49ms 2.76ms 1.62ms
如表2和表3所示:A节点发送的数据经两跳后到达C节点的平均带宽为7.01Mb/s,平均延时是3.08ms。B节点发送的数据经一跳后到达C节点的平均带宽是18.2 Mb/s,平均延时为1.62ms,可满足网络拓扑缓慢的室内外无线网络传输需求。
四、结语
本文设计了一种基于Batman-adv路由协议的自组网系统,实现了多个自组网节点开机自动组网的功能,提升了自组网设备部署的快速性和便捷性,并对自组网系统的时延和带宽进行了验证性测试。实验结果表明,基于Batman-adv路由协议的自组网系统具备良好的短距离通信速率,适用于室内外低速移动节点的无线自组网的应用。H
参考文献
[1]孙澒椿.无线Ad-hoc网络平面移动模型及网络容量分析[D].兰州:兰州理工大学,2017.
[2]陈强伟,赵建华,杨雪芹.Ad-hoc网络路由协议分析及改进[J].舰船电子工程,2017(11):63-66.
[3]杜志文,陈虎.batman-adv协议在采煤机传感器控制中心无线通信系统中的实现[J].煤矿机电,2017(2):43-45.
[4]杨冕,秦前清.对传感器网络定位技术现状的研究[J].微机发展,2005, 15(3): 26-28
[5]马伟.基于无线传感器网络的室内定位系统节点的设计与实现[D].成都:电子科技大学,2013.
[6]王雷.一种基于batman的Mesh网络路由协议改进方法[D].大连:大连理工大学,2014.
[7]Aastikta Sharma,Dr. Narendran Rajagopalan. A Comparative Study of
B.A.T.M.A.N.and OLSR Routing Protocols for MANETs[J].2013,2(5):13-17.
(基金项目:国家自然科学基金(61762030);广西创新驱动发展专项(桂科AA17204009、桂科AA18242021);广西高校中青年教师基础能力提升项目(2018KY0830)资助;通讯作者:李晓欢 )
(作者单位:马新舒、李晓欢,桂林电子科技大学信息与通信学院;唐欣,桂林电子科技大学信息科技学院)
(上接第79页)
体制都要逐渐完善,只有相对健全的管理体制,加强其管理力度,才能有利于我国地铁供电系统相关的有效管理。当然,相关管理任务的有效执行离不开工作人员认真严谨的工作,只有相关管理工作人员认真对待工作,严谨要求自己,对待问题实事求是,对于工作一丝不苟,以及谦虚求学、积极探索的学习态度,只有这样,才能真正的保障地铁供电系统的安全可靠。工作人员的恪尽职守、技术素质的专业服务、一切为民的思想态度、实践理论的完美结合,这些都是利于地铁供电系统运行可靠性做出新的突破。当然,只是加强对于相关管理工作人员的技术素质要求也是不够的,对于上文所提到的相关管理系统机制也要相对完善健全,并深入落实。以我国目前的地铁供电系统为例,相关工作人员的专业技术素质无法得到统一,同时对于技术工作人员的考核标准也不尽相同,这些对于其供电系统的正常运行来说都是一个个潜伏的安全隐患,迫切的需要解决。
因此,完善机制,加强考核,统一标准,强化素质,这些都是提高地铁供电系统安全可靠运行的有效措施。总而言之,就是要做到有关供电设备的可靠性保障,其中包括定期的进行供电设备检修管理工作,以及综合相关数据进行对供电设备的可靠性评估以及预判,只有这样才能对供电设备进行更深一步的管理检测,甚至于制定地铁列车行业其未来发展的宏伟蓝图。
三、结语
随着现代人们的生活水平不断提高,出行的交通方式也在逐渐发生改变,地铁,就是一项人们在新世纪所逐渐接受的新的交通方式,随着地铁的重要性愈发加强,对于地铁安全可靠性的把握一定要慎之又慎。只有对供电设备进行及时检查,对工作人员进行全面培训,并加强各方面的工作,这样才能在一定程度上缩减地铁事故的发生率,从而起到推动我国地铁列车事业的发展的积极作用。H
参考文献
[1]王学武.地铁供电系统可靠性和安全性分析方法研究[J].中小企业管理与科技(上旬刊),2017(04):97-98.
[2]王鸿.地铁供电系统可靠性分析[J].技术与市场,2012,19(07):57-58.
[3]孙彰林,何颖.地铁供电系统可靠性设计[J].现代城市轨道交通,2006(01):14-16+8.
(作者单位:郑州市科技学校)
信息系统工程 │ 2019.5.2081