摘 要: 针对家庭网络终端设备的复杂性和业务的多样性引发的终端管理问题,在研究各网络管理协议的基础上,着重介绍了管理体系协议TR069规定的网管构架、网管功能及其安全性。
关键词: 家庭网络;远程管理;协议
随着宽带市场的高速发展、宽带用户的增多和宽带接入网络的增大,宽带业务的开户、管理和维护问题也越来越突出,越来越迫切。作为宽带网络接入设备的用户端设备,由于数量众多、布放分散,它的放号、维护、诊断和升级都需要运营商的维护工程师上门服务,使其成为宽带接入网络运维问题中的最突出问题。为了有效降低运维成本,提高用户满意度,在传统的电信网络设备的管理框架、商业模式和业务流程内,构建一个低成本、高效率的宽带运营管理系统,己经成为宽带接入市场的重要问题。而对数量最多、故障最为集中的用户端设备的远程集中管理维护系统,则成为重中之重的问题。可见,终端设备的远程管理和维护是非常必要的[1]。
从目前运营商的需求来看,家庭网络管理的任务包括:状态管理,监视联网家电运行状态;设备控制,通过家庭网络远程控制联网家电;服务管理,自动发现和配置联网家电提供的服务;名字管理,在家庭网络中维护一个可以唯一标志联网家电的名字空间。下面将对家庭网络设备远程管理的相关技术进行介绍。
1 家庭网络设备远程管理的相关协议
家庭网络设备远程管理需要解决的技术问题主要是管理通道和管理协议。远程管理的信息承载在IP包上,管理通道问题主要是解决如何传送承载管理信息的IP包,这主要与具体的接入技术相关。如何保证管理通道的可用性和管理通道的带宽是目前相关接入技术需要解决的问题。管理协议主要是指IP层之上的管理内容传送协议。管理协议的选择主要需要权衡安全性和协议复杂性。目前主要是DSL FORUM制定的TR-069。
1.1 简单网络管理协议SNMP
1987年11月发布的简单网关监控协议SGMP(Simple Gateway Monitoring Pratocol),成为第一个专门为网络管理提出的协议。该协议提出了直接监控网关的方法。简单网络管理协议SNMP(Simp1e Network Management Protocol)建立在SGMP的基础上,SNMP最初只是作为一种临时解决方案被提出,但如今已经成为了事实标准,而且是目前最常用的环境管理协议,它最重要的思想是要尽可能简单。SNMP首先是由Internet工程任务组织IETF的研究小组为了解决Internet上的路由器管理问题而提出的。SNMP提供了一种从运行网络管理软件的中央计算机来管理网络设备的方法,并提供了一种从网络上的设备中收集网络管理信息的方法,也为设备向网络管理工作站报告问题和错误提供了一种方法。
随着未来的网络管理智能化趋势,网络规模日趋加大、设备种类更加复杂、需要更强大功能,网络管理协议也会随之作相应变动,这些都需要更多的安全作保障。然而,在SNMP的整个应用过程中,出现了许多安全方面的问题。SNM-Pvl和SNM-Pv2协议仍存在内容被篡改等漏洞,虽然SNM-Pv3协议就安全方面做了很大的努力,但由于复杂性使其推广受到限制[2]。
1.2 家庭网络管理协议HNMP
针对家庭网络的特定结构以及SNMP的简单性,有人提出了一个新的家庭网络管理协议HNMP(Home Network Management Protocol),它把SNMP协议延伸到家庭网络。HNMP模型对家庭内部网络进行管理,不仅可以描述各种各样的家电设备参数,并对其进行管理,而且具有简单、无需用户自己配置的特点,可以达到即插即用的效果,为远程控制家庭信息设备打下了基础。它的主要功能是管理联网家电的运行状态,并且和SNMP模型兼容。但是对于网络接入和网络服务分离的接入网模型(目前国外一般都属于这种模型),SNMP这种集中式的网络管理协议并不能满足要求,这就需要一种新的管理模型[3]。
1.3 改进的家庭网络管理协议EXHNMP
与一般的网络管理相比,家庭网络管理不仅是对联网家电的状态和行为进行管理,还要对联网家电能提供的服务进行管理。在家庭网络中,不同的联网家电提供五花八门的服务,这些服务之间可能还有复杂的依赖关系,同时,家庭网络中的服务的配置必须是自动完成的,不需要人为干预,需要是家庭网络的管理协议能够自动发现和配置家庭网络上的这些服务。HNMP考虑了联网家电的运行状态的管理,并没有考虑家庭网络上服务的管理。针对此局限性,对HNMP协议进行了改进和扩展得出EXHNMP。
EXHNMP是一个分布式的家庭网络管理协议,联网家电可以对等地直接控制网络上的其他联网家电;EXHNMP还引入了简单的服务管理,联网家电可以根据任务自动选择适当的服务;EXHNMP是对家庭通过由管理信息库(MIB)中扩展的管理对象描述的服务,EXHNMP使得联网家电对家庭网络上的服务进行检索和匹配并根据要完成的任务查找适当的服务及其提供者。事实上,EXHNMP中对MIB的服务对象的描述还相对简单,不能精确地定义服务的细节,因此服务的匹配不能非常准确[4]。
1.4 CPE广域网管理协议
TR-069协议是当今宽带领域最受关注的管理体系协议,其全称为“CPE广域网管理协议”。它在2004年5月由DSL Forum提出,并且还在不断地更新中。它规定了家庭网关进行远程管理配置时的通用框架和协议,用于从网络侧对家庭网关进行远程集中管理。该协议支持对设备的自动配置,软件和固件的升级管理,以及监测设备的状态和性能,并能对设备故障进行诊断。TR-069协议可以认为是DSL Forum关于家庭网络一系列设备远程管理的基础,在支持设备远程管理方面具有很大的优势。该协议正成为各设备运营商在采购设备时,要求设备必须支持的管理协议。因此,为使各种家庭设备特别是家庭网关设备支持远程管理的功能,TR-069协议采用了成熟的通信协议,开放的面向对象的管理信息架构,具有强大的灵活性和可扩充能力[5]。
2 TR-069协议
TR-069广域网络自动管理协议是DSL论坛定义的终端管理框架的一部分,TR-069 CPE广域网络自动管理协议负责三层以上复杂业务的配置过程。它的核心思想是通过定义一套ACS和CPE之间自动协商交互协议,实现终端的自动配置的过程。TR-069规范主要由自动配置管理服务器(ACS)、用户驻地设备(CPE,即被管终端)、业务配置管理服务器以及一些必要的管理接口组成。它通过定义一套ACS和CPE之间自动协商交互协议,实现终端的自动配置和动态的业务发放,软件/固件映像管理与升级,状态、性能监视以及诊断功能[6]。
基于TR-069的网管构架如图1所示,宏观上主要有2个接口,一个是完成从业务或服务提供商向ACS下发业务配置的北向接口(ACS Northbound Interface),另外一个是完成从ACS到CPE配置管理的南向接口(ACS Southbound Interface)。
TR-069设备广域网配置管理框架是一种被动式的管理模型,与SNMP主动管理模式不一样,它不要求设备一直在线,也不需要检测终端设备是否在线,所有的请求都由终端设备发起,服务器只是被动地处理请求,能够适应终端设备数量巨大、地域分散的特点,具有更好的鲁棒性和适应性。
2.1 TR-069协议栈结构
TR-069协议采用了许多现存的、标准的协议以获得最广泛的设备支持。采用IP协议来保证TR-069协议独立于网络传输的物理介质,采用SOAP协议来保证TR-069设备具有互操作能力,采用XML来对设备和服务进行统一的描述, 采用HTTP协议来进行TR-069设备的信息交互,采用RPC方法实现CPE与ACS之间的交互,采用SSL/TLS增加网络传输的安全。采用这些现存的、广泛应用的协议能减少开发TR-069设备的工作量,使TR-069设备更好地融入现有网络。CPE WAN管理协议中定义的协议栈如表1所示。
TR-069协议中使用的这些成熟层次之间有非常紧密的联系。TR-069协议的最终目的是建立一个可用的设备管理应用协议,它是一个多层协议构成的框架体系,每一层都以相邻的下层为基础,同时又是相邻上层的基础。TCP/IP是通用的互联网传输协议;SSL/TLS则是出于安全的考虑,属于可选的协议层次;HTTP则是标准的传输会话协议,用于客户端与服务器的会话管理,而SOAP则是用于对上层应用协议内容的编码。由此可见这些协议层次是一个完整的网络应用协议的典型结构,功能完善,结构简洁明了,它们是缺一不可的整体。
2.2 基于TR-069实现的网管功能
TR-069协议的管理内容包括设备的自动配置及动态业务发放、软件/固件升级、状态和性能监测以及故障诊断。
(1)设备的自动配置及业务动态发放
CPE在与ACS利用TR-069协议进行交互过程中对自己做出标识(例如型号、版本等),而ACS则根据这些特定的标识设定特定的规则,对某个特定的用户或者某类特定的设备进行配置信息的更新或者业务的发放。在该协议中,CPE在开机后自动请求ACS中的配置信息,而ACS也可在任意需要的时刻主动进行配置或者业务下发。通过这样的设置,用户可以实现对设备的“零配置安装”,而ACS可以从WAN侧动态地监控设备参数的改变。
(2)设备的软件或固件升级
由于ACS可以识别CPE的设备标志以及其软件的版本号,所以ACS一旦发现CPE的软件或者固件需要升级时,就会要求CPE远程更新其软件或固件。由于在TR-069协议中提供了文件下载的功能,因此ACS指定新的软件或者固件文件的地址,让CPE到指定位置下载文件即可,CPE在文件下载结束后会通告ACS文件下载的结果。
(3)设备的状态和性能监测
ACS通过协议规定的RPC方法读取CPE中参数的值,从而可以监控设备的当前状态,以判定设备当前是否处于正常工作状态。同时ACS通过对一些反应CPE性能状态的参数的检测,也可以知道CPE性能是否变坏。
(4)故障诊断
TR-069中定义了一系列的参数用于设备故障的诊断,当设备发生故障后,可以读取相应的参数来诊断故障的发生。ACS也可以通过要求CPE上传设备的日志文件来分析CPE的历史状态和操作等,以更好地找到故障发生的原因,从而能对设备做有针对性的修复,降低设备的故障率。
2.3 TR-069协议的安全性
由于TR-069是一个远程设备管理协议,所以CPE和ACS间通信的安全性是很重要的。因此,TR-069推荐使用SSL/TLS安全套接口层协议。SSL是一种安全通信协议,它提供了2台计算机之间的安全连接,对整个会话进行了加密,从而保证了安全传输。SSL协议建立在可靠的TCP传输控制协议之上,与上层协议无关,各种应用层协议(如:HTTP、FTP、TELNET等)能通过SSL协议进行透明传输。在TR-069协议中采用SSL/TLS和TCP有以下一些限制:SSL/TLS的版本必须是SSL3.0或者TLS1.0,并且加密算法长度要大于或等于128位;CPE必须用ACS提供的证书认证ACS;ACS可以接收一个有效的CPE提供的证书来认证CPE,但是如果CPE不提供证书,ACS必须允许SSL/TLS连接建立。
采用SSL/TLS的方法虽然可以解决通信安全性的问题,但是在TR-069中却将此协议作为可选而不是必须的。这是因为SSL在实现时需要的代码量比较大,增大了整个协议的复杂度,需要更大的存储器容量,而这对一般的数字家庭设备来说是很宝贵的资源。因此,TR-069采用HTTP的摘要认证来作为SSL的补充,即:如果不使用SSL来保证通信安全性,ACS必须对CPE采用HTTP的摘要认证方式进行认证。
本文通过对设备远程管理相关协议的优劣做了详细的研究后,从协议栈结构、实现的网管功能及其安全性,重点介绍了目前宽带领域最受关注的管理体系协议TR-069。虽然通过部署基于TR-069的网管系统,可以在很大程度上减少用户的配置和管理工作,提高设备的易用性和可管理性,便于家庭网络中设备的快速部署和业务的迅速开展。但从协议目前的发展情况来看,TR-069仍然处于一个不断完善的过程中,在业务参数模型上还需要加入对更多的终端业务和特性的支持。
参考文献
[1] 宋臣.终端自动配置管理研究[D].成都:西南交通大学,2006.
[2] 彭淑静.SNMP网络管理系统技术.甘肃科技纵横,2008, 38(2).
[3] LIU Yun Xin, ZHANG Yao Xue. HNMP: a digital home network management model. ACTA Electronica Sinica,2001.
[4] 王勇,张尧学,方存好.一种改进的家庭网络管理协议—ExHNMP.小型计算机微型系统,2004,25(7).
[5] DSL Forum. CPE WAN management protocol[S]. Tech. rep. 069, May 2004.
[6] 王远波.家庭网关远程管理功能模块的设计与实现[D].武汉:华中科技大学,2009.