TR069协议在家庭网关中的实现

2018-11-15 01:33李健江
电脑知识与技术 2018年20期
关键词:实现方法管理

李健江

摘要:随着我国科学技术不断发展,网络技术的普及程度不断提高,因此如今家庭网关已经成为网络管理中的重要组成部分。家庭网关管理更多是在运维支撑当中,但是网关所处位置也大大提高了管理难度,在运维支撑的研究当中, ZERO -TOUCH已经成为重点关注的问题。基于此,该文重点探究TR069协议在家庭网关中的实现方法。

关键词:TR069协议;家庭网关;实现;管理;方法

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2018)20-0037-03

1 背景

在过去对用户侧设备管理模型实现当中,主要是从网络管理层和元素管理层两个方面出发,并以设备作为管理中心,设备参数也是采用人工配置方法,重点关注设备事件与警告信息。但此模式在实际应用中两大缺陷:1)设备必须要始终通电,否则无法估算哪些时候可以操作;2)要求设备使用一个固定的IP地址,从而保障网关主动发起操作的路由。当今人们也意识到了这两项缺陷问题,逐渐让设备管理为中心转向以业务为中心的模式。如今网关管理的理念范围非常大,但主要是集中在业务开发和部署当中。传统网络管理模型存在着管理、业务脱节等问题,而经实践证明,采用TR069协议即可解决以上几点问题。

2 什么是TR069协议

TR069协议全称为“TR069广域网络自动管理协议”,是DSL论坛定义终端管理框架中的重要组成部分,TR069协议主要负责三层以上复杂业务配置过程,核心技术理念是通过一套ACS和CPE间自动协商交互协议,从而实现多个终端的自动匹配。

TR069协议规范是B-NT自动配置框架中高级复杂业务配置协议的一部分,通过ACS(自动配置管理服务器)、CPE(用户驻地设备,即被管理的终端)、业务配置管理服务器、管理接口构成。在实际以应用当中通过配置ACS和CPE间的自动协商协议,这样即可让终端自动方法业务并实现自动配置,实现软硬件的自动升级、管理以及状态监测、性能监测、系统诊断等功能。如图1,整个系统中主要包含两个接口:一个是业务完成从服务器中朝向ACS发送业务配置接口;另一个是业务完成由ACS向CPE配置管理的接口。

2.1 TR069协议栈

TR069之所以能够获得多种设备的支持,主要是其中融入了很多现存的标准子协议,其中IP协议尤为重要,可以保证TR069协议在网络中的独立性,实现单独的物理介质;SOAP协议可以实现TR069设备的互操作功能;XML可以对设备进行统一概述;HTTP协议可以实现信息交互;RPC协议实现了CPE和ACS的交互;SSL/TLS保证网络信息传递的安全性。

使用以上现存的广泛子协议,可以大大降低TR069系统开发的工作量,让TR069设备更好地融入现有网络当中,CPE、WAN管理协议栈见表1。

2.2 TR069的工作过程

在对CPE进行基础加电之后,这时会率先运行TR069 APP模块,并由APP模块在FLASH存储设备当中获取相关信息数据,让DB模块初始化。先要从配置文件当中获取到ACS地址,并在此地址中连接到ACS进行通信,如果通信通道建立失败,则可以采用DHCP Server获得ACS地址,之后再发起ACS连接,成功连接成功之后,会向ACS主动上报信息数据,主要包括设备的配置文件版本号、固件版本号等,这部分信息通过SOAP数据格式在HTTP包体中填充。CPE需要通过ACS进行认证,在认证完成之后(合法用户),可以把RPC组成SOAP包发送到CPE中,CPE将SOAP解析成RPC,在本地网关中实现相应的功能,在指令执行完成之后即可将最终的执行结果反馈到ACS中,这样即可对CPE进行网络控制。应用TR069协议不仅可能实现ACS的一对一管理,同时也能够实现一对多形式。

3 TR069在家庭网关中的实现

结合TR069协议的内部结构,可以划分为三大模块,包括协议栈模块、APP模块、DB模块。其中,协议栈模块主要是用作于客户端和服务器认证、解析SOAP、RPC调度等;APP模块主要是对TR069功能模块进行初始化、执行RPC方法;DB模块主要是对整个系统提供数据库,APP可以通过此接口直接获取数据库中的各项数值,如参数值、设定指定参数等。

TR069协议栈作为实现各类功能的基础,其中也包含着诸多模块,有HTTP_SERVER、HTTP_CLIENT、HTTP_Author、 HTTP_DB、 TR069 APP、HTTP_Schedule等模块。这些模块可以分别实现的功能包括:监听ACS发起的连接请求以及处理相应、HTTP基本认证、远程下载与上传功能、SOAP解析与RPC调度等。TR069协议栈关联见图2。

3.1 HTTP_Client/HTTP_Server模块

HTTP_Client主要是负责和ACS间通信,传输、接收相关数据。如CPE向ACS发送通信请求时,生成调度即可采用Http_ConnectTo向服务器发送连接,如果连接过程超过时限(通常为10ms)或成功,则 HTTP_Client即可调用OnConnect回调函数,也就是实现了相应的处理功能。在连接成功之后,会在连接状态位显示信息,代表此时可以进行信息的收发。

需要在HTTP_Client中建立接收数据、发送数据缓冲区,如果所传送的数据包体积过大,一次发送无法全部发送,则将剩余的数据信息暂时贮存在HTTP_Client发送缓冲区,在上一阶段发送完毕后自动开展下一阶段的数据传输。在数据接收过程中,需要将网络终端数据事先拷贝到接收缓冲区,并通过缓冲区逐步下载信息数据。

如果CPE是服务端,可以直接獲取到ACS的连接请求,如果ACS要向CPE发送连接,需要先向HTTP Server发出一个HTTPGET请求,从而构建一个连接通信渠道。在CPE接受了该请求后,先判定HTTP_Client是否闲置,如果正在执行任务则会直接拒绝该请求;反之,在HTTP_Client闲置状态下,则要判定请求是否符合标准,之后再接受连接,启动HTTP_Client的功能模块。

3.2 HTTP_Author模块

该模块主要是负责报文解析工作,认证HTTP。在CPE向ACS发送相关请求之后,此时CPE是认证客户端,开展客户端认证工作。在建立了会话后,会自动向ACS上报信息,接受认证。之后在HTTP_Author模块中把HTTP_Client接收缓冲区获取ACS传输到CPE报文,并对报文进行解析,从WWW -Authorization包头字段获得认证方式。如果此认证是基础认证,则对用户账号、密码进行编码,把编码后的数据直接放到Authorization包头字段中,构建HTTP包,并发送到ACS当中等待认证结果。

如果采用了摘要认证,需要通过服务器将数据传输到包头信息中,账号、密码、自身信息需要展开摘要运算,并将最终的运算结果和自身信息组成HTTP包头传输到ACS中并进行运算,对两个运算结果进行对比,如果两个运算结果对等则认证通过,并主动连接到CPE中,此时的CPE是认证服务端,与客户端认证相同。

3.3 TR069 APP模块

该模块主要是负责协议栈和DB模块初始化,并对RPC进行处理,二者通信的重要平臺,其逻辑框架如图3。

TR069 APP模块能够实现的功能包括:

1)ACS相应功能;2)IP绑定;3)特定情况通知ACS功能;4)配置功能(如文件升级、参数设置);5)功能升级(包括固件、程序、资源文件等);6)监控状态性能;7)诊断故障(包括恢复出厂等);8)协议栈配置启动。

3.4 HTTP_Schedule模块

该模块主要是负责SOAP报文构建与解析,并在三个队列中同时计算,对报文进行认证后,该模块会把HTTP包传输到HTTP_SCHDULE模块当中,此时包体就是SOAP报文。在获得报文后,会对SOPA解析器进行调用、解析,包头中含有一些标头信息数据, SOAP Body中主要包括RPC方法和参数信息,在解析完成后把RPC压入ACS_Request队列中。

SOAP构造的主要功能是调用CPE向ACS发起请求,也包括ACS发起的RPC调用处理。在此条件下,SOAP会结合信息数据生成报文。报文解析构造见图4。

3.5 TR069 DB模块

是整个TR069协议中的数据库,是数据信息存储的重要模块,其中包含着对象、实例、属性等。在整个TR069 DB模块中构建数据目录树,如N.NN.NNN.NNNNN等,并在每个数据对象后用“.”标记,但属性后则不需要加标记,所以之前的N.NN.NNN是对象,而NNNNN是属性。从本质上和实际应用层面来说,TR069 DB模块主要就是保存该两类数据类型,即对象和属性。

4 结束语

综上所述,在家庭网关中融入TR069协议对加强网络管理有着重要意义,同时也能够实现物联网功能。TR069协议能够高效完成CPE家庭网关的管理工作,并实现了零配置安装与运行维护,对于未来家庭网关领域发展有着巨大的推动作用。

参考文献:

[1] 何硕. TR069协议在家庭网关上的研究与实现[D]. 武汉: 武汉邮电科学研究院, 2014.

[2] 何硕. 基于TR069协议实现家庭网关的远程管理[J]. 电子测试, 2014(1x): 268-269.

[3] 朱清. 基于TR069协议的远程CPE管理技术的研究与实现[D]. 武汉: 武汉邮电科学研究院, 2015.

[4] 张翔. 基于Tr-069协议的家庭网关管理系统的构建[J]. 复旦大学, 2014(22): 456-457.

[5] 谢凤成. 基于TR069协议的配置管理网络终端的研究[C]// 全国工业控制计算机技术年会. 2010.

[6] 顾雅珍. 基于TR-069协议的网关配置管理系统的设计与实现[D]. 成都:西南交通大学, 2011.

猜你喜欢
实现方法管理
枣前期管理再好,后期管不好,前功尽弃
可能是方法不对
办公室人员尚需制定个人发展规划
浅析铁路通信传输的构成及实现方法
用对方法才能瘦
四大方法 教你不再“坐以待病”!
捕鱼