TR-069 is a technical specification that defines an application layer protocol for remote management of end-user devices. It was published by the Broadband Forum and was entitled CPE WAN Management Protocol (CWMP). It provides the communication between CPE and Auto Configuration Servers (ACS). An ACS can manage a device, trouble shoot, configure, upgrade etc. TR-69 uses common web protocols such as HTTP, TCP-IP, SOAP, XML-RPCs to exchange information.
- Firmware upgrade management
Register device to Auto-Configuration Server (ACS) using Inform notification
- Periodically send device information to ACS using Inform notification
- Forced Inform for required parameters
- Allow ACS to configure periodic Inform interval.
- Allow ACS to reach devices that are connected behind NAT using STUN + UDP NAT traversal
- (future) Allow ACS to reach devices that are connected behind NAT using XMPP
- Retrieve device diagnostics/parameters using GetParameterValues() method
- Set device parameters using SetParameterValues() method
- Factory reset using FactoryReset method
- Device reboot using Reboot method
- SSL/TLS 1.2 (Transport Layer Security) per RFC5246 to encrypt communications with ACS
Since the Client is non-addressable from the public network, tr-069 and STUN creates and maintains a lightweight connection between the tr-069 server and agent to allow for tr-069-server initiated commands to be sent to the Client in real-time.
Sample message flow
The CPE is responsible for establishing the session to the server. The CPE keeps sending HTTP POST requests during the session. The session is closed as soon as both CPE & ACS have indicated that they have nothing more to send (response or new RPC)
The RDK tr69 client is developed by Dimark which has the following key features
- The Dimark TR-069 client is typically provided as ANSI C source code that runs on embedded Linux, with the API designed to ease the integration of the client into existing environments
- The client incorporates an abstraction layer that will speed implementation as well as make the addition of many new features, upgrades and updates virtual drop-ins.
- The client incorporates all updates that have resulted from more than eight years of field use, feature requests and customer deployments.
Gliffy Diagram macroId 888cadb7-8110-4098-b6f2-cae54d64ec55 name Implementation Details pagePin 1
Data Model (version 0.9) - requires TR-181-2-2-0 Device-2.3 + TR-135 STB Service + Custom settop data model
- TR-098: Internet Gateway Device Data Model for TR-069
- TR-104: Provisioning Parameters for VoIP CPE
- TR-135: Data Model for a TR-069 Enabled STB
- TR-140: TR-069 Data Model for Storage Service Enabled Devices
- TR-143: Enabling Network Throughput Performance Tests and Statistical Monitoring
- TR-181: Device Data Model for TR-069
The Inform message contains:
The Inform message at boot contains:
- Event Code = BootStrap
- Parameter List
The following parameters must be supported for Forced Inform:
The Download message contains: