What is TR-069 ACS
By definition, TR-069 stands for Technical Report published by the Broadband Forum (formally known as DSL forum) and the latest amendment is TR-069 version-5. It basically defines the CPE WAN Management Protocol or CWMP. Initially, CWMP was developed to support broadband services providers to deploy and manage CPE (customer premises equipment) in home-based scenarios and business-oriented networks.
But we before starting with TR-069. Let’s go through the below terminologies.
ACS: Auto-Configuration Server. A network element in the broadband network architecture that supports auto-configuration of the CPE.
CPE: By Customer Premises Equipment, we mean any TR-069-operated device and therefore covers both managed internet Gateway Devices and managed LAN-side end devices as shown in the below diagram. All CPE regardless of type (bridge, router, Modems, gateways, set-top boxes, and VOIP phones for the end-users) use an IP address concept which is the layer-III concept to communicate with an ACS. Any customer premises equipment/device can only interact with a single server at a time.
Essentially, TR-069 particularizes communication between the Auto-Configuration Server, and ACS, and one or more CWMP end-points, normally located on devices in a BB user’s home network architecture. And this thing is achieved with a number of Remote Procedure Calls or RPCs which is explained in detail below.
What is RPC :
RPC stands for remote procedure call which is basically away or you can say a mechanism through which
- CPE is configured by reading/writing parameters in ACS.
- Report logs and historical events of CPE.
Broadly there are two RPS methods defined. One for ACS and one for CPE. There are a few generic methods as well that are supported by both ACS and CPE.
Below is the RPC method for CPE.
- “GetRPCMethods”
- “SetParameterValues”
- “GetParameterValues”
- “GetParameterNames”
- “SetParameterAttributes”
- “GetParameterAttributes”
- “AddObject”
- “Delete Object”
- “Reboot”
- “Download”
And below are the RPC Method for ACS.
- “Inform”
- “GetRPCMethods”
- “Transfer Complete”
TR-069 Functional Components:
The below diagram clearly describes the core functions of TR-069. These are the core pillar of the management of TR-069.
TR-069 Data Models:
For TR-069, there are a lot of TR defined. The below diagram describes them all. These are the type of data that operates between ACS and server. There is a list of Models defined based on the TRS.
TR-069: Management Session:
The first thing is the initiation and it all starts, when CPE initiates a TCP session with ACS and a secure connection is assigned for further communication. The session is initiated by CPE to send inform RPC messages that not only tell you the reason for session initiation. HTTP provides support for this communication.
In the HTTP Response, the ACS basically sends acknowledgment as an Inform Response. Which in other words is a response message for the received RPC message indicating the two-way communication.
The CPE will keep sending inform RPCs until the session starts. So to avoid any more RPC messages, the CPE sends an empty HTTP Post indicating that the session will start soon and be patient. In response, ACS will send remote procedure calls to the CPE, like “GetParameterValues”.
The CPE will send the “GetParameterResponse” in response to ACS which contains the date it requested from CPE. To receive more RPC during the same session which was initially blocked by the ACS, ACS will send “SetParameterValues” to change CPE status. The session will end, once all RPC messages exchange is complete. ACS will send an “empty HTTP response”. Same as CPE sends “empty HTTP Post” to end the session.
Related Product
1GE LAN Port GPON SFU, Compliant to TR-069 protocol