Designed for remote management of customer-premises equipment (CPE) connected to an IP network, CWMP is an application layer protocol. It stands for CPE WAN Management Protocol (CWMP) and is designed for communication between the Auto Configuration Service (ACS) and CPE. This serves a range of purposes including enabling auto-configuration, image management for firmware or software, status and performance management, diagnostics, and software module management.

The application layer protocol was defined in the TR-069 Technical Report by the Broadband Forum. There are different data models that have also been defined by the Broadband Forum, which we will take a closer look at in this article.

Working within an integrated framework, this bidirectional protocol provides safe auto-configuration as well as control of other CPE management functionality. Some of the devices it deals with include gateway, routers, modems, and a range of end-user equipment.

The technical specifications are published and managed by the Broadband Forum. The TR-069 Technical Report was first published back in 2004. However, since that time there have been a number of updates and amendments taking place over the years. This includes amendments that took place between 2006 and 2013.

In this article, we will touch upon the CWMP data models and also how to use the data models.

CWMP Data Models

There are several data models that can be used as defined by the Broadband Forum. The defined data models come with parameters that describe the variety of functions they offer when it comes to CWMP managed devices. The models fall under one of two main categories, which are root and service data models. These are: 

  •         Root
  •         Device

The Device data model describes the functionality of a network-aware device. This includes diagnostics, interfaces, software and firmware, and other CWMP components. Service data models are those with the functionality to root data models to be extended to devices and provide specific services including set-top box services, voice services, and network-attached storage.

How to Use the Data Models

Use the CWMP data model files to define and implement what exists in your solution’s Supported Data Model. This will help the ACS to learn what your CPE is capable of. The data models will also describe how your CPE’s Instantiated Data Model will behave during operation.

View the HTML files on this page for a human-readable look at the data model documentation.

Use the XML files in this repository when generating code and performing data validation.

These data models are the basis for the Broadband Forum’s data models for the User Services Platform (USP).

The source files used to build the complete CWMP data model can be found on GitHub.

A ZIP file containing all the latest data models can be downloaded from here.

Turn to the Experts

If you want to see CWMP in action, you can turn to the experts to find out more. Get in touch with Axiros to learn more about this protocol and how you can use it.