Broadband Forum

    DATA MODEL DEFINITION


TR-143 Corrigendum 2 (changes)

Notice

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

This Broadband Forum Document is provided AS IS, WITH ALL FAULTS. ANY PERSON HOLDING A COPYRIGHT IN THIS BROADBAND FORUM 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 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 Document will be available for license at all or on reasonable and non-discriminatory terms.

ANY PERSON HOLDING A COPYRIGHT IN THIS BROADBAND FORUM 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 DOCUMENT; AND (B) ANY OBLIGATION TO UPDATE OR CORRECT THIS DOCUMENT.

Broadband Forum 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 of this Broadband Forum Document.

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

[RFC862] RFC 862, Echo Protocol, IETF, 1983.
[RFC959] RFC 959, File Transfer Protocol, IETF, 1985.
[RFC2616] RFC 2616, Hypertext Transfer Protocol -- HTTP/1.1, IETF, 1999.
[RFC3986] RFC 3986, Uniform Resource Identifier (URI): Generic Syntax, IETF.
[SOAP1.1] Simple Object Access Protocol (SOAP) 1.1, W3C.
[TR-106a4] TR-106 Amendment 4, Data Model Template for TR-069-Enabled Devices, Broadband Forum, 2010.
[TR-143] TR-143, Enabling Network Throughput Performance Tests and Statistical Monitoring, Broadband Forum.

Device:1.2 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.2, then it will indicate support for version 1.2. 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.Capabilities. object - The capabilities of the device. This is a constant read-only object, meaning that only a firmware upgrade will cause these values to be altered. - 1.2
Device.Capabilities.PerformanceDiagnostic. object - The capabilities of the Performance Diagnostics (DownloadDiagnostics and UploadDiagnostics) for the device. - 1.2
DownloadTransports string - Comma-separated list of strings. Supported DownloadDiagnostics transport protocols for a CPE device. Each list item is an enumeration of:

- 1.2
UploadTransports string - Comma-separated list of strings. Supported UploadDiagnostics transport protocols for a CPE device. Each list item is an enumeration of:

- 1.2
Device.DownloadDiagnostics. object - This object defines the diagnostics configuration for a HTTP and FTP DownloadDiagnostics Test.

Files received in the DownloadDiagnostics do not require file storage on the CPE device.

- 1.2
DiagnosticsState string W Indicate the 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 Completed (if the test completed successfully), or one of the Error values listed above.

If the value of this parameter is anything other than Completed, 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.2
Interface string­(256) W The value MUST be the path name of the IP-layer interface over which the test is to be performed.

The value of this parameter MUST be either a valid interface or an empty string. An attempt to set this parameter to a different value MUST be rejected as an invalid parameter value.

If an empty string is specified, the CPE MUST use the default routing interface.

- 1.2
DownloadURL string­(256) W The URL, as defined in [RFC3986], for the CPE to perform the download on. This parameter MUST be in the form of a valid HTTP [RFC2616] or FTP [RFC959] URL.

  • When using FTP transport, FTP binary transfer MUST be used.
  • When using HTTP transport, persistent connections MUST be used and pipelining MUST NOT be used.
  • When using HTTP transport the HTTP Authentication MUST NOT be used.
- 1.2
DSCP unsignedInt­[0:63] W The DiffServ code point for marking packets transmitted in the test.

The default value SHOULD be zero.

- 1.2
EthernetPriority unsignedInt­[0:7] W Ethernet priority code for marking packets transmitted in the test (if applicable).

The default value SHOULD be zero.

- 1.2
ROMTime dateTime - Request time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time at which the client sends the GET command.
  • For FTP this is the time at which the client sends the RTRV command.
- 1.2
BOMTime dateTime - Begin of transmission time in UTC, which MUST be specified to microsecond precision

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time at which the first data packet is received.
  • For FTP this is the time at which the client receives the first data packet on the data connection.
- 1.2
EOMTime dateTime - End of transmission in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time at which the last data packet is received.
  • For FTP this is the time at which the client receives the last packet on the data connection.
- 1.2
TestBytesReceived unsignedInt - The test traffic received in bytes during the FTP/HTTP transaction including FTP/HTTP headers, between BOMTime and EOMTime, - 1.2
TotalBytesReceived unsignedInt - The total number of bytes received on the Interface between BOMTime and EOMTime. - 1.2
TCPOpenRequestTime dateTime - Request time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time at which the TCP socket open (SYN) was sent for the HTTP connection.
  • For FTP this is the time at which the TCP socket open (SYN) was sent for the data connection.

Note: Interval of 1 microsecond SHOULD be supported.

- 1.2
TCPOpenResponseTime dateTime - Response time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time at which the TCP ACK to the socket opening the HTTP connection was received.
  • For FTP this is the time at which the TCP ACK to the socket opening the data connection was received.

Note: Interval of 1 microsecond SHOULD be supported.

- 1.2
Device.UploadDiagnostics. object - This object defines the diagnostics configuration for a HTTP or FTP UploadDiagnostics test.

Files sent by the UploadDiagnostics do not require file storage on the CPE device, and MAY be an arbitrary stream of bytes.

- 1.2
DiagnosticsState string W Indicate the 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 Completed (if the test completed successfully), or one of the Error values listed above.

If the value of this parameter is anything other than Completed, 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.2
Interface string­(256) W The value MUST be the path name of the IP-layer interface over which the test is to be performed.

The value of this parameter MUST be either a valid interface or an empty string. An attempt to set this parameter to a different value MUST be rejected as an invalid parameter value.

If an empty string is specified, the CPE MUST use the default routing interface.

- 1.2
UploadURL string­(256) W The URL, as defined in [RFC3986], for the CPE to Upload to. This parameter MUST be in the form of a valid HTTP [RFC2616] or FTP [RFC959] URL.

  • When using FTP transport, FTP binary transfer MUST be used.
  • When using HTTP transport, persistent connections MUST be used and pipelining MUST NOT be used.
  • When using HTTP transport the HTTP Authentication MUST NOT be used.
- 1.2
DSCP unsignedInt­[0:63] W DiffServ code point for marking packets transmitted in the test.

The default value SHOULD be zero.

- 1.2
EthernetPriority unsignedInt­[0:7] W Ethernet priority code for marking packets transmitted in the test (if applicable).

The default value SHOULD be zero.

- 1.2
TestFileLength unsignedInt W The size of the file (in bytes) to be uploaded to the server.

The CPE MUST insure the appropriate number of bytes are sent.

- 1.2
ROMTime dateTime - Request time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time at which the client sends the PUT command
  • For FTP this is the time at which the STOR command is sent.
- 1.2
BOMTime dateTime - Begin of transmission time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time at which the first data packet is sent.
  • For FTP this is the time at which the client receives the ready for transfer notification.
- 1.2
EOMTime dateTime - End of transmission in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time when the HTTP successful response code is received.
  • For FTP this is the time when the client receives a transfer complete.
- 1.2
TotalBytesSent unsignedInt - The total number of bytes sent on the Interface between BOMTime and EOMTime. - 1.2
TCPOpenRequestTime dateTime - Request time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the time at which the TCP socket open (SYN) was sent for the HTTP connection.
  • For FTP this is the time at which the TCP socket open (SYN) was sent for the data connection

Note: Interval of 1 microsecond SHOULD be supported.

- 1.2
TCPOpenResponseTime dateTime - Response time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

  • For HTTP this is the Time at which the TCP ACK to the socket opening the HTTP connection was received.
  • For FTP this is the Time at which the TCP ACK to the socket opening the Data connection was received.

Note: Interval of 1 microsecond SHOULD be supported.

- 1.2
Device.UDPEchoConfig. object - This object allows the CPE to be configured to perform the UDP Echo Service defined in [RFC862] and UDP Echo Plus Service defined in [Appendix A.1/TR-143]. - 1.2
Enable boolean W MUST be enabled to receive UDP echo. When enabled from a disabled state all related timestamps, statistics and UDP Echo Plus counters are cleared. - 1.2
Interface string­(256) W The value MUST be the path name of IP-layer interface over which the CPE MUST listen and receive UDP echo requests on.

The value of this parameter MUST be either a valid interface or an empty string. An attempt to set this parameter to a different value MUST be rejected as an invalid parameter value.

If an empty string is specified, the CPE MUST listen and receive UDP echo requests on all interfaces.

Note: Interfaces behind a NAT MAY require port forwarding rules configured in the Gateway to enable receiving the UDP packets.

- 1.2
SourceIPAddress string W [IPAddress] The Source IP address of the UDP echo packet. The CPE MUST only respond to a UDP echo from this source IP address. - 1.2
UDPPort unsignedInt W The UDP port on which the UDP server MUST listen and respond to UDP echo requests. - 1.2
EchoPlusEnabled boolean W If true the CPE will perform necessary packet processing for UDP Echo Plus packets. - 1.2
EchoPlusSupported boolean - true if UDP Echo Plus is supported. - 1.2
PacketsReceived unsignedInt - Incremented upon each valid UDP echo packet received. - 1.2
PacketsResponded unsignedInt - Incremented for each UDP echo response sent. - 1.2
BytesReceived unsignedInt - The number of UDP received bytes including payload and UDP header after the UDPEchoConfig is enabled. - 1.2
BytesResponded unsignedInt - The number of UDP responded bytes, including payload and UDP header sent after the UDPEchoConfig is enabled. - 1.2
TimeFirstPacketReceived dateTime - Time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456,

The time that the server receives the first UDP echo packet after the UDPEchoConfig is enabled.

- 1.2
TimeLastPacketReceived dateTime - Time in UTC, which MUST be specified to microsecond precision.

For example: 2008-04-09T15:01:05.123456

The time that the server receives the most recent UDP echo packet.

- 1.2

Inform and Notification Requirements

Forced Inform Parameters

Parameter

Forced Active Notification Parameters

Parameter

Default Active Notification Parameters

Parameter

Parameters for which Active Notification MAY be Denied

Parameter
Device.DownloadDiagnostics.
DiagnosticsState
ROMTime
BOMTime
EOMTime
TestBytesReceived
TotalBytesReceived
TCPOpenRequestTime
TCPOpenResponseTime
Device.UploadDiagnostics.
DiagnosticsState
ROMTime
BOMTime
EOMTime
TotalBytesSent
TCPOpenRequestTime
TCPOpenResponseTime
Device.UDPEchoConfig.
PacketsReceived
PacketsResponded
BytesReceived
BytesResponded
TimeFirstPacketReceived
TimeLastPacketReceived

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.

Download:1 Profile

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

Name Requirement
Device.­Capabilities.­PerformanceDiagnostic. P
DownloadTransports R
Device.­DownloadDiagnostics. P
DiagnosticsState W
Interface W
DownloadURL W
DSCP W
EthernetPriority W
ROMTime R
BOMTime R
EOMTime R
TestBytesReceived R
TotalBytesReceived R

DownloadTCP:1 Profile

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

Name Requirement
Device.­DownloadDiagnostics. P
TCPOpenRequestTime R
TCPOpenResponseTime R

Upload:1 Profile

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

Name Requirement
Device.­Capabilities.­PerformanceDiagnostic. P
UploadTransports R
Device.­UploadDiagnostics. P
DiagnosticsState W
Interface W
UploadURL W
DSCP W
EthernetPriority W
ROMTime R
BOMTime R
EOMTime R
TestFileLength R
TotalBytesSent R

UploadTCP:1 Profile

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

Name Requirement
Device.­UploadDiagnostics. P
TCPOpenRequestTime R
TCPOpenResponseTime R

UDPEcho:1 Profile

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

Name Requirement
Device.­UDPEchoConfig. P
Enable W
Interface W
SourceIPAddress W
UDPPort W
PacketsReceived R
PacketsResponded R
BytesReceived R
BytesResponded R
TimeFirstPacketReceived R
TimeLastPacketReceived R
EchoPlusSupported R

UDPEchoPlus:1 Profile

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

Name Requirement
Device.­UDPEchoConfig. P
EchoPlusEnabled W


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