Broadband Forum User Services Platform (USP) Data Models

The Broadband Forum defines several data models for use with the User Services Platform (USP) (TR-369). These data models contain objects, parameters, commands, and events that describe the many different service elements that can be exposed via USP Agents.

USP data models are divided into two types: Root and Service. The root data model, Device, is used to describe the major functions of network aware devices, including interfaces, software/firmware, diagnostics, components common to USP and other services, and the basic Agent information necessary to the operation of USP.

Service data models describe modular functionality that allow the extension of the root data model on a device (under Device.Services.) to provide particular services, such as a voice service, set top box service, network attached storage, smart home objects, etc.

Each data model is defined by a Name:Version syntax. The objects, parameters, commands, and events that a particular Agent supports from its implementation of the data model define what is reported to Controllers via the GetSupportedDM message.

How do I use these?

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

These data models are based on the Broadband Forum's data models for the CPE WAN Management Protocol, also known as "TR-069", with a robust development history.

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

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

List of Data Models

Current Data Models

Data Model Version XML HTML Description Approval Date Specification
Device:2 2.15 tr-181-2-15-1-usp-full.xml Full

April 2022: Corrigendum 1

  • Removed items that were erroneously added to the User:1 profile and instead added them to a new User:2 profile
  • Fixed the BulkData Profile Parameter reference; it's a string, not a formal path reference
  • Fixed the InstallDU() command's ExecutionEnvRef argument; it references an execution environment, not an execution unit
  • Fixed the VendorConfigFile description's CWMP/USP-specific text

January 2022: Original

  • Converted the document to markdown and extended the Wi-Fi Theory of Operation
  • Split the XML into multiple smaller files (this is just housekeeping; it doesn't affect how the model is used)
  • Allowed USP to access the EnableCWMP parameter (so a USP Controller can enable/disable CWMP access)
  • Added Device.Routing.Babel for the RFC 8966 Babel routing protocol
  • Added Device.DOCSIS for modeling DOCSIS 3.0 and 3.1 interfaces
  • Added Device.Users.Group, Device.Users.Role and Device.Users.SupportedShell tables for modeling system users
  • Improved the Wi-Fi data model by adding Data Elements R2 parameters, commands and events, moving MultiAP parameters and commands into the Data Elements structure, and by deprecating AIFSN, ECWMin, ECWMax and TxOpMax
  • Clarified the LockoutPeriod and Retries ControllerTrust parameters that impact how the RequestChallenge() and ChallengeResponse() data model commands handle failed attempts
  • Clarified bulk data profile, threshold and periodic statistics USP Controller permissions: only the USP Controller that created the profile will receive the corresponding events
  • Added a bulk data profile ForceCollection() command
  • Added support for a new bulk data collection mechanism that utilizes MQTT as the transport protocol
  • Removed old bulk data collection protocols (Streaming and File) from the USP data model (they don't apply to USP)
  • Updated the IPLayerCapacity() test to support TR-472 Issue 2
  • Added an enumeration to indicate when a Boot! event was due to a factory reset
  • Added an enumeration to distinguish encrypted and unencrypted USP MQTT WebSocket connections
  • Added an Order parameter to provide guidance to USP Agents on which MTP to use when communicating with a Controller
  • Clarified that Device.Optical is intended for generic optical interfaces and is not intended to model anything specific to IEEE or ITU-T PON technologies (objects specific to such technologies may be added in future versions of the data model)
  • Clarified the meaning and usage of the Device.Ethernet.Interface and Device.Ethernet.Link objects (also allowed the Ethernet Link MACAddress parameter to be written)
  • Improved (and made more consistent) the marking of (and explanation of) deprecated items, and how such items should progress from being deprecated to obsoleted to deleted
  • Added a Baseline:4 profile that doesn't include Device.LANConfigSecurity (it relates to the now-deprecated TR-064 LAN management protocol)
  • Many minor improvements to object, parameter, command and event descriptions
  • Replaced the non-standard dmr:version attribute with the version attribute (which supports three levels of version)
  • Switched to DMR (data model report) schema v1.0, which supports multi-line paragraphs, and wrapped all lines to 80 characters maximum
April 2022

Device Data Model

TR-181 Issue 2 Amendment 15
Diff
FAPService:2 2.1 tr-196-2-1-2-usp-full.xml Full

August 2015:

  • Added parameters for 3GPP SA5 Rel 11 and 12 (TS 32.452, TS 32.453)
  • Added parameters for 3GPP SA5 Rel 13 (CR S5-145293)
  • Added parameters for 3GPP SA5 Rel 13 (CR S5-146268)

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)

July 2022: Corrigendum 2

  • Deprecated Blacklisted parameters and replaced with Blocklisted parameters
July 2022 TR-196 Issue 2
Diff
StorageService:1 1.3 tr-140-1-3-1-usp-full.xml Full

May 2017:

  • Update file system and connection enumerations
  • Added SMART data model

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)
September 2019 TR-140 Amendment 3
Diff
STBService:1 1.4 tr-135-1-4-1-usp-full.xml Full

August 2015:

  • Added objects for Service Monitoring of Events

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)
September 2019 TR-135 Amendment 3
Diff
VoiceService:2 2.0 tr-104-2-0-2-usp-full.xml Full

March 2014:

  • Original

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)

January 2020: Corrigendum 2

  • Clarified meaning of SessionID and added new SIPSessionID
January 2020 TR-104 Issue 2

Root Data Models

Data Model Version XML HTML Description Approval Date Specification
Device:2 2.15 tr-181-2-15-1-usp-full.xml Full

April 2022: Corrigendum 1

  • Removed items that were erroneously added to the User:1 profile and instead added them to a new User:2 profile
  • Fixed the BulkData Profile Parameter reference; it's a string, not a formal path reference
  • Fixed the InstallDU() command's ExecutionEnvRef argument; it references an execution environment, not an execution unit
  • Fixed the VendorConfigFile description's CWMP/USP-specific text

January 2022: Original

  • Converted the document to markdown and extended the Wi-Fi Theory of Operation
  • Split the XML into multiple smaller files (this is just housekeeping; it doesn't affect how the model is used)
  • Allowed USP to access the EnableCWMP parameter (so a USP Controller can enable/disable CWMP access)
  • Added Device.Routing.Babel for the RFC 8966 Babel routing protocol
  • Added Device.DOCSIS for modeling DOCSIS 3.0 and 3.1 interfaces
  • Added Device.Users.Group, Device.Users.Role and Device.Users.SupportedShell tables for modeling system users
  • Improved the Wi-Fi data model by adding Data Elements R2 parameters, commands and events, moving MultiAP parameters and commands into the Data Elements structure, and by deprecating AIFSN, ECWMin, ECWMax and TxOpMax
  • Clarified the LockoutPeriod and Retries ControllerTrust parameters that impact how the RequestChallenge() and ChallengeResponse() data model commands handle failed attempts
  • Clarified bulk data profile, threshold and periodic statistics USP Controller permissions: only the USP Controller that created the profile will receive the corresponding events
  • Added a bulk data profile ForceCollection() command
  • Added support for a new bulk data collection mechanism that utilizes MQTT as the transport protocol
  • Removed old bulk data collection protocols (Streaming and File) from the USP data model (they don't apply to USP)
  • Updated the IPLayerCapacity() test to support TR-472 Issue 2
  • Added an enumeration to indicate when a Boot! event was due to a factory reset
  • Added an enumeration to distinguish encrypted and unencrypted USP MQTT WebSocket connections
  • Added an Order parameter to provide guidance to USP Agents on which MTP to use when communicating with a Controller
  • Clarified that Device.Optical is intended for generic optical interfaces and is not intended to model anything specific to IEEE or ITU-T PON technologies (objects specific to such technologies may be added in future versions of the data model)
  • Clarified the meaning and usage of the Device.Ethernet.Interface and Device.Ethernet.Link objects (also allowed the Ethernet Link MACAddress parameter to be written)
  • Improved (and made more consistent) the marking of (and explanation of) deprecated items, and how such items should progress from being deprecated to obsoleted to deleted
  • Added a Baseline:4 profile that doesn't include Device.LANConfigSecurity (it relates to the now-deprecated TR-064 LAN management protocol)
  • Many minor improvements to object, parameter, command and event descriptions
  • Replaced the non-standard dmr:version attribute with the version attribute (which supports three levels of version)
  • Switched to DMR (data model report) schema v1.0, which supports multi-line paragraphs, and wrapped all lines to 80 characters maximum
April 2022

Device Data Model

TR-181 Issue 2 Amendment 15
Diff
2.14 tr-181-2-14-1-usp-full.xml Full

November 2020: Original

  • Added WWC (5G Wireline Wireless Convergence), PDU (Protocol Data Unit) and FWE (5G Wireline wireless Encapsulation) top-level objects
  • Updated Cellular object to be applicable to 5G Residential Gateways
  • Extended support for TR-471 IP-layer metrics, including new IP-layer capacity test
  • Supported LAN device time-based access-control
  • Various Wi-Fi improvements

November 2020: Corrigendum 1

  • Fixed Device.LocalAgent.Subscription.{i}.ID constraints
  • Removed duplicate remarks about CWMP BOOTSTRAP from descriptions
  • Fixed typos
November 2020 TR-181 Issue 2 Amendment 14
Diff
2.13 tr-181-2-13-0-usp-full.xml Full

Added support for WFA Data Elements

Added support for Multi AP

Added support for WPA3 and 802.11ax

Added support for MQTT 5.0

Added support for Package capture diagnostics

Updates for TR-369 MQTT support

Added support for IoT Data model

September 2019 TR-181 Issue 2 Amendment 13
Diff
2.12 tr-181-2-12-0-usp-full.xml Full

Added USP Local agent support (TR-369)

Added Firmware Image support

Added Ethernet Link Aggregation Group

Added additional Wi-Fi and WAN statistics

Added support for Two-Way Active Measurement Protocol (TWAMP) reflector

Added support for Layer Two Tunneling Protocol version 3 (L2TPv3)

Added support for Virtual eXtensible Local Area Network (VXLAN) tunnels

Added support for Broadband Access Service Attributes and Performance Metrics measurement test framework (BASAPM)

Added support for Large-Scale Measurement of Broadband Performance (LMAP)

March 2018 TR-181 Issue 2 Amendment 12
Diff

Service Data Models

Data Model Version XML HTML Description Approval Date Specification
FAPService:2 2.1 tr-196-2-1-2-usp-full.xml Full

August 2015:

  • Added parameters for 3GPP SA5 Rel 11 and 12 (TS 32.452, TS 32.453)
  • Added parameters for 3GPP SA5 Rel 13 (CR S5-145293)
  • Added parameters for 3GPP SA5 Rel 13 (CR S5-146268)

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)

July 2022: Corrigendum 2

  • Deprecated Blacklisted parameters and replaced with Blocklisted parameters
July 2022 TR-196 Issue 2
Diff
StorageService:1 1.3 tr-140-1-3-1-usp-full.xml Full

May 2017:

  • Update file system and connection enumerations
  • Added SMART data model

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)
September 2019 TR-140 Amendment 3
Diff
STBService:1 1.4 tr-135-1-4-1-usp-full.xml Full

August 2015:

  • Added objects for Service Monitoring of Events

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)
September 2019 TR-135 Amendment 3
Diff
VoiceService:2 2.0 tr-104-2-0-2-usp-full.xml Full

March 2014:

  • Original

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)

January 2020: Corrigendum 2

  • Clarified meaning of SessionID and added new SIPSessionID
January 2020 TR-104 Issue 2

Schema Files

Document Filename Description Approval Date Specification
USP Protocol Buffers Schemas usp-record-1-2.proto

USP v1.2 Record Schema

Added Connect and Disconnect Record Types

January 2022 TR-369 Amendment 2
usp-record-1-1.proto USP v1.1 Record Schema (no changes from v1.0) September 2019 TR-369 Amendment 1
usp-record-1-0.proto USP v1.0 Record Schema April 2018 TR-369
usp-msg-1-2.proto

USP v1.2 Message Schema

Added max_depth as a new input argument to the Get message

Enhanced the GetSupportedDM response to allow return of parameter types, parameters that will be ignored for value change notifications, divergent object paths, and command types

January 2022 TR-369 Amendment 2
usp-msg-1-1.proto USP v1.1 Message Schema (no changes from v1.0) September 2019 TR-369 Amendment 1
usp-msg-1-0.proto USP v1.0 Message Schema April 2018 TR-369
Data Model Definition Schema (DM Schema) cwmp-datamodel-1-9.xsd

Allowed the version attribute in component references

Allowed minEntries and maxEntries in command and event argument objects

Allowed status attribute in profile command/event arguments

Added secured attribute

January 2022 TR-106 Amendment 11
cwmp-datamodel-1-8.xsd Allowed command attributes, e.g. mandatory, in component definitions November 2020 TR-106 Amendment 10
cwmp-datamodel-1-7.xsd Supported implementation defaults, version attribute, description templates, writeOnceReadOnly access type and the decimal datatype September 2019 TR-106 Amendment 8
cwmp-datamodel-1-6.xsd Supported USP commands, events and mount points March 2018
Data Model Report Schema (DMR Schema) cwmp-datamodel-report.xsd

Nov 2008: Original

Sep 2009: Added noUniqueKeys

September 2009 TR-106 Amendment 3
cwmp-datamodel-report-1-0.xsd

Changed version number to 1-0, which indicates new markdown-friendly wrapped descriptions

Added customNumEntriesParameter, noDiscriminatorParameter and noUnionObject to suppress various warnings

January 2022 TR-106 Amendment 11
Device Type Schema (DT Schema) cwmp-devicetype-1-6.xsd Updated to reference latest published DM Schema version (v1.9) January 2022 TR-106 Amendment 11
cwmp-devicetype-1-5.xsd

Updated to reference latest published DM Schema version (v1.8)

Supported event and command structures in device type files

November 2020 TR-106 Amendment 10
cwmp-devicetype-1-4.xsd Updated to reference latest published DM Schema version (v1.7) September 2019 TR-106 Amendment 8
cwmp-devicetype-1-3.xsd Many minor updates and clarifications September 2013 TR-106 Amendment 7
DT (Device Type) Features Schema (DTF Schema) cwmp-devicetype-features.xsd Original September 2009 TR-106 Amendment 3

Support Files

Document XML HTML Description Approval Date Specification
Data Model Data Types tr-106-types.xml Full

Added datatypes from versioned files

Added CWMP and USP versions of the Alias datatype

Added URI, URL and URL datatypes

September 2019  
Data Model Bibliographic References tr-069-biblio.xml Full

Added references from versioned files (grouped by category and sorted within category)

Updated references for convention that "TR-nnn" means the latest Amendment and Corrigendum

Added references in support of Device:2.13 DM Instances

Added references for 3GPP 5G standards in support of Device:2.14 DM Instances

September 2019  

Outdated Corrigenda

Document XML Description Approval Date Specification
Femto Access Point Service Data Model tr-196-2-1-1-usp.xml

August 2015:

  • Added parameters for 3GPP SA5 Rel 11 and 12 (TS 32.452, TS 32.453)
  • Added parameters for 3GPP SA5 Rel 13 (CR S5-145293)
  • Added parameters for 3GPP SA5 Rel 13 (CR S5-146268)

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)

July 2022: Corrigendum 2

  • Deprecated Blacklisted parameters and replaced with Blocklisted parameters
July 2022 TR-196 Issue 2
Device Data Model for TR-069 tr-181-2-15-0-usp.xml

April 2022: Corrigendum 1

  • Removed items that were erroneously added to the User:1 profile and instead added them to a new User:2 profile
  • Fixed the BulkData Profile Parameter reference; it's a string, not a formal path reference
  • Fixed the InstallDU() command's ExecutionEnvRef argument; it references an execution environment, not an execution unit
  • Fixed the VendorConfigFile description's CWMP/USP-specific text

January 2022: Original

  • Converted the document to markdown and extended the Wi-Fi Theory of Operation
  • Split the XML into multiple smaller files (this is just housekeeping; it doesn't affect how the model is used)
  • Allowed USP to access the EnableCWMP parameter (so a USP Controller can enable/disable CWMP access)
  • Added Device.Routing.Babel for the RFC 8966 Babel routing protocol
  • Added Device.DOCSIS for modeling DOCSIS 3.0 and 3.1 interfaces
  • Added Device.Users.Group, Device.Users.Role and Device.Users.SupportedShell tables for modeling system users
  • Improved the Wi-Fi data model by adding Data Elements R2 parameters, commands and events, moving MultiAP parameters and commands into the Data Elements structure, and by deprecating AIFSN, ECWMin, ECWMax and TxOpMax
  • Clarified the LockoutPeriod and Retries ControllerTrust parameters that impact how the RequestChallenge() and ChallengeResponse() data model commands handle failed attempts
  • Clarified bulk data profile, threshold and periodic statistics USP Controller permissions: only the USP Controller that created the profile will receive the corresponding events
  • Added a bulk data profile ForceCollection() command
  • Added support for a new bulk data collection mechanism that utilizes MQTT as the transport protocol
  • Removed old bulk data collection protocols (Streaming and File) from the USP data model (they don't apply to USP)
  • Updated the IPLayerCapacity() test to support TR-472 Issue 2
  • Added an enumeration to indicate when a Boot! event was due to a factory reset
  • Added an enumeration to distinguish encrypted and unencrypted USP MQTT WebSocket connections
  • Added an Order parameter to provide guidance to USP Agents on which MTP to use when communicating with a Controller
  • Clarified that Device.Optical is intended for generic optical interfaces and is not intended to model anything specific to IEEE or ITU-T PON technologies (objects specific to such technologies may be added in future versions of the data model)
  • Clarified the meaning and usage of the Device.Ethernet.Interface and Device.Ethernet.Link objects (also allowed the Ethernet Link MACAddress parameter to be written)
  • Improved (and made more consistent) the marking of (and explanation of) deprecated items, and how such items should progress from being deprecated to obsoleted to deleted
  • Added a Baseline:4 profile that doesn't include Device.LANConfigSecurity (it relates to the now-deprecated TR-064 LAN management protocol)
  • Many minor improvements to object, parameter, command and event descriptions
  • Replaced the non-standard dmr:version attribute with the version attribute (which supports three levels of version)
  • Switched to DMR (data model report) schema v1.0, which supports multi-line paragraphs, and wrapped all lines to 80 characters maximum
April 2022

Device Data Model

TR-181 Issue 2 Amendment 15
Device:2 Root Data Model for USP (TR-369) tr-181-2-14-0-usp.xml

November 2020: Original

  • Added WWC (5G Wireline Wireless Convergence), PDU (Protocol Data Unit) and FWE (5G Wireline wireless Encapsulation) top-level objects
  • Updated Cellular object to be applicable to 5G Residential Gateways
  • Extended support for TR-471 IP-layer metrics, including new IP-layer capacity test
  • Supported LAN device time-based access-control
  • Various Wi-Fi improvements

November 2020: Corrigendum 1

  • Fixed Device.LocalAgent.Subscription.{i}.ID constraints
  • Removed duplicate remarks about CWMP BOOTSTRAP from descriptions
  • Fixed typos
November 2020 TR-181 Issue 2 Amendment 14
VoiceService:2.0 for USP tr-104-2-0-1-usp.xml

March 2014:

  • Original

September 2019: Corrigendum 1

  • Added USP support (split XML into common, CWMP and USP files)

January 2020: Corrigendum 2

  • Clarified meaning of SessionID and added new SIPSessionID
January 2020 TR-104 Issue 2