TR069协议向导—— 一个帮助你了解TR069协议的简明教程(二)

2013/09/05 12:49
阅读数 6.4K

上接“TR069协议向导(一)”

6.TR069协议的RPC函数(或称RPC方法)

  如上所述ACS与CPE之间通过TR069协议特有的RPC方法进行互操作。
  CPE函数由ACS调用,用来对CPE进行管理如:设置CPE参数、获取CPE参数、硬件升级、重启设备等;
  ACS函数由CPE调用,用来向ACS上报状态信息,请求硬件镜像文件下载(用来升级硬件)等等。
  这些方法中有些是必须的有些是可选的(Required/Optional)

 

7.CPE函数参数(TR069协议的数据模型)
  网络架构上包含两种设备类型,因此包含两套数据模型:
   (1)网络网关设备(Internet Gateway Device),如路由器,缩写为IGD DM(Data Model)
   (2)网关下的普通局域网设备(LAN Device),如可视电话,缩写为Device DM(Data Model) 
  TR069协议定义了其中网关设备的数据模型
    参数名  :使用由类似树型的点分层关系组织起来。树干为需要配置的对象,树叶为具体的配置参数,所有配置参数都具有是否可读写属性。  
              如:InternetGatewayDevice.IPPingDiagnostics.Interface
    参数类型:基于SOAP的数据类型

8.函数具体功能(TR069协议的功能)
 (1)自动配置和动态业务服务(Auto-configuration and dynamic service provisioning)
      TR069协议规定了ACS可以在CPE第一次上线或上线后的任何时候对CPE进行配置如:ACS使用CPE函数中的set方法对CPE进行配置。
 (2)软件和硬件镜像管理(Software/Firmware image management)
      TR069协议规定了软件和硬件版本号鉴权机制,和下载触发机制(CPE和ACS都可以主动发起下载),以及下载失败后的通知机制
        如:ACS使用CPE函数中的download和upload方法,下载新的版本以供升级设备或上传当前版本软件镜像文件
 (3)状态和性能监控(Status and performance monitoring)
      TR069协议规定了一种CPE随时(有些地方翻译为“动态”)上报给(有些地方翻译为“通知”)ACS它自身状态的机制
        如:CPE使用ACS函数的inform方法:CPE通过定时调用ACS的inform方法上报硬件状态信息

                           [Inform SOAP包信息]

DeviceID    标识CPE
Event    此次Inform发起的原因 如:2 PERIODIC CPE周期性的发起
Inform调用,上报状态
MaxEnvelopes    HTTP Response 可携带的SOAP包(信封)      
CurrentTime    CPE 当前时间
RetryCount    这次Session最大的重复连接数
ParameterList    这次Inform 函数所代参数

                          [一个Inform SOAP包例子]

    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:cwmp="urn:dslforum-org:cwmp-1-0">
    <SOAP-ENV:Header>
    <cwmp:ID SOAP-ENV:mustUnderstand="1">
    inform
    </cwmp:ID>
    </SOAP-ENV:Header>
    <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <cwmp:Inform>
    <DeviceId>
    <Manufacturer>
    XXXXXXXXXX
    </Manufacturer>
    <OUI>
    XXXXXXXXXX
    </OUI>
    <ProductClass>
    XXXXXXXXXX
    </ProductClass>
    <SerialNumber>
    000000000001
    </SerialNumber>
    </DeviceId>
    <Event xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="cwmp:EventStruct[1]">
    <EventStruct>
    <EventCode>
    2 PERIODIC
    </EventCode>
    <CommandKey>
    </CommandKey>
    </EventStruct>
    </Event>
    <MaxEnvelopes>
    1
    </MaxEnvelopes>
    <CurrentTime>
    2009-01-15T06:28:06
    </CurrentTime>
    <RetryCount>
    0
    </RetryCount>
    <ParameterList xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="cwmp:ParameterValueStruct[7]">
    <ParameterValueStruct>
    <Name>
    InternetGatewayDevice.DeviceInfo.SpecVersion
    </Name>
    <Value xsi:type="xsd:string">
    4.0
    </Value>
    </ParameterValueStruct>
    </ParameterList>
    </cwmp:Inform>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>

 (4)诊断(Diagnostics)
      支持ACS到CPE的诊断,来解决连通或业务问题,或执行预定义的诊断测试功能
      如:ACS使用CPE函数中的get方法:首先ACS会调用CPE的set方法,set一些诊断需求如IPPing如:InternetGatewayDevice.IPPingDiagnostics.Interface
      要求CPE对自身诊断,然后ACS通过CPE的get方法获得诊断结果

9.TR069协议的安全性
  TR069协议支持使用“SSL/TLS”的证书鉴权机制,CPE必须使用ACS提供的证书来鉴
权ACS。
  如果CPE没有经过SSL/TLS认证,ACS就必须使用HTTP对CPE进行认证;如果已经通过“SSL/TLS”认证,ACS可以使用“HTTP basic”认证或“HTTP digest”认证

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
2 收藏
0
分享
返回顶部
顶部