ITMS(Integrated Terminal Management System),终端综合管理系统。
主要用于家庭网关的设备注册,初始化自动配置,软件版本升级,远程故障诊断修复和设备监控等。它通过北向连接服开系统用于接收业务工单,南向通过TR069管理通道连接终端,通过安装客户端与ITMS连接用于查看工单、终端情况。
应用场景
功能要求
TR-069协议介绍
CWMP协议(TR069协议)学习
TR-069网络元素主要有:
①ACS:自动配置服务器,网络中的管理设备。
②CPE:用户端设备,网络中的被管理设备。
③DNSserver:域名服务器。TR-069协议规定ACS和CPE使用URL地址来互相识别和访问,DNS用于帮助解析URL参数。
④DHCP server:动态主机配置协议服务器,给ACS和CPE分配IP地址,使用DHCP报。文中的option字段给CPE配置参数。
用户终端设备属于CPE,使用TR-069协议与ACS进行消息交互。
TR069( Technical Report 069)
全称是“ CPE广域网管理协议(CWMP),用于远程终端管理,是 CPE 和 ACS之间沟通的通讯协定。CPE 可以借着这个协定完成服务开通、功能设定、档案上传下载、系统检测 等等初始化及营运管理的必须动作。
CPE/ACS Management Application
该应用程序分别用于CPE广域网管理协议的CPE和ACS, 不属于CPE广域网管理协议的一部分。
RPC Methods
CPE WAN管理协议定义的特定RPC方法。RPC方法包括定义CPE参数,这些参数可由ACS通过与该参数相关的PRC方法访问。
ACS与CPE之间通过TR069协议特有的RPC方法进行互操作
CPE函数由ACS调用,用来对CPE进行管理,如设置CPE参数、获取CPE参数、硬件升级、重启设备等。
ACS函数由CPE调用,用来向ACS上报状态信息,请求硬件镜像文件下载(用来升级硬件)等等。
SOAP
基于XML的标准语法,用于编码远程过程调用,要求支持SOAP 1.1。
ACS与CPE之间进行消息传输基于HTTP1.1,消息内容使用SOAP包进行封装,SOAP包含SOAP head和SOAP body两部分组成的XML格式数据。
HTTP
要求支持HTTP1.1
SSL/TLS
标准的 Internet传输层安全协议。特别的,SSL 3.0 (Secure Socket Layer),TLS 1.0 (Transport Layer Security) 使用SSL/TLS是建议而非要求。
TR069协议的设计允许基于该协议的交互作用具有高度安全性。TR069协议的设计防止CPE和ACS之间事务被篡改,提供事务机密性,及允许多层次认证。
本协议使用下述安全机制:
----协议支持CPE和ACS间的通信传输使用SSL/TLS,提供事务机密性,数据完整性,以CPE和ACS间基于证书的认证。
----HTTP层提供另一种基于共享密钥的CPE认证方法。
TCP/IP
标准TCP/IP
对于用户设备来说,TR-069主要完成以下四方面的工作
一是用户设备自动配置和动态的业务配置。对于ACS来说,每个用户设备可以在协议中对自己作出标志(例如型号、版本等),根据可设定的规则,ACS可以对某一个特定用户设备下发配置,也可以对某一组用户设备下发配置。CPE可以在开机后自动请求ACS中的配置信息,ACS也可在任意需要的时刻主动发起配置。通过该功能可以实现用户设备的“零配置安装”功能,或是可以从网络侧控制业务参数的动态改变。
二是对用户设备的软件、固件的管理。TR-069的协议提供了对用户设备中的软件、固件进行管理和下载的功能。ACS可以识别用户设备的版本号,决定是否远程更新用户设备的软件版本,并且在更新完成后能够得知是否成功。例如,当用户设备需要加载新的软件以实现新的业务功能时,或是当前软件存在必须修复的bug时,通过该功能可以实现对用户设备的远程管理升级。
三是对用户设备的状态和性能进行监测。TR-069定义了ACS对用户设备的状态和性能进行监测的手段。其中包括了一些通用的性能参数,可以反映当前用户设备的工作状态。另外还提供了标准的语法,运营商可以定义额外的参数。
四是对通信故障的诊断。TR-069还定义了可以用户端自我诊断和报告的能力,例如在ACS的指示下,用户端可以通过ping或其它手段检查用户端与网络业务提供点之间的连通性、带宽等,检测结果返回给ACS。这样,运营商通过在远端操作,就可以对用户申告的设备故障进行简单定位,并作相应的处理。
TR-069协议完整的通信过程
以下为设备重启到挂上TR069网管的报文流程解析:
(1) 设备启动:根据配置的ACS(自动配置服务器)地址,建立安全的HTTP连接以后,每次连接CPE都必须首先对ACS发出一个Inform的RPC调用请求来向ACS汇报本次连接的信息。ACS会返回给一个Inform response作为确认连接。
标准的Inform方法的参数如表所示
(2) ACS服务器接受到设备端(CPE端)发出的inform消息之后,会给予一个 informresponse响应机cwmp连接创建成功。
(3) 设备端发送空消息,表示没有后续的请求。
(4) ACS服务器收到空消息后,根据空消息中携带的序列号对设备进行合法性验证,若验证通过则进行后续操作,若不通过则下发消息提示设备非法。序列号的判断在ACS内部判断,未体现在报文中。
(5) ACS验证设备序列号合法,发送消息要求设备端上报网管的账号信息。
(6) 设备端接收该ACS服务器请求上报账号的消息后,将发送设备上配置的账号信息作为请求的响应。
(7) ACS服务器收到消息后,根据消息中携带的账号信息进行合法性验证,若验证通过则进行后续操作,若不通过则下发消息提示账号非法。序列号的判断在ACS内部判断,未体现在报文中。
(8) ACS验证账号合法,发送消息要求设备从特定URL上下载配置文件。
(9) 设备接收到该消息之后,并根据消息中的URL地址下载配置文件并自动配置,同时给ACS服务器一个下载成功的响应消息。
(10) ACS服务器发送消息,要求设备从特定的URL下载升级文件(是否升级可由用户自行决定)。
(11) 设备接收到该消息之后,并根据消息中的URL地址获取升级文件,同时给予ACS服务器一个响应。
(12) ACS服务器发送空消息结束流程。
TR069协议簇的其他规范
TR069协议不仅仅包括TR-069子协议,还包括其他一些的协议,构成了一个完整的网管协议簇。与之配套的TR-098协议和TR-104协议分别定义了CPE的数据业务的管理参数和VoIP业务的管理参数,WT-135协议用于定义数字机顶盒的管理参数,TR-111协议定义了在家庭内部数字设备上实施TR069网管的机制,WT-121协议则是各个厂家在实现和部署TR069过程中对协议的修订。
TR069事件类型(EVENT CODE对应的含义)
0 BOOTSTAP指出由于CPE第一次安装或是ACS的URL改变而引起会话建立。
这种特殊的情况有:
1)出厂后CWMP端第一次与ACS连接;
2)出厂设置后,CWMP端第一次与ACS连接;
3)由于某种原因ACS的URL改变后CWMP端第一次与ACS连接。
注意,0 BOOTSTARP可能和其他事件代码一起组成事件代码组,例如,在出厂后CPE初始启动时,CPE发送0 BOOTSTARP和1 BOOT事件代码。
1 BOOT当给电或是复位时引起的会话建立,这包括初始系统启动或是由于其他原因的再启动,包括用M Reboot方法,但是不是从待机状态醒来。
2 PERIODIC在周期通知间隔时会话建立,用作心跳包时间。
3 SCHEDULED由于调用ScheduleInform 方法会话建立,这种事件必须只能用M ScheduleInform。
4 VALUE CHANGE指出从上次成功的Inform后,具有Passive和Active通知属性的一个或多个参数的值发生了改变,如果这个事件代码在事件组中,所有修改的参数必须被包含在Inform的参数列表中,如果这个事件被丢弃,那么这些修改的参数也应该同时被丢弃。
5 KICKED指出会话建立的目的是网页验证,并且Kicked方法会在这个会话中调用一次或多次。
6 CONNECTION REQUEST由于ACS(终端管理)发送了连接请求而使会话建立。
7 TRANSFER COMPLETE由于先前请求的下载或上传完成而引起会话建立,TransferComplete方法会在这个会话中调用一次或多次。这个事件代码必须用M Download,M ScheduleDownload,或者是M Upload etc。
8 DIAGNOSTICS COMPLETE当完成了一个或多个由ACS启动的诊断,CPE会用该事件码重新建立起一个连接。
9 REQUEST DOWNLOAD为了调用RequestDownload方法而发起的会话。
10 AUTONOMOUS TRANSFER COMPLETE当不是由ACS请求的上传或下载完成而引起的会话建立(成功或是不成功),Autonmous TransferComplete 方法会在这个会话中调用一次或多次。
11 DU STATE CHANGE COMPLETE为了表明先前请求的DU state改变完成而建立的会话,不管成功与否,DUStateChangeComplete方法会在这个会话中调用。这个方法必须用M ChangeDUState
12 AUTONMOUS DU STATE CHANGE COMPLETE会话建立是要通知ACS DU state改变完成了, 而这个改变不是由于调用ChangeDUState 方法的请求,DUStateChangeComplete方法会在这个会话中调用。
13 WAKE UP由于CPE从待机中苏醒而建立的会话。
开机注册
- 终端开机后,调用Inform方法,上报终端信息及参数,Event Code为“0 BOOTSTRAP”或者“1 BOOT”;
- 终端管理系统对终端进行认证,返回Inform Response;
- 终端发起一条空的Http Post请求;
- 如果终端认证失败,则直接走到第8步,返回空的HTTP响应,以使终端结束会话。如果认证成功,则需记录或更新终端信息。如果终端管理系统需要的参数在Inform的参数列表里没有,则终端管理系统可以下发GetParameterValues查询参数;
- (可选)终端返回GetParameterValuesResponse
- (可选)如果终端管理系统需要设置一些参数,则终端管理系统可以下发SetParameterValues设置参数;
- (可选)终端返回SetParameterValuesResponse
- 如果终端管理系统没有其他任务下发,则下发空的HTTP Response。
- 终端结束会话,断开连接。
Inform消息上报的参数列表
参数名称 | 是否必选 |
Device.DeviceInfo. HardwareVersion | M |
Device.DeviceInfo. SoftwareVersion | M |
Device.DeviceInfo.AdditionalHardwareVersion | O |
Device.DeviceInfo.AdditionalSoftwareVersion | O |
Device.DeviceInfo.ModelName | O |
Device.DeviceInfo.Description | O |
Device.DeviceInfo.FirstUseDate | M |
Device.DeviceInfo.UpTime | M |
Device.ManagementServer. ConnectionRequestURL | M |
Device.TIME. NTPServer | M |
Device.LAN. DNSServers | M |
Device.LAN. AddressingType | M |
Device.LAN. IPAddress | M |
Device.LAN. MACAddress | M |
M | |
Device.X_ CMCC_OTV. ServiceInfo.UserID | M |
Device.X_ CMCC_OTV. ServiceInfo. PPPoEID | M |
Device.X_ CMCC_OTV. ServiceInfo.AuthURL | M |