Broadband Forum

    DATA MODEL DEFINITION


TR-106 Amendment 1 (changes)

Notice

The Broadband Forum is a non-profit corporation organized to create guidelines for broadband network system development and deployment. This Broadband Forum XML Document has been approved by members of the Forum. This Broadband Forum XML Document is not binding on the Broadband Forum, any of its members, or any developer or service provider. This Broadband Forum XML Document is subject to change, but only with approval of members of the Forum. This XML Document is copyrighted by the Broadband Forum, and all rights are reserved. Portions of this XML Document may be copyrighted by Broadband Forum members.

This Broadband Forum XML Document is provided AS IS, WITH ALL FAULTS. ANY PERSON HOLDING A COPYRIGHT IN THIS BROADBAND FORUM XML DOCUMENT, OR ANY PORTION THEREOF, DISCLAIMS TO THE FULLEST EXTENT PERMITTED BY LAW ANY REPRESENTATION OR WARRANTY, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY:

By using this Broadband Forum XML Document, users acknowledge that implementation may require licenses to patents. The Broadband Forum encourages but does not require its members to identify such patents. For a list of declarations made by Broadband Forum member companies, please see http://www.broadband-forum.org. No assurance is given that licenses to patents necessary to implement this XML Document will be available for license at all or on reasonable and non-discriminatory terms.

ANY PERSON HOLDING A COPYRIGHT IN THIS BROADBAND FORUM XML DOCUMENT, OR ANY PORTION THEREOF, DISCLAIMS TO THE FULLEST EXTENT PERMITTED BY LAW (A) ANY LIABILITY (INCLUDING DIRECT, INDIRECT, SPECIAL, OR CONSEQUENTIAL DAMAGES UNDER ANY LEGAL THEORY) ARISING FROM OR RELATED TO THE USE OF OR RELIANCE UPON THIS XML DOCUMENT; AND (B) ANY OBLIGATION TO UPDATE OR CORRECT THIS XML DOCUMENT.

Broadband Forum XML Documents may be copied, downloaded, stored on a server or otherwise re-distributed in their entirety only, and may not be modified without the advance written permission of the Broadband Forum.

The text of this notice must be included in all copies.

Table of Contents

Data Types

The parameters defined in this specification make use of a limited subset of the default SOAP data types [SOAP1.1]. The complete set of data types, along with the notation used to represent these types, is listed in [Section 3.2/TR-106a4]. The following named data types are used by this specification.

Data Type Base Type Description
IPAddress string All IPv4 addresses and subnet masks are represented as strings in IPv4 dotted-decimal notation. All IPv6 addresses MUST be represented using any of the 3 standard textual representations as defined in [RFC3513] Sections 2.2.1, 2.2.2 and 2.2.3. Both lower-case and upper-case letters can be used. Use of the lower-case letters is RECOMMENDED. Examples of valid IPv6 address textual representations:

  • 1080:0:0:800:ba98:3210:11aa:12dd
  • 1080::800:ba98:3210:11aa:12dd
  • 0:0:0:0:0:0:13.1.68.3

Unspecified or inapplicable IP addresses and subnet masks MUST be represented as empty strings unless otherwise specified by the parameter definition.

IPPrefix string IPv4 or IPv6 routing prefix in Classless Inter-Domain Routing (CIDR) notation [RFC4632]. This is specified as an IP address followed by an appended "/n" suffix, where n (the prefix size) is an integer in the range 0-32 (for IPv4) or 0-128 (for IPv6) that indicates the number of (leftmost) '1' bits of the routing prefix.

IPv4 example: 192.168.1.0/24

IPv6 example: 2001:edff:fe6a:f76::/64

Unspecified or inapplicable IP prefixes MUST be represented as empty strings unless otherwise specified by the parameter definition.

IPv4Address string IPv4 addresses and subnet masks are represented as strings in IPv4 dotted-decimal notation.

Unspecified or inapplicable IP addresses and subnet masks MUST be represented as empty strings unless otherwise specified by the parameter definition.

MACAddress string All MAC addresses are represented as strings of 12 hexadecimal digits (digits 0-9, letters A-F or a-f) displayed as six pairs of digits separated by colons. Unspecified or inapplicable MAC addresses MUST be represented as empty strings unless otherwise specified by the parameter definition.

References

[RFC3489] RFC 3489, STUN - Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs), IETF.
[RFC3986] RFC 3986, Uniform Resource Identifier (URI): Generic Syntax, IETF.
[SOAP1.1] Simple Object Access Protocol (SOAP) 1.1, W3C.
[TR-069a1] TR-069 Amendment 1, CPE WAN Management Protocol, Broadband Forum.
[TR-106a1] TR-106 Amendment 1, Data Model Template for TR-069-Enabled Devices, Broadband Forum, 2006.
[TR-106a4] TR-106 Amendment 4, Data Model Template for TR-069-Enabled Devices, Broadband Forum, 2010.

Device:1.1 Data Model (changes)

For a given implementation of this data model, the CPE MUST indicate support for the highest version number of any object or parameter that it supports. For example, even if the CPE supports only a single parameter that was introduced in version 1.1, then it will indicate support for version 1.1. The version number associated with each object and parameter is shown in the Version column.

Name Type Write Description Object Default Version
Device. object - The top-level object for a Device. - 1.0
Device.DeviceInfo. object - This object contains general device information. - 1.0
EnabledOptions string­(1024) - Comma-separated list (maximum length 1024) of strings. Comma-separated list of the OptionName of each Option that is currently enabled in the CPE. The OptionName of each is identical to the OptionName element of the OptionStruct described in [TR-069a1]. Only those options are listed whose State indicates the option is enabled. - 1.0
AdditionalHardwareVersion string­(64) - Comma-separated list (maximum length 64) of strings. A comma separated list of any additional versions. Represents any additional hardware version information the vendor might wish to supply. - 1.0
AdditionalSoftwareVersion string­(64) - Comma-separated list (maximum length 64) of strings. A comma separated list of any additional versions. Represents any additional software version information the vendor might wish to supply. - 1.0
FirstUseDate dateTime - Date and time in UTC that the CPE first both successfully established an IP-layer network connection and acquired an absolute time reference using NTP or equivalent over that network connection. The CPE MAY reset this date after a factory reset.

If NTP or equivalent is not available, this parameter, if present, SHOULD be set to the Unknown Time value.

- 1.0
Device.ManagementServer. object - This object contains parameters relating to the CPE's association with an ACS. - 1.0
URL string­(256) W URL, as defined in [RFC3986], for the CPE to connect to the ACS using the CPE WAN Management Protocol.

This parameter MUST be in the form of a valid HTTP or HTTPS URL.

The host portion of this URL is used by the CPE for validating the ACS certificate when using SSL or TLS.

Note that on a factory reset of the CPE, the value of this parameter might be reset to its factory value. If an ACS modifies the value of this parameter, it SHOULD be prepared to accommodate the situation that the original value is restored as the result of a factory reset.

- 1.0
Username string­(256) W Username used to authenticate the CPE when making a connection to the ACS using the CPE WAN Management Protocol.

This username is used only for HTTP-based authentication of the CPE.

Note that on a factory reset of the CPE, the value of this parameter might be reset to its factory value. If an ACS modifies the value of this parameter, it SHOULD be prepared to accommodate the situation that the original value is restored as the result of a factory reset.

- 1.0
Password string­(256) W Password used to authenticate the CPE when making a connection to the ACS using the CPE WAN Management Protocol.

This password is used only for HTTP-based authentication of the CPE.

When read, this parameter returns an empty string, regardless of the actual value.

Note that on a factory reset of the CPE, the value of this parameter might be reset to its factory value. If an ACS modifies the value of this parameter, it SHOULD be prepared to accommodate the situation that the original value is restored as the result of a factory reset.

When read, this parameter returns an empty string, regardless of the actual value.

- 1.0
PeriodicInformEnable boolean W Whether or not the CPE MUST periodically send CPE information to the ACS using the Inform method call. - 1.0
PeriodicInformTime dateTime W An absolute time reference in UTC to determine when the CPE will initiate the periodic Inform method calls. Each Inform call MUST occur at this reference time plus or minus an integer multiple of the PeriodicInformInterval.

PeriodicInformTime is used only to set the phase of the periodic Informs. The actual value of PeriodicInformTime can be arbitrarily far into the past or future.

For example, if PeriodicInformInterval is 86400 (a day) and if PeriodicInformTime is set to UTC midnight on some day (in the past, present, or future) then periodic Informs will occur every day at UTC midnight. These MUST begin on the very next midnight, even if PeriodicInformTime refers to a day in the future.

The Unknown Time value defined in [Section 3.2/TR-106a1] indicates that no particular time reference is specified. That is, the CPE MAY locally choose the time reference, and is required only to adhere to the specified PeriodicInformInterval.

If absolute time is not available to the CPE, its periodic Inform behavior MUST be the same as if the PeriodicInformTime parameter was set to the Unknown Time value.

- 1.0
ConnectionRequestURL string­(256) - HTTP URL, as defined in [RFC3986], for an ACS to make a Connection Request notification to the CPE.

In the form:

http://host:port/path

The host portion of the URL MAY be the IP address for the management interface of the CPE in lieu of a host name.

- 1.0
UpgradesManaged boolean W Indicates whether or not the ACS will manage upgrades for the CPE. If true, the CPE SHOULD NOT use other means other than the ACS to seek out available upgrades. If false, the CPE MAY use other means for this purpose.

Note that an autonomous upgrade (reported via an "10 AUTONOMOUS TRANSFER COMPLETE" Inform Event code) SHOULD be regarded as a managed upgrade if it is performed according to ACS-specified policy.

- 1.0
KickURL string­(256) - Present only for a CPE that supports the Kicked RPC method.

LAN-accessible URL, as defined in [RFC3986], from which the CPE can be kicked to initiate the Kicked RPC method call. MUST be an absolute URL including a host name or IP address as would be used on the LAN side of the CPE.

- 1.0
DownloadProgressURL string­(256) - Present only for a CPE that provides a LAN-side web page to show progress during a file download.

LAN-accessible URL, as defined in [RFC3986], to which a web-server associated with the ACS MAY redirect a user's browser on initiation of a file download to observer the status of the download.

- 1.0
UDPConnectionRequestAddress string­(256) - Address and port to which an ACS MAY send a UDP Connection Request to the CPE (see [Annex G/TR-069a1]).

This parameter is represented in the form of an Authority element as defined in [RFC3986]. The value MUST be in one of the following two forms:

host:port
host

  • When STUNEnable is true, the host and port portions of this parameter MUST represent the public address and port corresponding to the NAT binding through which the ACS can send UDP Connection Request messages (once this information is learned by the CPE through the use of STUN).
  • When STUNEnable is false, the host and port portions of the URL MUST represent the local IP address and port on which the CPE is listening for UDP Connection Request messages.

The second form of this parameter MAY be used only if the port value is equal to 80.

- 1.1
UDPConnectionRequestAddressNotificationLimit unsignedInt W The minimum time, in seconds, between Active Notifications resulting from changes to the UDPConnectionRequestAddress (if Active Notification is enabled). - 1.1
STUNEnable boolean W Enables or disables the use of STUN by the CPE. This applies only to the use of STUN in association with the ACS to allow UDP Connection Requests. - 1.1
STUNServerAddress string­(256) W Host name or IP address of the STUN server for the CPE to send Binding Requests if STUN is enabled via STUNEnable.

If is an empty string and STUNEnable is true, the CPE MUST use the address of the ACS extracted from the host portion of the ACS URL.

- 1.1
STUNServerPort unsignedInt­[0:65535] W Port number of the STUN server for the CPE to send Binding Requests if STUN is enabled via STUNEnable.

By default, this SHOULD be the equal to the default STUN port, 3478.

- 1.1
STUNUsername string­(256) W If is not an empty string, the value of the STUN USERNAME attribute to be used in Binding Requests (only if message integrity has been requested by the STUN server).

If is an empty string, the CPE MUST NOT send STUN Binding Requests with message integrity.

- 1.1
STUNPassword string­(256) W The value of the STUN Password to be used in computing the MESSAGE-INTEGRITY attribute to be used in Binding Requests (only if message integrity has been requested by the STUN server).

When read, this parameter returns an empty string, regardless of the actual value.

When read, this parameter returns an empty string, regardless of the actual value.

- 1.1
STUNMaximumKeepAlivePeriod int­[-1:] W If STUN Is enabled, the maximum period, in seconds, that STUN Binding Requests MUST be sent by the CPE for the purpose of maintaining the binding in the Gateway. This applies specifically to Binding Requests sent from the UDP Connection Request address and port.

A value of -1 indicates that no maximum period is specified.

- 1.1
STUNMinimumKeepAlivePeriod unsignedInt W If STUN Is enabled, the minimum period, in seconds, that STUN Binding Requests can be sent by the CPE for the purpose of maintaining the binding in the Gateway. This limit applies only to Binding Requests sent from the UDP Connection Request address and port, and only those that do not contain the BINDING-CHANGE attribute. This limit does not apply to retransmissions following the procedures defined in [RFC3489]. - 1.1
NATDetected boolean - When STUN is enabled, this parameter indicates whether or not the CPE has detected address and/or port mapping in use.

A true value indicates that the received MAPPED-ADDRESS in the most recent Binding Response differs from the CPE's source address and port.

When STUNEnable is false, this value MUST be false.

- 1.1
Device.Config. object - This object contains general configuration parameters. - 1.0
PersistentData string­(256) W Arbitrary user data that MUST persist across CPE reboots. - 1.0
ConfigFile string­(32768) W A dump of the currently running configuration on the CPE. This parameter enables the ability to backup and restore the last known good state of the CPE. It returns a vendor-specific document that defines the state of the CPE. The document MUST be capable of restoring the CPE's state when written back to the CPE using SetParameterValues. - 1.0
Device.Time. object - This object contains parameters relating an NTP or SNTP time client in the CPE. - 1.0
Device.UserInterface. object - This object contains parameters relating to the user interface of the CPE. - 1.0
PasswordRequired boolean W Present only if the CPE provides a password-protected LAN-side user interface.

Indicates whether or not the local user interface MUST require a password to be chosen by the user. If false, the choice of whether or not a password is used is left to the user.

- 1.0
PasswordUserSelectable boolean W Present only if the CPE provides a password-protected LAN-side user interface and supports LAN-side Auto-Configuration.

Indicates whether or not a password to protect the local user interface of the CPE MAY be selected by the user directly, or MUST be equal to the password used by the LAN-side Auto-Configuration protocol.

- 1.0
Device.LAN. object - This object contains parameters relating to IP-based LAN connectivity of a device.

This object relates only to IP-layer LAN capabilities. Lower-layer aspects of LAN connectivity are not considered part of the common data model defined in this specification.

For a device that contains multiple IP interfaces, the scope of this object is limited to the default IP interface. Data that might be associated with other interfaces is not considered part of the common data model defined in this specification.

- 1.0
AddressingType string W The method used to assign an address to this interface. Enumeration of:

The ability to modify this parameter is OPTIONAL.

- 1.0
IPAddress string W [IPAddress] The current IP address assigned to this interface.

The ability to modify this parameter is OPTIONAL, and this parameter cannot be modified if the AddressingType is DHCP.

- 1.0
SubnetMask string W [IPAddress] The current subnet mask.

The ability to modify this parameter is OPTIONAL, and this parameter cannot be modified if the AddressingType is DHCP.

- 1.0
DefaultGateway string W The IP address of the current default gateway for this interface.

The ability to modify this parameter is OPTIONAL, and this parameter cannot be modified if the AddressingType is DHCP.

- 1.0
DNSServers string­(256) W Comma-separated list (maximum length 256) of strings. Comma-separated list of IP address of the DNS servers for this interface.

The ability to modify this parameter is OPTIONAL, and this parameter cannot be modified if the AddressingType is DHCP.

If this parameter is modifiable, the device MAY ignore any DNS servers beyond the first two in the list.

- 1.0
Device.LAN.DHCPOption.{i}. object W This object is for configuration of DHCP options. Each instance of this object represents a DHCP option to be included by the DHCP client in client requests. The DHCP client MAY include any other options not specified in this table. - 1.0
Value base64 W Base64 encoded octet string to be used as the Value of the DHCP option if Request is false. <Empty> 1.0
Device.LAN.IPPingDiagnostics. object - This object defines access to an IP-layer ping test for the default IP interface. - 1.0
DiagnosticsState string W Indicates availability of diagnostic data. Enumeration of:

If the ACS sets the value of this parameter to Requested, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed value is Requested. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set either prior to or at the same time as (in the same SetParameterValues) setting the DiagnosticsState to Requested.

When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic.

When the test is completed, the value of this parameter MUST be either Complete (if the test completed successfully), or one of the Error values listed above.

If the value of this parameter is anything other than Complete, the values of the results parameters for this test are indeterminate.

When the diagnostic initiated by the ACS is completed (successfully or not), the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message.

After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to None.

Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to None.

While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to None.

While the test is in progress, setting this parameter to Requested (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters.

- 1.0
DSCP unsignedInt­[0:63] W DiffServ codepoint to be used for the test packets. By default the CPE SHOULD set this value to zero. - 1.0
Device.LAN.TraceRouteDiagnostics. object - This object is defines access to an IP-layer trace-route test for the default IP interface. - 1.0
DiagnosticsState string W Indicates availability of diagnostic data. Enumeration of:

If the ACS sets the value of this parameter to Requested, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed value is Requested. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set either prior to or at the same time as (in the same SetParameterValues) setting the DiagnosticsState to Requested.

When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic.

When the test is completed, the value of this parameter MUST be either Complete (if the test completed successfully), or one of the Error values listed above.

If the value of this parameter is anything other than Complete, the values of the results parameters for this test are indeterminate.

When the diagnostic initiated by the ACS is completed (successfully or not), the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message.

After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to None.

Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to None.

While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to None.

While the test is in progress, setting this parameter to Requested (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters.

- 1.0
DSCP unsignedInt­[0:63] W DiffServ codepoint to be used for the test packets. By default the CPE SHOULD set this value to zero. - 1.0
ResponseTime unsignedInt - Result parameter indicating the response time in milliseconds the most recent trace route test. If a route could not be determined, this value MUST be zero. - 1.0
NumberOfRouteHops unsignedInt - Result parameter indicating the number of hops within the discovered route. If a route could not be determined, this value MUST be zero. - 1.0

Inform and Notification Requirements

Forced Inform Parameters

Parameter
Device.ManagementServer.ConnectionRequestURL
Device.LAN.IPAddress

Forced Active Notification Parameters

Parameter

Default Active Notification Parameters

Parameter

Parameters for which Active Notification MAY be Denied

Parameter
Device.DeviceInfo.
FirstUseDate
Device.LAN.IPPingDiagnostics.
DiagnosticsState
Device.LAN.TraceRouteDiagnostics.
DiagnosticsState
ResponseTime
NumberOfRouteHops

Profile Definitions

Notation

The following abbreviations are used to specify profile requirements:

Abbreviation Description
R Read support is REQUIRED.
W Both Read and Write support is REQUIRED. This MUST NOT be specified for a parameter that is defined as read-only.
P The object is REQUIRED to be present.
C Creation and deletion of instances of the object via AddObject and DeleteObject is REQUIRED.
A Creation of instances of the object via AddObject is REQUIRED, but deletion is not REQUIRED.
D Deletion of instances of the object via DeleteObject is REQUIRED, but creation is not REQUIRED.

UDPConnReq:1 Profile

This table defines the UDPConnReq:1 profile for the Device:1 object. The minimum REQUIRED version for this profile is Device:1.1.

Name Requirement
Device.­ManagementServer. -
UDPConnectionRequestAddress R
UDPConnectionRequestAddressNotificationLimit W
STUNEnable W
STUNServerAddress W
STUNServerPort W
STUNUsername W
STUNPassword W
STUNMaximumKeepAlivePeriod W
STUNMinimumKeepAlivePeriod W
NATDetected R


Generated by Broadband Forum report.pl#174 (2010/10/08 version) on 2010/10/21 at 11:43:58.