java 发送tr069报文_TR069报文交互
TR-069是由DSL论坛(www.dslforum.org)所开发的技术规范之一,其全称为“CPE广域网管理协议”。它提供了对下一代网络中家庭网络设备进行管理配置的通用框架和协议,用于从网络侧对家庭网络中的网关、路由器、机顶盒等设备进行远程集中管理。
主要功能:
1.自主配置和提供自主业务
•
提供可选工具,管理CPE相关的对安全有更高层次要求的可选应用或服务组件,比如与收费相关的应用或服务。如如何通过数字签名凭据来控制这些选项的机制。
•
供给机制还允许对未来的尚未包含在本版本规范中的服务及性能进行直接扩展
CPE WAN管理协议允许ACS通过多种准则来实现对一台或一组CPE的供给。供给机制包括规定供给参数和为支持厂商自定制供给能力而提供的通用机制。
•
供给机制允许CPE在连接到宽带网络的初始化阶段实现供给,并且允许以后重新供给,包括支持异步ACS发起的CPE重新供给。
•
本协议包含的认证机制允许基于一台CPE需要,或基于一些组合准则,比如CPE厂商,型号,软件版本等进行CPE供给。
•
协议同时
2.软件/固件的映像管理
l
CPE
WAN管理协议提供管理CPE软件/固件映像下载的工具。协议提供版本鉴别,文件下载的发起(ACS发起或者可选的CPE发起),以起文件下载成功或失败后对ACS的通知。
l
CPE
WAN管理协议还定义一种数字签名的文件格式,可选地用来下载单个文件或者文件包,并且提供给CPE如何安装的明确指令。这种签名包格式保证下载的文件以及后续安装指令的完整性,同时对文件来源的身份进行认证,以避免来自除ACS以外的其它数据源的更新。
3.状态与性能监控
CPE WAN
管理协议支持CPE向ACS提供可能用于状态和性能统计数据。协议定义其公用参数集,并提供厂商在定义ACS能够监视的其它非标准参数时使用标准语法。它还定义CPE主动通知ACS自身变动的条件集合。
4.诊断
CPE WAN管理协议支持CPE向ACS提供可用于诊断连接性和服务的信息。本协议定义一组公用参数集合,以及厂商添加自定制诊断能力的通用机制。
CPE
WAN管理协议包括几项本协议特有的组件,也使用几项标准协议
如下图 :
RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。
常用RPC方法有如下:
•
GetRPCMethods
•
SetParameterValues
•
GetParameterValues
•
GetParameterNames
•
GetParameterAttributes
•
SetParameterAttributes
•
AddObject
•
DeleteObject
•
Download
•
Reboot
•
FactoryReset
在平台操作时就是调用上述的RPC方法。
对于SetParameterValues方法,其返回值需要强调
0
参数的改动已经验证并应用 ,大部分参数都是该属性
1
参数的改动已经验证并提交,只是尚未应用(比如,在新的参数值应用前需要进行重新启动),例如修改TR069 wan连接的vlan
对于AddObject
方法,需要注意的是:其添加的实例号是递增的,是最大的实例号+1,就算最大的实例已经被删除
对于DeleteObject
方法,需要注意的是: 只能删除数字带.的节点(实例)
对于SetParameterAttributes 方法,对于其输入参数需要重视
Struct
{
Name ;#string
NotificationChange ;#boolean
Notification ;#0-2
AccessListChange ;#
AccessList
;#
}
Notification:
0 Notification关闭。
CPE不必通过ACS指定参数的变化。
1 被动式Notification。当指定的参数值变化时,CPE必须在下一次建立
与ACS的会话时,将这一新值包含在Inform报文的ParameterList中。
2 主动式Notification。一旦指定参数的值发生变化,CPE必须发起与ACS的会话,将新值包含在相应的Inform报文的ParameterList中
TR069交互过程:
CPE主动发起连接:
ACS反向过程:
在完整的交互过程中当是反向连接时,设备发送的报文中必须带有6 CONNECTION REQUEST 事件,事件是在inform报文中提现的。在正式的交互之前,之前都会有交互。
报文分析:
正式交互之前的交互报文:
正式交互报文
交互第一步:
在报文中CWMP关键字都是需要注意的,在第一个inform报文中,写出了事件类型6 CONNECTION REQUEST,主要是发送设备的一些信息
交互第二步:
没有认证,需要认证信息
交互第三步:
发送带有鉴权信息的报文
交互第四步:
交互五步:
空报文
交互第六步:
调用的方法和相应的参数
交互第七步:
返回的结果,不同的方法返回的参数都不一致,如果操作不成功返回的错误代码也是在这体现
交互第八步:
java 发送tr069报文_TR069报文交互相关推荐
- java发送http post请求报文_Java 用HTTP的方式发送JSON报文请求
String resp= null; JSONObject obj= newJSONObject(); obj.put("name", "张三"); obj.p ...
- Java发送报文与接收报文
报文(message)是网络中交换与传输的数据单元,即站点一次性要发送的数据块.报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变. 个人理解:从客户端把字符串写入字节数组流中传达至服 ...
- JAVA建行银企直连报文加解密
接上一篇密钥交换之后获得银行提供的:银行RSA签名公钥RSA.bank.public.key,接受报文验签使用:银行DES加密私钥DES.bank.private.key,加密报文使用.还有之前自己生 ...
- java发送接收UDP数据包:字符串,byte[]字节数组,文件等
全栈工程师开发手册 (作者:栾鹏) java教程全解 java发送接收UDP数据包,数据内容为byte[],包括一切可以转换为byte[]的内容. 测试代码 public static void ma ...
- java发送接收组播(多播)数据包(UDP包)
全栈工程师开发手册 (作者:栾鹏) java教程全解 java发送组播(多播)数据包.首先要加入组播组,然后才能向组播组发送组播数据包和接收组播数据包. 以下代码,在局域网中测试有效. 测试代码 pu ...
- java发送post请求上传文件和json数据
java发送post请求上传文件和json数据 因为第三方的上传服务post参数使用了两个@requestpart参数. 但是feign不可以使用两个@requestpart参数.会报错:java.l ...
- 【计算机网络】网络层 : ICMP 协议 ( ICMP 差错报文 | 差错报文分类 | ICMP 询问报文 | ICMP 应用 | Ping | Traceroute )
文章目录 一.ICMP 协议 二.ICMP 协议 简介 三.ICMP 五种差错报告报文 四.ICMP 差错报文形成 五.ICMP 差错报文 不发送 情形 六.ICMP 询问报文 七.ICMP 应用 一 ...
- OSPFB笔记-五个报文【超详细】[Hello报文,DD报文,LSR报文,LSU报文,LSAck报文]
目录 Hello报文 DD报文[数据库描述报文] LSR报文 LSU报文 LSAck报文 通过前面已经了解到ospf的报文头部[链接:OSPF头部报文https://blog.csdn.net/wei ...
- 报文、报文段、分组、包、数据报、帧、数据流的概念区别
1.报文(message) 我们将位于应用层的信息分组称为报文.报文是网络中交换与传输的数据单元,也是网络传输的单元.报文包含了将要发送的完整的数据信息,其长短不需一致.报文在传输过程中会不断地封装成 ...
最新文章
- Kotlin 函数的问题
- 【C++】【十】二叉树
- 从本地上传到hdfs上出现异常
- Cortex M3存储器映射
- 多选框实现全选_Angular1.x-checkbox-全选amp;单选amp;多选
- python向it新增5个元素_Python序列、元组、列表、集合及字典笔记整理
- mysql主从不同步的解决方式
- Python windows serial
- 小姐姐把信息撤了后如何查看?Python百行代码分秒恢复!
- 用友文件服务器设置,u8文件服务器如何设置
- 网站建设的7大流程,值得收藏!
- 盘古开源:技术为基创新驱动数据存储体系完善
- DatePicker时间格式化年月日
- 【Git】Git命令大全
- (附源码)计算机毕业设计ssm大学校园兼职网站
- 凡科网怎么样啊,中小企业建站凡科网值得选择吗,口碑如何?
- Putty的使用及登录
- Chakra-UI——React UI 框架
- C#中设置Excel单元格格式
- Android.mk文件语法规范(Android.mk File)
热门文章
- 软件包 | texstudio-2.12.22-win-qt5.exe 百度云分享,永久有效
- [Python从零到壹] 二.语法基础之条件语句、循环语句和函数
- linux ls 只显示文件或者文件夹
- 职场路上,你如何抉择
- java自行车起源_现代自行车的起源和它的发展历程
- 求多项式:采用递归方法
- Debian 更改网卡名
- 科大讯飞 语音识别报 引擎内部错误 错误代码 20021
- wget: 无法解析主机地址 “repo.mysql.com”
- 公众号关联小程序用户信息获取问题