CWMP协议(TR069协议)学习

文中借鉴了一些大神的整理,后面会贴上链接,如侵删

目录

一、概念(来自百度百科)

二、网络元素

三、基本功能

四、CWMP协议栈

五、远程调用方法(RPC)详细的RPC方法定义请参见TR-069

六、inform的事件

七、TR069完整通信流程

八、详细业务流程可参考博客


一、概念(来自百度百科)

CWMP(CPE WAN Management Protocol,CPE 广域网管理协议),编号为TR-069,所以又被称为TR-069 协议。它提供了对下一代网络中家庭网络设备进行管理配置的通用框架、消息规范、管理方法和数据模型。

CWMP 主要应用于DSL 接入网络环境。在DSL 接入网络中,由于用户设备数量繁多、部署分散,通常位于用户侧,不易进行设备的管理和维护,CWMP 提出通过ACS(Auto-Configuration Server,自动配置服务器)对CPE(Customer Premises Equipment,用户侧设备)进行远程集中管理,解决CPE 设备的管理困难,节约维护成本,提高问题解决效率。

二、网络元素

·ACS:自动配置服务器,网络中的管理设备。

·CPE:用户端设备,网络中的被管理设备。

·DNS server:域名服务器。CWMP 协议规定ACS 和CPE 使用URL 地址来互相识别和访问,DNS 用于帮助解析URL 参数

·DHCP server:动态主机配置协议服务器。给ACS 和CPE 分配IP 地址,使用DHCP 报文中的option 字段给CPE 配置参数

主要框架为:

三、基本功能

1. ACS 和CPE 的自动连接

CPE可完成部分配置实现ACS与CPE的自动连接(比如说配置心跳上报周期等)

2. 支持ACS 对CPE 的自动配置

被管理设备(CPE)接收来自ACS发起的配置请求,请求包括了协议标准的参数(比如TR098、TR181等协议规定的数据模型),以及用户自定义的数据模型

3. 支持对CPE 系统启动文件和配置文件的上传/下载管理

被管理设备(CPE)可以从ACS服务器通过协议标准的数据模型上传或下载文件(包括升级软固件包、日志文件、性能统计文件等等)

4. 支持ACS 对CPE 状态和性能的监控

ACS可以通过标准定制的方法监控被管理设备(CPE)的状态和性能统计,同时CPE也可以主动通知ACS自身状态的更新

5.告警上报

被管理设备(CPE)可以主动向ACS服务器上传设备中的告警信息

四、CWMP协议栈

五、远程调用方法(RPC)详细的RPC方法定义请参见TR-069

测试中经常会用到的方法如下

CPE侧的RPC方法:

GetRPCMethods:获取RPC方法列表

SetParameterValues:ACS设置参数值

GetParameterValues:ACS获取参数值

GetParameterNames:ACS获取参数列表

SetParameterAttributes:ACS设置参数属性

GetParameterAttributes:ACS获取参数属性(也包含了参数权限)

AddObject:ACS增加一个实例对象

DeleteObject:ACS删除一个实例对象

Reboot:ACS下发重启命令到设备

Download:ACS从指定的下载目录下下载指定文件

Upload:ACS上传指定文件到指定目录下

FactoryReset:ACS下发恢复出厂命令到设备

ACS侧RPC方法:

GetRPCMethods:获取RPC方法列表

Inform:与ACS建立连接、通知

TransferComplete:通知传输完成,Download或Upload方法调用的传输文件已经结束(不管是成功还是失败都会返回,如果是失败,会有具体的参数返回对应的失败错误码)

AutonomousTransferComplete:通知传输完成(设置了自动传输的时候比如说定时上传,Upload方法调用的传输文件已经传输完成)

六、inform的事件

七、TR069完整通信流程

这篇文章写得很详细,可以参考:

TR-069 协议完整的通信过程_HotCook的博客-CSDN博客_tr069流程

  • (1) 设备启动;根据配置的ACS(自动配置服务器)地址,建立安全的HTTP连接以后,每次连接CPE都必须首先对ACS发出一个Inform的RPC调用请求来向ACS汇报本次连接的信息。ACS会返回给一个Inform response作为确认连接。
  • (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服务器发送空消息结束流程
  • 八、详细业务流程可参考博客

该篇博客有完整的流程和报文,可参考

网络协议篇之CWMP协议(二)—— CWMP(TR-069)业务流程_zqixiao_09的博客-CSDN博客_cwmp协议

猜你喜欢

转载自blog.csdn.net/lyouhuan/article/details/125191980
今日推荐