闫文耀,王志晓,李军怀,张德运
(1.延安大学西安创新学院,西安710100;2.西安理工大学a.陕西省网络计算与安全技术重点实验室;b.计算机科学与工程学院,西安710048;3.西安交通大学电子与信息工程学院,西安710049)
随着传感器技术、嵌入式技术、分布式信息处理技术和无线通信技术的发展,智能空间受到越来越多研究人员的关注。智能空间的建立不仅可以使人们的生活变得舒适便捷,而且可以辅助安防和特殊人群[1-2]。智能家居作为智能空间的重要组成部分和研究领域,将会使人们的日常生活变得更加方便、快捷和舒适,而在其中起到关键作用的就是家庭智能网关。因为在智能家居中各类数字电子电器设备可以通过一个家庭智能网关加以连接,从而实现家庭内外网络和电子电器设备间的互联,使用者不仅可以灵活地访问家庭内部网络,管理和操控这些电子电器设备,而且可以方便地访问外部网络(比如Internet)。
然而当前的网关一般为单一的调制解调器、有线或无线路由器、网络交换机、VoIP电话适配器和无线AP,或者是以上设备的组合。此类网关很难适应未来智能家居环境日益增长的多业务需求,而且在支持多种接入技术、远程管理以及安全性等方面的功能相对欠缺。因此,研究支持多业务模式的智能型异构融合网关显得尤其重要。本文提出多模智能融合网关(Multi-modal Intelligent Integration Gateway,MMIIG),该网关兼容IPv4和IPv6协议,不仅对外提供EPON,ADSL,Ethernet等多种接口类型,而且对内也支持Ethernet、ZigBee、无线 Wi-Fi等多种接入模式,同时考虑安全性,并支持远程配置和管理的Web功能。同时,该智能网关支持多种基于IPv4/IPv6的应用示范业务(比如多媒体实时业务),并在此基础上研究基于MMIIG网关的智能家居系统平台。
现在很多公司和机构正在积极研究和开发家庭智能化的核心设备——智能网关,比如:TI公司提出的 UG8 框架[3],Allied Telesis 公司的 AT-RG656[4],Inteno 公 司 的 EG500[5],欧 盟 资 助 的 Figaro[6]和MUSE项目[7]。除此以外,科研人员也从不同角度对网关或智能网关进行研究,并给出以下分类:(1)按特定的功能和支持服务的类型:支持多媒体的网关,支持QoS的网关,Domotic网关;(2)按访问终端的数量和支持服务的类型:虚拟网关,基于Web的中心网关,廋服务器网关,机顶盒式网关,多服务网关;(3)按OSI参考模型:A类网关(含物理层),B类网关(含物理层和链路层),C类网关(含从物理层到传输层),D类网关(含从会话层到应用层),E类网关(含从网络层到应用层),F类网关(含 OSI的7层);(4)按网关的发展史:调制解调器,路由器,交换机,服务网关。
文献[8]提出一个用于连接家庭内部网络和Internet的机顶盒式HNGS网关架构,基于Java技术设计网关的实时软件,之后采用X86单板机和Vxworks完成网关原型,但此网关仅提供一个以太网口和一个IEEE1394口,内部和外部接口单一,且不支持远程管理和多业务服务。为互连各类异构网络,文献[9]提出一个嵌入式网关架构,但只讨论了一些数据结构。文献[10]从Web服务的角度,基于Java技术给出OSGi(Open Service Gateway Initiative)服务网关架构,该架构集成了当前流行的一些有线和无线协议。文献[11]基于OSGi和语义Web技术研究了DOG(Domotic OSGi Gateway)网关,基于通用化和认证服务的设计思想,采用轻量级的方法管理不同内部网络。文献[12]在支持多媒体和QoS等功能网关的基础上,研究支持 VLAN和 QoS的安全 OSGi MRG(Multi-residential Gateway)网关。文献[13]研究了基于三网融合的智能型家庭网关,以RTL8196C嵌入式微处理为核心,给出该网关的设计与实现过程。文献[14]研究并设计了基于ARM技术的异构网络融合多模网关,该网关选用HHS3C6410-R2开发套件,主要实现了异构无线网络间的融合。文献[15]采用西门子公司S7-200系列小型PLC研究并设计一个IPv6数字家庭网络的智能控制终端,实现了普通家电的远程监控和智能报警。文献[16-17]分别设计了无线异构网络融合网关,前者侧重一般的无线网络,后者更侧重异构传感器网络的融合。另外,考虑到移动性和交互性,文献[18]研究了支持Zigbee和蓝牙技术的移动网关。
与此同时,科研人员也在不断探索各类基于网关的智能网络系统,尤其是智能家居。为适应动态环境和互操作,文献[19]基于OSGi和移动Agent,设计一个对等的面向服务架构(Service-oriented Architecture,SOA)的智能家庭系统。文献[20]在模糊逻辑和模糊神经网络的基础上,从信息获取与融合、无线和有线通信、智能控制技术以及用户界面等方面全面设计并实现基于信息融合的智能家庭系统。文献[21]整合通用网关、Zigbee和Wi-Fi技术设计并实现一个无线智能家庭自动化系统。此外,为节约能源,作为智能家居一部分,一些面向家庭的智能电力系统也被开发和实现[22-23]。
然而,以上大部分网关要么仍停留在服务网关上,比如OSGi网关,仅是软件架构的设计和实现;要么功能单一,接口类型有限,较少支持多模式和多种服务类型;要么没有考虑安全性和可靠性。因此,本文设计一个多模智能融合网关。
智能网关是家庭内部网络和外部网络的桥梁,互连不同的电子电器设备,支持多种协议和接口,并提供多种类型的网络服务。基于此,新一代多模智能融合网关需综合考虑以下因素:
(1)灵活性、开放性和扩展性:采用开放的思想,灵活的架构,并且易于管理和维护,支持远程管理或Web管理功能。
(2)兼容性和异构性:可以运行在IPv4和IPv6网络中,支持各种网络协议和不同类型设备的接入,尤其是Wi-Fi设备。
(3)支持业务多样性:应能够处理数据、音频和视频等多种业务和服务。
(4)安全性和QoS:能够对不同的业务和服务提供不同级别的安全性和QoS保障。
多模智能融合网关的总体结构如图1所示。
图1 MMIIG网关硬件结构
MMIIG网关接口类型为:(1)局域网内部接口:无线(802.11,比如 Wi-Fi),有线以太网,USB,ZigBee;(2)局域网外部接口:ADSL,有线以太网,EPON。考虑到在高速印刷电路板(Printed Circuit Board,PCB)中,模拟信号质量易于受到电源、外围元器件参数及PCB走线的影响,如果将MMIIG网关的所有功能都放在同一块PCB板上实现,一旦处理不当,将相互干扰,造成高速EPON,ADSL以及高频Wi-Fi和ZigBee数据传输过程中丢弃率与误码率的增加;同时考虑到便于调试及可维护性,采用分而治之的思想,基于IXP425网络处 理 器:Cortina ONU CS8016,Broadcom BCM6338,ATmega 128L和TI CC2420设计了MMIIG核心模块(见图1),EPON模块(见图2),ADSL模块(见图3)和ZigBee模块(见图4)。
图2 EPON模块
图4 ZigBee模块
3.2.1 CPU
考虑到宽带应用需求,经过反复比较和实验,选择国际上普遍流行的、性能先进的Intel IXP425网络处理器,它采用高性能的Intel XScale®core内核,32 KB指令缓存与数据缓存,533 MHz主频,可以满足智能网关信息处理的高带宽要求。尤其是3个网络处理引擎(Network Processor Engine,NPE),其中,广域网/音频网络处理引擎(WAN/Voice NPE)侧重于广域网和音频信息的处理;以太网处理引擎A可用于通用的以太网数据处理;以太网处理引擎B借助哈希运算和数据加解密单元,拥有较强的密码处理能力。
3.2.2 存储系统
SDRAM采用 4个 HY57V561620(32 MB),FLASH采用JS28F128J3A(128 MB)。考虑到家庭网关可能替代家庭或中小型企事业单位数据服务器,网关允许通过USB及CF接口接入较大容量的存储设备;此外,通过PCI接入磁盘阵列控制器,能提供大容量的存储。
3.2.3 多模智能融合网关接口
多模智能融合网关接口设计具体如下:
(1)支持IPv4/IPv6:通过IXP425提供的网络处理引擎实现网络数据包的高速路由转发及对IPv4/IPv6的支持。
(2)具有2个芯片自带的高速Console串行接口。
(3)广域网(WAN)接口和局域网(LAN)接口:IXP425内置2个媒体访问控制(MAC)控制器,通过扩充交换芯片物理层(PHY),提供一个WAN接口和8个LAN接口。
(4)ADSL接口:采用数字用户线路(Digital Subscriber Line,DSL)处理芯片组 Broadcom BCM6338(其中IXP425内置多个UTOPIA2控制器),实现与ADSL控制器的无缝连接。
(5)EPON接口:采用美国Cortina公司的光网络单元(ONU)集成控制器CS8016。CS8016不仅提供了广泛的QoS和流量管理功能,而且集成了帧缓冲存储,能减少外部随机访问内存(RAM)的需求。
(6)ZigBee接口:采用 TI公司的 CC2420/CC243x。通过IXP425自身的2个高速串口实现与ZigBee传感器网络模块的连接,并提供系统调试的串行接口。
(7)Wi-Fi接口:通过Mini-PCI接口和802.11b/g/a/n Wi-Fi无线网卡,提供无线接入功能。
为便于扩展和维护,MMIIG网关软件结构采用分层结构和开源理念,其软件结构如图5所示,包括引导层、嵌入式操作系统层、中间层和应用层。其中,嵌入式操作系统层选择自由可扩展的 Linux OpenWRT;中间层基于JVM;应用层采用OSGi框架绑定大量的服务和应用,包括流媒体、QoS等。
图5 MMIIG软件结构
Linux OpenWrt是用于嵌入式设备的GNU/Linux发行版,是一个高度模块化、自动化且遵循TCP/IP模型的嵌入式Linux系统,拥有强大的网络组件和扩展性,可以实现虚拟专用网络(VPN)、网络地址转换(NAT)、安全外壳协议(SSH)隧道,无线Wi-Fi,流量控制与整形,Web服务,网络行为监测等功能,常被用于工控设备、智能家居、路由器、电话、小型机器人以及网络语音电话业务(VoIP)中[24]。
在OpenWrt中,使用通用的嵌入式Linux工具,比如:busybox,uClibc 和 shell interpreter,一次提供一个抽象硬件层和包管理机制,其体系结构如图6所示。其中,统一配置接口(Unified Configuration Interface,UCI)可以帮助用户在任何平台的OpenWrt上用同样的方法配置系统、网络和应用;OPKG包管理系统是一个与桌面级 Linux使用的 apt-get,pacman,yum等同级别的包管理系统,可以获取丰富的软件资源。因此,本文选用 OpenWrt 2.6.32.25(gcc4.3.3)版本。
图6 OpenWrt体系结构
通信协议是通信双方为完成通信而约定一种规则或者标准,因此只要通信双方约定的通信协议相同就可以完成通信,这也是网络异构互连的基础。从理论上来说,异构网络之间的融合可以在网络层实现,也可以在MAC层实现,不过鉴于网络层(也称为网际层、网间层、互联网层)互连特性,在网络层实现异构融合比较简单且易于软件实现,但执行效率不高;如果在MAC层实现异构融合则相对复杂,因为需要由物理硬件实现,但执行效率会更高。
为便于实现IPv6网络、IPv4网络、ZigBee和无线网络(比如Wi-Fi)等网络间的互连与融合,本文智能网关选择在网络层实现异构融合的技术。同时,为在IPv4网络中兼容IPv6,主要利用双协议栈技术(RFC4312)、地址协议转换(NAT-PT)技术(RFC2766)和隧道技术(RFC3056)进行实现,详见文献[25]。本文采用Netfilter/Iptables提供的NATPT技术,以ZigBee和Wi-Fi网络之间的异构融合为例加以说明。如图7所示,异构网络(比如ZigBee网络和Wi-Fi网络)之间的通信必须经过智能网关MMIIG,它们在网络层使用相同的IP协议实现互联互通及融合。
图7 异构网络融合
MMIIG网关采用 OSGi、Java虚拟机(JVM)、通用即插即用(UPnP)等技术,一方面实现了网关和家庭电子电器设备的互操作,另一方面便于系统扩展和维护,尤其是在多媒体服务实现中,采用UPnP AV[26-27]和 UPnP QoS[28]策略。同时为实现有效调度和管理,将不同业务依据其时延、抖动和数据包损失率划分为低优先级、一般优先级和高优先级3种不同业务类型,如表1所示。
表1 业务优先级分类
(1)服务策略:采用先进先出、高优先级先服务以及溢出丢弃的协商原则。比如,对于包含2个以上优先级的业务,如果其到达率超出协商到达率,则将数据包直接丢弃。
(2)分类与调度策略:智能网关分类与调度策略,如图8所示,不同类型的业务分配不同的队列,执行带权重的轮询调度机制。如果一个业务含有2个以上的优先级,则将其分类到较高的优先队列。考虑到智能网关的处理能力,因此在处理机调度过程中,对于任一队列i,其数据包到达率λ(qi)和处理率μ(qi)必须满足关系:
图8 智能网关分类与调度
所有队列(含子队列)的总到达率和总处理比率ρ也必须达到满足:ρ<1。同时,考虑到系统容量,总服务率μ(q)必须满足:
(3)队列管理策略:为避免数据包在网关中发生拥塞并减少时延,考虑网关的有限存储空间,本文结合随机早期检测(RED)算法[29],采用带权重的随机早期检测(WRED)算法,其主要思想为:当队列长度处在给定的最小阈值和最大阈值之间时,按相应概率选择性地丢弃被标记的数据包。
带权重的随机早期检测WRED算法具体步骤如下:
为便于管理MMIIG网关,本文基于Web技术设计一个智能家居网关管理系统,如图9所示。用户可以有效地配置和控制MMIIG网关,并且可以通过网关方便地管理智能家居系统中的所有电子电器设备。
图9 基于Web的智能家居网关管理系统界面
在智能网关MMIIG的设计过程中,安全性和流量控制是重要的环节。为实现MMIIG网关的安全性和流量控制,采用Linux提供的Netfilter/Iptables技术。Netfilter是一种Linux 2.4内核防火墙框架,在高级的Linux版本中均有支持,该框架既简洁又灵活,可实现安全策略应用中的许多功能,如数据包过滤、数据包处理、透明代理、地址伪装、动态网络地址转换(NAT)以及基于用户及媒体访问控制(MAC)地址和基于状态的过滤、包速率限制等;Iptables基于Netfilter框架,是一种可扩展模块的管理工具。在Iptables中定义了表、链和规则,用来管理经过Netfilter各个钩点的数据包[30]。其中,Iptables预定义的表有数据包修改表、数据包过滤表和网络地址转换表。在可靠性方面,在设计时已进行严格的元器件筛选,并实施老化实验和性能测试,同时保持必要的接地和覆铜处理,详见文献[31]。
在构建智能家居原型系统时,智能融合网关MMIIG是其核心互联设备。该网关不仅用于互联内部网络(包括各种智能设备),而且也是内外网络互联的桥梁。因此,在智能家居系统中,核心网关的性能好坏直接影响智能家居原型系统性能。下文将主要测试和分析MMIIG网关的性能及其在智能家居无线传感器网络中的应用。在测试版本的MMIIG网关中,安装2片32 MB的 SDRAM,表2给出了MMIIG的主要参数。
表2 MMIIG主要参数
为测试MMIIG网关的性能,使用配置无线和有线网卡的笔记本A和B、MMIIG网关、Android智能手机、内部服务器C(可提供Web、FTP和VoD等服务),装配ZigBee适配模块的模拟照明系统,从而搭建一个简易的智能家居系统,如图10所示。
图10 智能家居系统
智能家居系统中的初始参数(即在空闲情况下的参数)设置,比如CPU信息、内存使用情况和进程运行情况等见图11。
图11 智能家居系统中的初始参数设置
本文测试和实验数据的获取基于如图10所示环境,采用iperf-2.0.2等工具进行,在120 s的测试时间中,分别收集1个、2个、4个和8个数据流情况。图12给出了MMIIG网关在防火墙、包过滤、节点认证等安全机制打开时,不同数据流情况下的吞吐率和抖动变化情况。
图13给出了在不同数据流作用下内存平均使用率,“0”表示在空闲情况下OpenWRT操作系统的内存使用率,约为19%。可以看出,随着数据流并行数量的增加,MMIIG网关的内存占用率也随之增加,该使用率包含OpenWRT内存使用率。实际上,数据流内存使用率是其各自使用率减去操作系统使用率和iperf内存使用率。
本文为测试MMIIG实际应用情况,以易于实现和部署的智能家居照明系统为例,为更接近每天的实际操作,在照明系统中分别采用直接控制和Web间接控制的方式周期性地改变灯泡状态30次。
图12 不同数据流下的吞吐率和抖动变化情况
图13 不同数据流下的平均内存使用率
直接控制的平均时延约为758 ms,既小于有线访问模式下的间接控制时延(约1.4 s),更远小于无线访问模式下的间接控制时延(约2.1 s)。在直接控制情况下,平均时延主要包括电磁继电器的响应时延和灯泡状态的改变时延。在间接控制下的时延较长主要是由于增加了Web响应时延。在整个实验过程中,系统运行状态良好,验证了MMIIG网关的可用性。
为测试MMIIG的实际应用情况,访问新浪网(www.sina.com.cn)首页,随后打开一段 6 min 17 s的视频;有关音频的测试通过访问百度音乐(music.baidu.com),随机聆听一段3 min 40 s的音乐,视频和音频均能流畅播放。图14给出了不用应用环境下的内存使用情况。可以看出,视频应用的内存使用比其他应用大,4种应用的内存使用情况从大到小分别是视频(Video)、音频(Audio)、Web访问(Web)和灯控(Lamp)。
图14 各类应用的内存使用情况
本文从当前网关设备和智能家居的现状着手,基于Intel IXP425网络处理器和开源Linux内核,研究支持IPv6的多模智能融合网关(MMIIG)。该智能网关不仅提供了ADSL,EPON,LAN等多种宽带、无线802.11(Wi-Fi)、Zigbee访问技术及 Web管理功能,支持多种类型的媒体业务,而且采用Netfilter/Iptables保障数据可靠传输。实验从吞吐率、CPU和内存使用情况等方面验证了智能家居系统的性能和可用性。尽管该智能网关和智能家居系统的基本原型已初步实现,但要面向实际应用还需使用更专业的测试工具以及接口技术;另外,由于本文实验条件的局限性,未能对EPON和ADSL进行有效性测试,今后将对此做进一步研究。
[1] Tsutsui A. Latest Trends in Home Networking Technologies[J].IEICE TransactionsonCommunications,2008,91(8):2470-2476.
[2] HomeAutomation[EB/OL].[2014-07-15].http://en.wikipedia.org/wiki/Home_automation.
[3] UR8 Residential GatewayArchitecture:Voice,Data,Video,Wireless[Z].2006.
[4] Allied T.Broadband Residential Gateway——A Single,Cost-effective Unit Offering a Full Suite of Services Including VoIP[Z].2012.
[5] Next Generation Gigabit Residential Gateway for FTTH and LAN Networks[EB/OL].[2014-07-15].http://www.inteno.se/index.asp?showproducts.
[6] Pankakoski V.Experimental Design for a Next Generation ResidentialGateway[D].Helsinki,Finland:Aalto University,2010.
[7] Garcia J,Valera F,Vidal I,et al.A Broadcasting Enabled Residential Gateway for Next Generation Networks[C]//Proceedings of the 2nd IEEE/IFIP International Workshop on Broadband Convergence Networks.Washington D.C.,USA:IEEE Press,2007:1-12.
[8] Moon Jae-Chu,Lim Hyo-Sang,Kang Soon-Ju.Real-time Event Kernel Architecture for Home-network Gateway Settop-box(HNGS)[J].IEEE Transactions on Consumer Electronics,1999,45(3):488-495.
[9] Xie Xiaoyun,Deng Daping,Deng Xiaohong.Design of Embedded GatewaySoftwareFramework forHeterogeneous Networks Interconnection[C]//Proceed-ings of 2011 International Conference on Electronics and Optoelectronics.Washington D.C.,USA:IEEE Press,2011:2306-2309.
[10] Valtchev D,Frankov I.Service Gateway Architecture for a Smart Home[J].IEEE Communications Magazine,2002,40(4):126-132.
[11] Bonino D,Castellina E,Corno F.The DOG Gateway:Enabling Ontology-based Intelligent Demotic Environments[J].IEEE Transactionson Consumer Electronics,2008,54(4):1656-1664.
[12] Arrizabalaga S,CabezasP,LegardaJ,etal.MultiresidentialGateway:An Innovative Conceptand a Practical Approach[J].IEEE Transactions on Consumer Electronics,2008,54(2):444-452.
[13] 张琦枫.基于三网融合的智能型家庭网关的研究与实现[D].秦皇岛:燕山大学,2012.
[14] 詹 亮.基于ARM技术的异构网络融合多模网关研究与设计[D].南京:南京邮电大学,2011.
[15] 姜凤华.基于IPv6家庭网络智能控制终端的研究与实现[D].贵阳:贵州大学,2007.
[16] 高旭东.物联网(智能家居)中无线异构网络融合网关的设计与应用[D].南京:南京邮电大学,2013.
[17] 于晓华.异构 WSN网络融合模型研究及网关设计[D].兰州:兰州理工大学,2012.
[18] Angove P,Grady O M,Hayes J,et al.A Mobile Gateway for Remote Interaction with Wireless Sensor Networks[J].IEEE Sensors Journal,2011,11(12):3309-3310.
[19] Wu Chaolin,Liao Chunfeng,Fu Lichen.Service-oriented Smart-home Architecture Based on OSGi and Mobile-Agent Technology[J].IEEE Transactions on Systems,Man,and Cybernetics,2007,37(2):193-205.
[20] Lan Zhang,Henry L,Chan K.Information Fusion Based Smart Home Control System and Its Application[J].IEEE Transactions on Consumer Electronics,2008,54(3):1157-1165.
[21] Gill K,Yang Shuanghua,Yao Fang,et al.A Zigbee-based Home Automation System[J].IEEE Transactions on Consumer Electronics,2009,55(2):422-430.
[22] Pal A,Bhaumik C,Shukla J,et al.Energy Information GatewayforHome[C]//Proceedings ofthe 2nd International Conference on Intelligent Systems,Modelling and Simulation.Washington D.C.,USA:IEEE Press,2011:235-240.
[23] Liu Shaowei,LeiWeimin,PanXianmin,etal.The Communication Model Based on SIP and ZigBee for Intelligent Home Electricity System[C]//Proceedings of 2011 International Conference on Multimedia Technology.Washington D.C.,USA:IEEE Press,2011:5594-5597.
[24] OpenWrt Wireless Freedom[EB/OL].[2014-07-15].https://openwrt.org/.
[25] Forouzan B A.TCP IP Protocol Suite[M].4th ed.[S.l.]:McGraw-Hill Science,2009.
[26] Kang D O,Kang K,Choi S,et al.UPnP AV Architectural Multimedia System with a Home Gateway Powered by the OSGi Platform[J].IEEE Transactions on Consumer Electronics,2005,51(1):87-93.
[27] UPnP AV Architecture V2[EB/OL].[2014-07-15].http://www. upnp. org/specs/av/UPnP-av-AVArchitecture-v2-20101231.pdf.
[28] UPnP QoS ArchitectureV3[EB/OL].[2014-07-15].http://www.upnp.org/specs/qos/UPnP-qos-Architecturev3.pdf.
[29] Chao H J,Guo Xiaolei.Quality of Service Control in High-speed Networks[M].New York,USA:Wiley-Interscience,2002.
[30] Netfilter/Iptables[EB/OL].[2014-07-15].http://www.netfilter.org/projects/iptables/.
[31] 田广锟,范如东.高速电路PCB设计与EMC技术分析[M].2版.北京:电子工业出版社,2011.