`
forhope
  • 浏览: 365840 次
  • 性别: Icon_minigender_1
  • 来自: 帝都
社区版块
存档分类
最新评论

TR069 协议基本流程

阅读更多
关键字:CPE操作 ACS操作

CPE发起连接的情况:

  • 初始安装时第一次向接入网发起连接。
  • 上电或重启。
  • 在每一个通知周期间隔。
  • 被optional ScheduleInform method 所指示需要如此执行。
  • 接收到ACS的有效链接请求。
  • ACS的URL发生改变。
  • 一个在修改后需要初始化一个Inform的参数变化时。
  • 不正常终结的会话根据会话重新建立规则发起重建。

CPE操作:
 
1.会话发起
 
  和ACS的连接建立成功后,CPE发送Inform请求到ACS来发起会话。指示CPE当前状态,表示已经准备好接收ACS的请求。
 
  收到一个成功的Inform响应,CPE才会认为会话成功建立。
 
2.接收请求
  
  在一个会话中,收到来自ACS的SOAP请求,CPE必须在下一个发送给ACS的HTTP响应此请求。

3.发送请求

  在一个已经成功发起的会话中,如果CPE要发送一个或多个请求,必须满足以下条件:

  •   最近从ACS收到的HTTP响应不包含SOAP请求。
  •   ACS已经指示HoldRequests为false的SOAP封装包包括(HoldRequests为false、没有HoldRequests头的SOAP封装包、没有SOAP封装的空HTTP响应)
  •   在当前会话已经运行的这段时间,在ACS已经指示HoldRequests为false后,CPE没有发送一个空HTTP POST。

    在一个会话中,如果没有满足上面任何一种情况或者CPE没有给ACS的请求,并且ACS最近发送的HTTP响应没有包含一个SOAP请求,则CPE必须发送一个空HTTP POST。

    一旦最近的HoldRequests为false,且CPE发送了一个空HTTP POST,CPE必须不能在这个会话的接下来的时间里发送任何更多的请求。只能在接下来的会话中发送。

4.会话终止

  满足一下所有条件,CPE必须终止这个事务会话:

      1) ACS没有更多的请求,根据ACS的最近HTTP响应为空判断。
  
      2) CPE没有更多的请求,并已经向ACS发送了一个空HTTP POST,并包括HoldRequests为false。

      3) CPE已经从ACS接收了所有的响应消息。

      4) CPE已经发送了所有的响应消息给ACS作为已经收到的请求的响应。

    如果一个本地规定的不小于30秒的周期内没有收到ACS的HTTP响应,CPE必须认为一个会话被异常终止了。如果CPE接收HTTP响应出错,CPE必须不能在同一个会话中尝试重传这个对应的HTTP请求。

    如果CPE在响应一个Inform请求时收到了一个错误码不是“Retry request”
8005的SOAP层错误,CPE必须认为这个会话已经被异常终止了。

    如果CPE从ACS收到一个HTTP响应来指示不合法的XML,认为此SOAP结构无效或者这个协议已经受到了侵犯,CPE必须认为这个会话已经被异常终止了。

    如果CPE从ACS收到的不是由自己处理的错误状态码的HTTP响应,那么CPE必须认为这个会话已经被异常终止了。

    如果没有以上情况,则继续此会话。

5.事件

   事件即指示,CPE必须至少一次的尝试递交每个事件。一旦CPE递交成功了一个事件,就不能再一次发送同样的事件。ACS必须准备多次接收一个事件,因为ACS已经发送了一个响应,但CPE一直收不到。某些事件可以合法的重复发送,即使已经在一起的会话中发送成功(如periodic,value change)。

    事件类型分为非累计single和累积multiple两种。如果CPE在“1 BOOT”事件还没提交时就重启了,则没有必要在下一个Inform中包含两个“1 BOOT”。但是在“M Download”还没提交时一个下载完成了,下一个Inform里则包含两个“M Download”事件,因为每一个都关联了一个不同的ACS请求。

single和multiple定义如下:

    如果发生了一个single累积行为的事件,这一列事件中下一个Inform中必须只能包含一个此事件码(EventCode)的实例,无论是否有同类型未发送的事件。

    如果发生了一个multiple累积行为的事件,这个新的事件码(EventCode)必须包含在事件列表中,不受同一类型的任何没有提交的事件的影响。它必须不能影响那些没有提交的事件。

  当一个或多个事件跟同一个根源相关联,所有事件必须包含在一个事件列表中。

6.方法重试行为

   如果对来自CPE的请求的响应,CPE收到一个重试请求(响应代码8005),CPE必须在当前会话的下一个HTTP POST中重新发送一个请求,此行为适用于所有的ACS方法。

    如果CPE受到一个非Inform方法和错误码不是8005的响应,CPE必须继续本次会话,且不能尝试重试发送这个方法。

ACS操作

1.会话发起
 
   当收到了CPE的初始Inform请求,如果ACS此时希望发起会话,必须响应一个Inform方法。

2.接收请求
 
    在一个会话中,接收到一个来自CPE的SOAP请求,ACS必须在下一个发送给CPE的HTTP响应中回复这个请求。

    如果ACS希望在这个会话的某段时间内阻止CPE发送请求,可以在每个发送给CPE的封装包中设置HoldRequest为true。直到希望允许来自CPE的请求为止。ACS必须允许CPE的请求直到此会话完成(可以通过HoldRequests或发送空HTTP响应实现)

3.发送请求

   在一个会话中,如果ACS有一个或多个请求,并且最近收到的CPE的HTTP POST中没有包含SOAP请求,ACS必须在下一个HTTP响应中发送这些请求中的一个请求。

   ACS没有给CPE的请求,并且CPE最近发送的HTTP响应没有包含一个SOAP请求,则ACS必须发送一个空HTTP POST。

4.会话终止

   CPE是对ACS的HTTP连接的操纵方,由CPE来负责连接的发起和终止。
  
    ACS必须在以下条件均成立时才认为此会话终止:

      1) CPE已经没有更多的请求。ACS当且仅当中HoldRequests为false时收到CPE的空HTTP POST才能认为满足此条件。

      2) ACS没有更多的请求发送,并且最近发送给CPE的HTTP响应是空的。

      3) ACS已经针对先前收到的所有请求都回复了响应。

      4) ACS已经从CPE收到了所有自己发送的请求的响应消息。

    如果ACS发送最后一个HTTP响应之前以上的条件都满足,则ACS的最后一个HTTP的响应必须是空的。

    如果以上条件并未全部满足,当ACS已经在一个本地定义的不少于30s的时间段内没有收到对应CPE的一个HTTP POST,它可以认为此会话终止。在此情况下,ACS可以通过执行一个连接请求来重建一个会话。

    如果ACS收到一个来自CPE的HTTP POST,且对应的xml不是well-formed,或它包含了一个不在3.5中描述的SOAP错误的格式,ACS必须用一个HTTP 400状态码来回复CPE,并必须认为此会话异常终止。这个错误响应必须不能包含一个SOAP内容,但可以包含可理解的文本内容用于详细描述此错误原因。

    如果ACS从一个它认为已经超时的会话中收到一个请求,或ACS认为发生了一些其他协议的攻击,ACS可以通过用HTTP 400状态码回复CPE来异常终止这个会话。这个HTTP响应必须不能包含任何的soap内容,但可以包含可理解的文本内容用于详细描述此错误原因。

    如果ACS从CPE收到了一个SOAP错误响应,ACS可以选择如下操作之一:

      1) ACS可以强制异常终止此会话。通过HTTP 400状态码

      2) ACS可以正常终止此会话,这样CPE就不会来尝试重建这个会话。为了实现它,ACS不能发送更多的请求。且遵循上面定义的规则来判断此会话何时会终止。

      3) ACS可以继续这个会话,并发送其他的请求到CPE。
分享到:
评论

相关推荐

    TR069和TR098协议文档

    TR069和TR098是网络设备管理的重要工具,它们通过规范化的协议和管理流程,使得服务提供商能够高效、安全地管理大量分布式在网络边缘的设备。了解并熟练运用这些协议,对于网络运维人员和设备制造商来说至关重要,...

    ACS模拟器,测试TR069网管协议不错的小服务端

    "ACS模拟器,测试TR069网管协议不错的小服务端"是指一个轻量级的应用程序,用于模拟实际的ACS服务器功能。这个模拟器可以帮助开发者快速检查TR069客户端的实现是否正确,而不需要依赖于复杂的硬件设备或完整的网络...

    TR069交互协议-TR098节点定义规范

    TR098节点定义规范是TR069协议的一个重要组成部分,主要针对家庭网关设备的管理和控制。TR069是一种广泛应用于远程管理和配置家庭网络设备的协议,特别是路由器和网关设备。该协议旨在提供一个标准接口,使得服务...

    TR069标准协议(中英文档)

    "TR-069.pdf"应该是完整的英文标准协议,包含了所有的细节和附录,而"TR069协议中文版.pdf"则是该协议的中文翻译,虽然缺少附录部分,但仍然覆盖了大部分核心内容,对于理解TR069的基本原理和操作流程非常有帮助。...

    tr069参数节点

    ### TR069参数节点详解 #### 一、引言 随着宽带技术的快速发展与普及,TR-069作为一...通过对TR-098文档中TR069参数节点的深入理解,我们可以更好地利用这项技术来优化宽带网络设备的管理流程,推动宽带技术的发展。

    tr069测试平台以及用户手册

    1. **系统概述**:介绍TR069协议的基本原理,XACS的功能和架构。 2. **安装指南**:描述如何下载、安装和启动XACS软件(如"xacs_211101.exe")。 3. **配置步骤**:指导如何设置服务器参数,连接到CPE设备,配置管理...

    TR069相关基础知识介绍

    TR069通过自动化流程,减少了对人工上门服务的依赖,提高了效率并降低了运营成本。 TR069协议框架包括两个主要部分:受管理的用户设备(如家庭网关、路由器、机顶盒等)和管理服务器(ACS)。用户设备通过TR069协议...

    tr069协议资料cpe

    程序开发人员可以利用这些工具验证自己的TR069实现是否符合协议规范,找出并修复潜在问题。 至于“demo”文件,这通常指的是一个演示或示例,可能是展示TR069协议如何工作的一个实际案例,或者是如何使用特定测试...

    ACS demo for TR069

    1. **TR069协议**:理解TR069的工作流程和CWMP协议,以及其在设备管理中的应用。 2. **ACS服务器**:了解ACS的角色和功能,如何配置和管理CPE设备。 3. **Java JRE**:掌握Java运行环境的安装和配置,以及其在运行...

    TR069(CWMP)开源项目

    在使用这些开源项目时,开发者首先需要了解TR069/CWMP协议的基本概念,包括其数据模型、管理会话流程、参数集定义等。然后,根据项目需求选择合适的子项目,并结合gsoap库进行集成。在开发过程中,可能会涉及以下...

    TR 069协议

    - **ACS/CPE管理程序**:在CPE端和ACS端的应用程序中实现了TR069协议。 在这一层次结构中,ACS扮演HTTP服务器的角色,而CPE则是HTTP客户端。RPC方法使用可扩展标记语言(XML)进行描述,确保了数据的标准化和可读性。...

    TR069中文版_修正版1

    通过阅读《TR069中文版_修正版1》这本书,读者将能够理解TR069协议的基本原理,熟悉其工作流程,并掌握实际操作中的技巧,从而在管理家庭和企业网络设备时更加得心应手。对于想要进入这一领域的IT从业者或网络管理员...

    TR069原版英文文档,中文文档

    TR069是一种通信协议,全称为Technical Report 069,由DSL论坛(现为Broadband Forum)制定,主要用于设备管理和服务提供商的自动化配置。它提供了CPE(Customer Premises Equipment,用户驻地设备)与远程管理...

    TR069客户端fishcore

    TR069客户端fishcore是针对Linux操作系统设计的一款软件,其主要功能是使设备能够与遵循TR-069(Technical Report 069)协议的服务器进行通信。TR-069是一种由DSL论坛(现为Broadband Forum)制定的技术标准,用于...

    tr069中文规范

    ### TR-069中文规范详解 #### 一、引言 TR-069(Technical Report 069)是DSL论坛发布的CPE WAN管理...对于初学者而言,了解TR-069的基本原理和工作流程是非常有帮助的,这有助于他们更好地掌握网络管理的核心技能。

    tr104协议的原版(英文)

    通过扩展TR-069协议,TR-104不仅定义了基本的配置参数,还针对不同的VoIP协议(如SIP、MGCP、H.323等)定义了具体的配置细节。这对于提升VoIP服务质量、简化运维流程具有重要意义。同时,通过遵循统一的标准,有助于...

    TR069与中国CPE远程管理标准

    这一需求催生了TR069标准,即CPE广域网管理协议(CPE WAN Management Protocol),由DSL论坛提出。同时,中国的信息产业部门也制定了自己的CPE远程管理标准,旨在解决类似的问题。 #### TR069简介 TR069是一种专为...

    基于TR-069的用户终端设备远程配置解决方案

    TR-069规范定义了设备和服务器之间的交互流程,包括设备发现、初始化配置、定期状态报告和远程故障处理等。通过TR-069,运营商可以实现对终端设备的自动化运维,大大提高了效率,降低了运营成本。 展望未来,随着...

Global site tag (gtag.js) - Google Analytics