作 者:阿里互联电子网
摘要:外网用户对IPv6家庭网络中的信息家电进行远程控制时,IPv6家庭网关应发挥集中控制功能.在基于IPv6的UPnP家庭网络中,针对IPv6信息家电控制界面的两种产生方式,分别设计并实现了IPv6家庭网关的集中控制机制:一种控制界面由IPv6家庭网关根据模板文件自动生成,IPv6家庭网关根据SOAP协议集中控制信息家电;另一种控制界面由信息家电生产厂商定义,IPv6家庭网关发挥集中转发功能.这两种方式为外网用户对基于IPv6的UPnP家庭网络中的信息家电进行远程控制提供了全面的解决方案.
关键词:IPv6;UPnP;家庭网络;家庭网关;信息家电;模板文件;控制界面;转发
引言
外网用户对IPv6家庭网络中信息家电进行远程控制是IPv6家庭网络的典型应用之一.人们可以在办公室用电脑开启家中的监视器,查看家中状况;回家途中用手机开启家里的热水器并调节到适宜的温度等,这些都属于家庭网络的远程控制.IPv6家庭网络主要成员包括IPv6家庭网关、IPv6信息家电等,IPv6家庭网络拓扑结构如图1所示.
IPv6家庭网关是IPv6家庭网络与外部网络发生联系的桥梁,也是各种数据进出IPv6家庭网络的接口.外网用户对IPv6家庭网络中的信息家电进行远程控制时,IPv6家庭网关发挥了重要作用.
在UPnP设备架构中,信息家电内嵌了presen2tation页面[1、2],此页面是信息家电的控制界面.在家庭外用户远程控制信息家电的过程中,首先通过家庭网关得到信息家电的presentationURL,然后直接访问信息家电的控制页面.这种工作方式在控制实施的过程中,绕开了家庭网关,得以工作的前提条件是可供远程控制的家电需要支持外网的直接访问.对于家庭网络来讲,要求每台信息家电都支持外网访问存在安全隐患.因此,在基于IPv6的UP2nP家庭网络中研究家庭网关的集中访问和控制机制意义重大.
针对这一问题,本文提出了控制界面的自动生成机制和控制命令的集中转发机制.这两种机制强化了家庭网关的集中控制功能,完善了UPnP家庭网关标准InternetGatewayDevice(IGD)V1.0[3],为外网用户对基于IPv6的UPnP家庭网络中的信息家电进行远程控制提供了全面的解决方案.
控制界面的自动生成与集中控制
IPv6信息家电的控制界面可由IPv6家庭网关根据信息家电描述数组(由IPv6家庭网关生成)和模板文件自动生成,存于IPv6家庭网关端;IPv6家庭网关得到外网用户通过控制界面提交的控制命令后,采用SOAPRPC方式对基于IPv6的UPnP家庭网络中的信息家电进行集中控制.
信息家电描述数组与模板文件
信息家电描述数组存储着IPv6信息家电的描述信息.模板文件为XML格式,定义了控制界面的风格.
信息家电描述数组
IPv6家庭网关依据SSDP协议收集家庭网络中可用家电的信息,为每台家电生成一个信息家电描述数组.该数组由设备描述子数组、服务描述子数组、操作描述子数组3种子数组组成,用于存储IPv6信息家电的描述信息,包括家电名、IPv6地址、端口号、所能提供的服务、每项服务所包含的操作等信息.
模板文件
模板文件定义了IPv6家庭网关能够为各种IPv6信息家电生成的控制界面的风格,为XML格式,一种模板文件对应着控制界面的一种风格.模板文件由若干抽象子段组成,一个抽象子段包括一个抽象子段文件和相应的依赖性,抽象子段文件为一个文本文件.根据与信息家电描述数组的3种子数组的关系,抽象子段文件的依赖性分为4类:无依赖(no_dep),设备依赖(device_dep)、服务依赖(service_dep)、操作依赖(operate_dep).模板文件部分如下所示:
〈segmentList〉
..
〈segment〉
〈relativity〉operate_dep〈/relativity〉
〈content〉part1.txt〈/content〉
〈/segment〉
……
〈/segmentList〉
其中,〈segmentList〉标识一个模板文件的抽象子段列表,〈segment〉标识一个抽象子段,〈content〉标识抽象子段文件名,〈relativity〉标识此抽象子段文件的依赖性.
控制界面的自动生成
IPv6家庭网关根据信息家电描述数组和模板文件自动生成控制界面的过程为:IPv6家庭网关首先收集家庭网络中每个在线信息家电的信息,生成信息家电描述数组;然后根据模板文件生成某种风格的控制界面.
(1)家电信息的收集.IPv6家庭网关依据SSDP协议收集家庭网络中所有可用家电的信息,将每台家电的相关信息放在一个信息家电描述数组中.
(2)控制界面的自动生成.IPv6家庭网关从模板文件的文件头开始,顺序扫描;扫描不同的抽象子段,依据依赖性的不同,用相应子数组的元素值替换抽象子段,形成子段;然后将每个子段组合起来,在IPv6家庭网关端存为指定文件名(在设备描述子数组中指定)的信息家电控制界面.
集中控制机制
在此种方式中,IPv6家庭网关接收到外网用户提交的家电控制命令后,采用SOAPRPC方式集中控制相应的IPv6信息家电.IPv6家庭网关将生成的控制界面的URL地址以网页的形式向外网用户公布,外网用户选定了一个家电后,用户端浏览器以HTTP方式从IPv6家庭网关处得到该家电的控制界面,后续的过程如图2所示,IPv6家庭网关接收到外网用户通过控制界面提交的控制命令后,以SOAPRPC方式对相应IPv6信息家电进行集中控制,IPv6信息家电执行相应操作后,IPv6家庭网关将从IPv6信息家电得到的操作结果返回给外网用户.
IPv6家庭网关的集中转发
IPv6家庭网关在外网用户和IPv6家庭网络之间可以发挥集中转发功能.IPv6家庭网关接收到外网用户发送的家电控制命令后,转发给相应的IPv6信息家电;IPv6家庭网关接收到IPv6信息家电的相应反馈后,转发给外网用户.此种方式中涉及的控制界面为IPv6信息家电内嵌的presentation页面
IPv6家庭网关根据SSDP协议收集家庭网络中在线家电的信息,包括制造商、服务、操作、presentationURL等,并以网页形式向外网用户公布家电的presentationURL.用户选择一种家电后,用户端浏览器向IPv6家庭网关请求该IPv6信息家电的presentation页面;IPv6家庭网关从相应IPv6信息家电处取来presentation页面,转发给外网用户.外网用户通过presentation页面向家电发送的控制命令由IPv6家庭网关转发给IPv6信息家电;IPv6信息家电进行相应操作后,操作的结果由IPv6家庭网关转发给外网用户,在用户端浏览器中显示.相应的交互机制如图3所示.