随着信息产业的飞速发展,广域网上承载的业务种类和业务量在不断增大,规模也不断在扩大,大量的终端接入设备被广泛应用,需要对这些用户侧设备(CPE)进行有效的远程集中管理。广域网的分支设备一般位置比较分散,Telnet、SSH、SNMP(简单网络管理协议)、远程Web登录等传统的远程管理方式具有很多的局限性:如多厂商的设备命令行、SNMP不一致,设备地址经常变化,终端位于NAT网关之后,SNMP基于UDP协议导致传输不可靠,不同设备的Web界面及配置方式各异,无法对大量的CPE进行批量自动化管理,等等。因此,迫切需要一种新的网络管理系统,使得能够满足对广域网中的大量CPE进行远程集中管理的需求。
在这样的背景下,DSL论坛(Digital Subscriber Line数字用户环路,现已更名为Broadband论坛)于2004年5月推出TR069协议,通常被称为用户终端设备广域网管理协议(CWMP,CPE WAN Management Protocol)。TR069协议和其他相关协议一起定义了一套全新的网管体系结构,包括管理模型、交互接口及基本的管理参数。
TR069协议介绍
1.TR069网络架构
在TR069定义的管理模型中,网管服务器称为自动配置服务器(ACS),负责完成对用户终端设备(CPE,如路由器、网关设备、防火墙等)三层以上的复杂业务配置。TR069的核心思想是通过定义一套ACS和CPE之间自动协商交互协议,实现终端的自动配置过程。图1描述了TR069协议在自动配置网络构架中的定位。ACS与CPE之间的接口为南向接口,ACS与第三方网管系统、业务管理系统之间的接口为北向接口。TR069协议主要定义了南向接口标准。
图1 TR069网络架构
2.协议栈结构
TR069协议在设计上充分借鉴了Web技术的优点,基于控制协议TCP传输。如表1所示为CPE WAN管理协议中的协议栈结构。协议的核心部分为远程过程调用(RPC),该方法经过简单对象访问协议(SOAP)封装后使用HTTP协议在ACS和CPE之间传递。其中ACS作为HTTP服务器,CPE作为HTTP客户端。RPC方法基于可扩展标记语言(XML)进行描述。
表1 TR069协议栈架构
- RPC:远程过程调用是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。TR069为CPE定义了9种基本RPC方法,6种可选RPC方法;为ACS定义了2种基本RPC方法,2种可选的的RPC方法(CPE方法,CPE设备支持,可以被ACS调用;ACS方法,ACS设备支持,可以被CPE调用)。此外,TR069还对RPC方法中使用的数据类型做了定义,只能使用SOAP定义的的数据类型中的部分。
- SOAP、HTTP:在Internet环境下实现分布式组件互操作有一个很重要的问题需要解决,那就是所谓的防火墙问题。大多数的防火墙都是基于端口扫描的,而基于CORBA的RPC使用的都不是常用的端口。如果不经过特殊配置,基于CORBA分布式组件调用将被作为恶意访问而拒绝。所以,TR069使用SOAP简单对象访问协议作为RPC报文的封装,利用标准HTTP协议来传送的方式。TR069规定将SOAP与HTTP绑定,以RPC方法调用来实现设备的管理。把SOAP绑定到HTTP提供了同时利用SOAP的分散性、灵活性的特点以及HTTP丰富的特征库的优点。在HTTP上传送SOAP并不是说SOAP会覆盖现有的HTTP语义,而是HTFP上的SOAP语义会自然的映射到HTTP语义。在使用HTTP作为绑定协议时,一个RPC调用自然地映射到一个HTTP请求,RPC应答同样映射到HTTP应答。一般情况下,一个完整的SOAP包的结构包括:一个信封(Envelope)、一个头部(Header)(可选)、一个SOAP体(Body)(必需)。SOAP协议中未说明一个SOAP包中可以包含多个Envelope,TR069采用了多个信封机制,这样增加了一次交换所带的信息量,减少了网络设备之间的数据交换次数。
- SSL:SSL协议指定了一种在应用程序协议和TCP/IP协议之间提供数据安全性分层的机制,它为TCP/IP连接提供数据加密、服务器人证、消息完整性以及可选的客户机人证,确保数据在传送中不被改变。TR069协议实现的是远程管理,安全的信息交换是必需的。采用128bit加密算法、数字认证机制,实现CPE和ACS之间的安全信息交换。
3.业务流程
TR069中规定的远程管理系统的工作过程主要包括ACS发现的过程、ACS与网络终端设备建立连接的过程,以及ACS对CPE终端设备进行认证的过程。图3是一个典型的CPE发起连接的过程。
图3 CPE发起连接过程
在建立安全的HTTP连接以后,每次连接CPE都必须首先对ACS发出一个Inform的RPC调用请求来向ACS汇报本次连接的信息。ACS会返回给一个Inform response作为确认连接。标准的Inform方法的参数如表1所示。
参数名称 | 参数说明 |
DeviceID | 数据结构标识CPE |
Event | 标识此次Inform发起的原因 |
MaxEnvelopes | HTTP Response可携带SOAP信封数 |
CurrentTime | CPE当前的时间 |
RetryCount | 这次Session最大的重复连接次数 |
ParameterList | 这次Inform所需携带的参数 |
表1 Inform报文参数
4.TR069协议簇的其他规范
TR069协议不仅仅包括TR-069子协议,还包括其他一些的协议,构成了一个完整的网管协议簇。与之配套的TR-098协议和TR-104协议分别定义了CPE的数据业务的管理参数和VoIP业务的管理参数,WT-135协议用于定义数字机顶盒的管理参数,TR-111协议定义了在家庭内部数字设备上实施TR069网管的机制,WT-121协议则是各个厂家在实现和部署TR069过程中对协议的修订。
TR069主要功能
TR069协议描述了一种机制,建立ACS对CPE进行安全的自动化配置管理的框架,同时将它的CPE管理功能添加到这个框架中。目的是要实现以下多种功能,从而能够管理一个CPE或者CPE的集合。
- 提供自动配置和动态服务。该机制涉及到的参数既有一般规定的参数,也可以包含用户自定义的参数,为软件实现留有更大的自主空间。
- 软件和固件镜像文件管理。CPE可以下载和上传文件,协议提供了检查软件或者固件的版本的方法,还可以对签名数据文件进行处理。在文件传输结束后,通知ACS,返回成功或者失败。
- 状态和性能监控。TR069协议为CPE生成有效的监控信息提供支持,ACS可以使用这些信息来监控CPE的状态和性能统计。同时,也提供了一套允许CPE动态通知ACS自身状态更新的机制。
- 诊断。TR069协议为CPE生成有效的诊断信息提供支持,ACS可以使用这些信息来诊断和解决连通或业务问题,同时提供执行预先定义好的诊断测试能力。
- 告警。CPE主动发送事件报告来实现设备的实时告警。
- 穿越NAT连接。TR069本身允许ACS管理NAT后的设备,但限制了ACS不能主动发起会话。TR111的机制则是对TR069这部分的补充,可以使ACS主动发起会话。初始安装时,CPE会自动寻找ACS服务器(CPE出厂时配置一个默认的URL地址,用户将该地址指向ACS服务器),建立连接后即可与ACS通信、下载配置等,可完美解决NAT网关之后的管理难题。
应用举例
在一些分支机构众多的广域网(如政府乡镇机构、金融网点、零售、石化网点等)中,出于成本考虑,一般不使用专线,而通过ADSL拨号接入。同时考虑安全接入需求,IPSec VPN成为了最好的选择。对于新建网络,设备一般是直接发放到各分支机构,但通常各分支机构的人员对IT业务水平有限,很难自行完成配置工作,更不用说象IPSec这样复杂的配置。这样,总部IT人员必须出差到各分支机构去配置业务,使得运维成本高,后期设备版本升级、故障解决也不方便。
TR069智能分支管理则解决了上述问题。ACS与VPN业务网管进行交互,通过TR069协议将IPSec的配置下发到分支设备,实现分支设备的“零配置”。总部的管理员通过VPN业务网管的图形化向导进行VPN业务的规划,包括分支企业的子网划分、IPSec VPN安全联盟划分、ACL和路由的自动创建等,并与分支设备的ID进行绑定;在分支设备上线后,发送TR069请求报文,ACS服务器将绑定的VPN业务配置发送到各分支设备,完成VPN专线的建立。如图4所示。
图4 通过TR069开通IPSec VPN业务示意图
具体的业务流程如图5所示:
图5通过TR069开通IPSec VPN业务流程图
1、 TR069 ACS系统在厂商发货、分支设备上线前,先将所有Spoke设备的OUI、设备序列号、设备名称、地点、描述等信息进行录入;
2、 VPN业务网管系统通过向导方式进行网络域创建,以及VPN业务的规划,包括:
1) Hub和Spoke设备的保护子网规划;
2) IPSec、IKE安全提议模板指定
3) 其他参数配置,如IPSec报文封装模式等
3、 VPN业务网管系统将图形化的配置内容自动形成命令行形式,包括路由、ACL、IPSec安全提议等,可以由IT人员进行审核修改。
4、 VPN业务网管系统通过SNMP协议将Hub相关命令行配置下发到Hub设备上
5、 VPN业务网管系统通过ACS北向接口将Spoke相关命令行配置传到ACS系统作为VPN策略
6、 分支网点Spoke设备发货前需要配置ACS IP地址,通过拨号等方式上线后,向ACS发送TR069请求报文
7、 ACS接收Spoke报文请求后,与VPN策略进行绑定,将VPN配置下发到Spoke设备上
8、 Spoke设备向Hub设备发送报文即可打通IPSec隧道,建立VPN。
9、 VPN业务网管系统从Hub设备上获取IPSec隧道信息,进行拓扑和性能的监控。
这样,分支机构拿到设备后,无需做任何配置就可与总部进行VPN业务联通,大大减轻了IT实施和维护的困难,后续版本升级也可通过ACS自动批量进行。
总结
TR069是当今最受关注的网络管理协议之一,它提供了详细的CPE设备和业务管理框架,可以支持路由器、网关、防火墙等众多设备及VoIP、IPTV等众多业务。相比SNMP协议,具有安全可靠的特点,适合用于分支设备众多、位置分散、设备地址变化或位于NAT网关之后的广域网场景,可轻松解决广域网中大量终端的自动批量配置、状态性能监控等难题。