APP下载

基于Click的Mesh路由平台设计与实现

2011-03-06李每虎郭渊博王洪玉

通信技术 2011年7期
关键词:网卡路由器路由

李每虎,郭渊博,王洪玉

(解放军信息工程大学 电子技术学院,河南 郑州 450004)

0 引言

无线Mesh网络[1](WMN,Wireless Mesh Networks)是从移动Ad hoc网络分离出来,并承袭了部分WLAN技术的新型网络技术,具有较高的可靠性、较大的伸缩性和较低的投资成本。无线 Mesh网络的核心思想是让网络中每个节点都发送和接收信号,网络中每个节点都具备自动路由功能,具有多跳特性,能够很好地解决无线接入“最后一公里”瓶颈及WLAN中AP“单点故障”等问题。

作为一种高容量、高速率的新型分布式无线宽带接入网络,无线 Mesh网络的关键技术以及面临的相关问题已经成为无线通信发展演进中的研究热点之一,受到了国内外业界的广泛关注。互联网的发展和多媒体业务的需求加速了无线通信向真正的宽带系统过渡,其面临的多种无线通信技术及异构网络共存、融合的趋势和要求,使得无线 Mesh网络技术的广泛研究开发和产业化成为当前亟待解决的问题。而目前用于各种关键技术的具体实现、相关协议性能测试等研究的无线 Mesh网络平台不多,为了更好地将理论转化为现实应用,提出了一种构建实用、可扩展性强、能够灵活应用的无线 Mesh网络路由协议测试平台的方案,并进行了原型系统实现和相关测试。方案基于Click软件路由技术[2],应用动态源路由选择协议(DSR,Dynamic Source Routing Protocol)[3]和相关软硬件,在Linux操作系统上实现了无线Mesh网络路由节点,为进一步对无线Mesh网络及其路由理论的研究与应用开发提供了方法和思路。

1 Click软件路由技术

软件路由技术主要是采用通用的硬件平台结合应用程序软件来实现网络路由。目前在软件路由器研究领域中,基于Windows平台的软件路由器主要是用于商业化的,而开源的基于 Unix/Linux平台的软件路由技术更加适用于研究与开发,应用比较广泛的主要有Scout系统和Click路由系统。

Click路由系统是由美国MIT大学Eddie Kohler博士提出并由 MIT计算机技术系并行与分布式操作系统实验室开发完成的基于Linux操作系统实现的一种新型模块化软件路由器,目前Click软件已经发布到了1.8.0版本。Click的最大特点就是面向对象的模块化设计方式,使路由配置和管理更加灵活,用户可以根据自己的需要选择不同的模块组合起来配置路由器,而且Click的模块化设计方式也使得用户可以方便地在原有路由器的基础上增加新的功能。

2 基于Click的DSR路由协议

2.1 DSR协议介绍

DSR路由协议是一种反应式多跳路由协议,其网络节点根据自身需求发起动态路由请求,由于在数据报文中带有完整的源路径信息,DSR协议能够保证该报文按照指定路径行进,可以有效地避免环路的产生,而且,它还能够支持单向信道和非对称路由,提供多条路由,是一种简单而高效的按需实用路由协议。由于无线Mesh网络组网灵活,网络兼容性好,结构复杂,选择 DSR协议可以很好的实现与既有网络(比如Internet)之间的无缝连接并能很好地适应网络的动态变化。

2.2 基于Click的DSR协议模块化设计

方案在借鉴Click的软件路由器体系结构的同时,通过分析DSR路由协议的具体特点,对DSR协议模块化结构进行了充分的设计。设计后的基于Click系统的DSR协议组件配置结构如图1所示。

在分析如图1基于Click系统的DSR路由组件结构的基础上,依据Click语法规则可编写出基于文本的click配置文件dsr-userlevel.click。

3 WMN路由节点的设计与实现

3.1 路由节点的体系结构设计

在无线Mesh 网络中,任何无线设备节点都可以同时作为AP 和路由器,网络中的每个节点都可以发送和接收信号,每个节点都可以与一个或者多个对等节点进行直接通信。因此所设计的基于主机的无线Mesh网络路由节点的基本体系结构包括利用Click软件路由技术构建的无线Mesh网络路由模块和用HostAp软件[4]实现的无线Mesh网络接入模块。其软件硬件结构如图2、图3所示。

图1 基于Click系统的DSR协议模块化组件结构

图2 硬件结构

图3 软件结构

3.2 路由节点的原型实现

3.2.1 节点实现所需软硬件

节点构建所选择硬件包括:带有以太网卡的Linux系统主机,Atheros AR5212A miniPCI无线网卡(可转换成PCI),D-Link DWL-G122 USB无线网卡;所需的软件主要是Click软件包和HostAp软件包等。

3.2.2 路由模块的安装与配置

在装有Linux操作系统主机上安装libgtk/libglib等基本库文件和gcc/g++/gdb/make 等基本编程工具。

对网卡驱动程序进行安装与配置,对于Atheros AR5213无线网卡,由于系统系统默认自动加载的ath5k驱动不支持MeshAP模式,因此需要从网站下载Madiwifi驱动并进行安装加载,并将网卡模式设为ad hoc模式以支持Mesh路由。

下载最新的 click软件包并进行用户模式安装(即userlevel模式),并将上述已编写好的路由配置文件dsr-userlevel.click复制到相应的目录下(一般为../click/userlevel/conf/)。

3.2.3 接入模块的安装配置

加载网卡驱动程序,由于系统内核自带rt73驱动,可以直接通过命令行对D-Link DWL-G122 USB无线网卡进行驱动加载,并将网卡模式配置为支持AP模式即Master模式。

安装openssl-0.9.8与hostapd-0.5.7软件,并根据实验需要更改hostapd.conf配置文件。

编写HostAP启动脚本StartHostAP.sh,该脚本主要是通过启用HostAP软件,利用无线网卡与以太网卡进行桥接的方式实现无线接入功能。

3.3 节点平台的搭建与测试

利用基于Click的网络节点搭建一个无线Mesh网络测试平台并设置相应IP地址和频段,每台主机代表一个节点,其拓扑结构如图4所示。

图4 测试平台网络拓扑结构

首先,在每个节点中启动HostAP接入模块以启动接入功能,可在终端输入命令行:

./StartHostAP.sh

其次,在每个节点中启动基于Click的DSR路由模块以启动路由功能,进入/userlevel目录,可在终端输入命令行:

./conf/dsr-userlevel.click

这样网络中的每台Linux主机都可以当作无线Mesh网络路由节点正常运行,并且节点之间能够正常通信。在 IP地址为192.200.1.21的主机上使用route命令可以查看到路由表如图5示。

3.4 节点平台应用分析

所搭建的无线 Mesh网络节点平台在完成正常的无线Mesh接入和路由功能上,可以进一步提高网络的稳定性,增加网络的带宽,提升网络的速度,扩大无线网状网的应用范围,最终实现一个安全可管可控实用的无线网络环境。该方案所设计实现的节点平台还可以方便地在主机上安装iperf和jrtplib等相关工具,实现对无线Mesh网络路由协议的吞吐量、丢包率、网络时延等数据的测试。

图5 节点路由表

4 结语

这里提出了一种在Linux操作系统上实现Mesh网络节点的方法,并进行了原型系统实现。首先,由于Linux的开源特性,该节点可以通过对不同协议的编译与配置来分析和比较不同协议的性能,并能够在此基础上灵活的加各种入功能模块如Web和Ftp服务、防火墙等,实现一机多用加大投资效益。其次,研究人员能够借鉴该方法在不更换硬件的条件下根据个人需求方便地搭建各种Mesh网络平台并进行应用开发与协议研究。为了更好地将实现网络的具体应用,下一步的主要研究方向是在更换硬件设备和接口的基础上,通过交叉编译等方式,在开源嵌入式操作系统OpenWRT上,将在Linux主机上实现的开源无线Mesh节点平台应用于嵌入式开发平台,构建基于嵌入式的无线Mesh网络节点平台。

[1] IAN F A, WANG Xudong, WANG Weilin.Wireless Mesh Networks: a Survey[J].Computer Networks, 2005, 47(04):446-487.

[2] KOHLER E.The Click Modular Router[D].USA: MIT, 2001.

[3] JOHNSON D B, MALTZ D A, HU Y.The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks[EB/OL].(2007-07-23)[2011-01-13].http://www.ietf.org/internetdrafts/draft-ieftmanet-dsr-11.txt.

[4] IEEE.Host AP Linux driver for wireless LAN cards and WPA Supplicant [EB/OL].(2008-11-01)[2011-01-13].http://hostap.epitest.fi/.

猜你喜欢

网卡路由器路由
在DDS 中间件上实现双冗余网卡切换的方法
买千兆路由器看接口参数
Server 2016网卡组合模式
探究路由与环路的问题
你所不知道的WIFI路由器使用方法?
挑战Killer网卡Realtek网游专用Dragon网卡
PRIME和G3-PLC路由机制对比
WSN中基于等高度路由的源位置隐私保护
eNSP在路由交换课程教学改革中的应用
无线路由器辐射可忽略