Broadband Forum

    DATA MODEL DEFINITION


TR-140 StorageService:1.2
tr-140-1-2-0.xml

License

Copyright (c) 2010-2017, Broadband Forum

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

The above license is used as a license under copyright only. Please reference the Forum IPR Policy for patent licensing terms <https://www.broadband-forum.org/ipr-policy>.

Any moral rights which are necessary to exercise under the above license grant are also deemed granted under this license.

Summary

StorageService:1.2 Service Object

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]. These data types and the named data types used by this specification are described below.

Note: A Parameter that is defined to be one of the named data types is reported as such at the beginning of the Parameter's description via a reference back to the associated data type definition (e.g. [MacAddress]). However, such parameters still indicate their SOAP data type.

Data Type Base Type Description
Alias string(64)

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
Dbm1000 int The value is measured in dBm/1000, i.e. the value divided by 1000 is dB relative to 1 mW. For example, -12345 means -12.345 dBm, 0 means 0 dBm (1 mW) and 12345 means 12.345 dBm.
IEEE_EUI64 string(23)

The IEEE EUI 64-bit identifier as defined in [EUI64]. The IEEE defined 64-bit extended unique identifier (EUI-64) is a concatenation of:

  • The 24-bit (OUI-24) or 36-bit (OUI-36) company_id value assigned by the IEEE Registration Authority (IEEE-RA), and
  • The extension identifier (40 bits for OUI-24 or 28 bits for OUI-36) assigned by the organization with that company_id assignment.

Possible patterns:

  • <Empty> (an empty string)
  • ([0-9A-Fa-f][0-9A-Fa-f]:){7}([0-9A-Fa-f][0-9A-Fa-f])
IPAddress string(45)

IP address, i.e. IPv4 address (or IPv4 subnet mask) or IPv6 address.

All IPv4 addresses and subnet masks MUST be represented as strings in IPv4 dotted-decimal notation. Here are some examples of valid IPv4 address textual representations:

  • 216.52.29.100
  • 192.168.1.254

All IPv6 addresses MUST be represented using any of the 3 standard textual representations defined in [RFC4291] Sections 2.2.1, 2.2.2 and 2.2.3. Both lower-case and upper-case letters can be used, but use of lower-case letters is RECOMMENDED. Here are some 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

IPv6 addresses MUST NOT include zone identifiers. Zone identifiers are discussed in [Section 6/RFC4007].

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

IPPrefix string(49)

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

If the IP address part is unspecified or inapplicable, it MUST be an empty string unless otherwise specified by the parameter definition. In this case the IP prefix will be of the form "/n".

If the entire IP prefix is unspecified or inapplicable, it MUST be an empty string unless otherwise specified by the parameter definition.

IPv4Address IPAddress(15)

IPv4 address (or subnet mask).

Can be any IPv4 address that is permitted by the IPAddress data type.

IPv4Prefix IPPrefix(18)

IPv4 address prefix.

Can be any IPv4 prefix that is permitted by the IPPrefix data type.

IPv6Address IPAddress(45)

IPv6 address.

Can be any IPv6 address that is permitted by the IPAddress data type.

IPv6Prefix IPPrefix(49)

IPv6 address prefix.

Can be any IPv6 prefix that is permitted by the IPPrefix data type.

MACAddress string(17)

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. Possible patterns:

  • <Empty> (an empty string)
  • ([0-9A-Fa-f][0-9A-Fa-f]:){5}([0-9A-Fa-f][0-9A-Fa-f])
StatsCounter32 unsignedInt

A 32-bit statistics parameter, e.g. a byte counter.

This data type SHOULD NOT be used for statistics parameters whose values might become greater than the maximum value that can be represented as an unsignedInt (i.e. 0xffffffff, referred to below as maxval). StatsCounter64 SHOULD be used for such parameters.

The value maxval indicates that no data is available for this parameter. In the unlikely event that the actual value of the statistic is maxval, the CPE SHOULD return maxval - 1.

The actual value of the statistic might be greater than maxval. Such values SHOULD wrap around through zero.

The term packet is to be interpreted as the transmission unit appropriate to the protocol layer in question, e.g. an IP packet or an Ethernet frame.

StatsCounter64 unsignedLong

A 64-bit statistics parameter, e.g. a byte counter.

This data type SHOULD be used for all statistics parameters whose values might become greater than the maximum value that can be represented as an unsignedInt.

The maximum value that can be represented as an unsignedLong (i.e. 0xffffffffffffffff) indicates that no data is available for this parameter.

The term packet is to be interpreted as the transmission unit appropriate to the protocol layer in question, e.g. an IP packet or an Ethernet frame.

UUID string(36:36)

Universally Unique Identifier. See [RFC4122]. Possible patterns:

  • [A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}
ZigBeeNetworkAddress string(4)

The ZigBee 16-bit network address (NWK) as defined in [ZigBee2007]. The address is assigned to a device by the network layer and used by the network layer for routing messages between devices. Possible patterns:

  • <Empty> (an empty string)
  • ([0-9A-Fa-f]){4}
base64 -

Base64 encoded binary (no line-length limitation).

A minimum and maximum allowed length can be indicated using the form base64(Min:Max), where Min and Max are the minimum and maximum length in characters before Base64 encoding. If either Min or Max are missing, this indicates no limit, and if Min is missing the colon can also be omitted, as in base64(Max). Multiple comma-separated ranges can be specified, in which case the length MUST be in one of the ranges.

boolean - Boolean, where the allowed values are 0 or 1 (or equivalently, true or false).
dateTime - The subset of the ISO 8601 date-time format defined by the SOAP dateTime type.
hexBinary -

Hex encoded binary.

A minimum and maximum allowed length can be indicated using the form hexBinary(Min:Max), where Min and Max are the minimum and maximum length in characters before Hex Binary encoding. If either Min or Max are missing, this indicates no limit, and if Min is missing the colon can also be omitted, as in hexBinary(Max). Multiple comma-separated ranges can be specified, in which case the length MUST be in one of the ranges.

int -

Integer in the range -2147483648 to +2147483647, inclusive.

For some int types, a value range is given using the form int[Min:Max] or int[Min:Max step Step] where the Min and Max values are inclusive. If either Min or Max are missing, this indicates no limit. If Step is missing, this indicates a step of 1. Multiple comma-separated ranges can be specified, in which case the value will be in one of the ranges.

long -

Long integer in the range -9223372036854775808 to 9223372036854775807, inclusive.

For some long types, a value range is given using the form long[Min:Max] or long[Min:Max step Step], where the Min and Max values are inclusive. If either Min or Max are missing, this indicates no limit. If Step is missing, this indicates a step of 1. Multiple comma-separated ranges can be specified, in which case the value will be in one of the ranges.

object - A container for parameters and/or other objects. The full Path Name of a parameter is given by the parameter name appended to the full Path Name of the object it is contained within.
string - For strings, a minimum and maximum allowed length can be indicated using the form string(Min:Max), where Min and Max are the minimum and maximum string length in characters. If either Min or Max are missing, this indicates no limit, and if Min is missing the colon can also be omitted, as in string(Max). Multiple comma-separated ranges can be specified, in which case the string length will be in one of the ranges.
unsignedInt -

Unsigned integer in the range 0 to 4294967295, inclusive.

For some unsignedInt types, a value range is given using the form unsignedInt[Min:Max] or unsigned[Min:Max step Step], where the Min and Max values are inclusive. If either Min or Max are missing, this indicates no limit. If Step is missing, this indicates a step of 1. Multiple comma-separated ranges can be specified, in which case the value will be in one of the ranges.

unsignedLong -

Unsigned long integer in the range 0 to 18446744073709551615, inclusive.

For some unsignedLong types, a value range is given using the form unsignedLong[Min:Max] or unsignedLong[Min:Max step Step], where the Min and Max values are inclusive. If either Min or Max are missing, this indicates no limit. If Step is missing, this indicates a step of 1. Multiple comma-separated ranges can be specified, in which case the value will be in one of the ranges.

References

[RFC4122] RFC 4122, A Universally Unique IDentifier (UUID) URN Namespace, IETF, 2005.
[RFC4291] RFC 4291, IP Version 6 Addressing Architecture, IETF, 2006.
[RFC4632] RFC 4632, Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Plan, IETF, 2006.
[SOAP1.1] Simple Object Access Protocol (SOAP) 1.1, W3C.
[TR-069a4] TR-069 Amendment 4, CPE WAN Management Protocol, Broadband Forum, 2011.
[TR-106] TR-106, Data Model Template for TR-069-Enabled Devices, Broadband Forum, 2005.
[ZigBee2007] ZigBee 2007 Specification, ZigBee 2007 Specification, ZigBee Alliance, October 2007.

StorageService:1.2 Data Model

For a given implementation of this data model, the Agent MUST indicate support for the highest version number of any object or parameter that it supports. For example, even if the Agent 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
StorageServiceNumberOfEntries unsignedInt - Number of entries in StorageService. - 1.1
StorageService.{i}. object -

The Service Object for a Storage Service device.

At most one entry in this table can exist with a given value for Alias.

- 1.0
Enable boolean W Enables or Disables the entire Storage mechanism. - 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
PhysicalMediumNumberOfEntries unsignedInt - The number of instances of PhysicalMedium.{i}.. - 1.0
StorageArrayNumberOfEntries unsignedInt - The number of instances of StorageArray.{i}.. - 1.0
LogicalVolumeNumberOfEntries unsignedInt - The number of instances of LogicalVolume.{i}.. - 1.0
UserAccountNumberOfEntries unsignedInt - The number of instances of UserAccount.{i}.. - 1.0
UserGroupNumberOfEntries unsignedInt - The number of instances of UserGroup.{i}.. - 1.0
StorageService.{i}.Capabilities. object -

The overall capabilities of a Storage Service device. This is a constant read-only object, meaning that only a firmware upgrade will cause these values to be altered.

Note that when TR-140 was originally published there was a typo in this object name, which has been corrected.

- 1.0
FTPCapable boolean - Does this device contain an FTP server allowing clients to access the data via an FTP client? - 1.0
SFTPCapable boolean - Does this device contain an SSH FTP server allowing clients to access the data via an SFTP client? - 1.0
HTTPCapable boolean - Does this device contain an HTTP server allowing clients to access the data via an HTTP client? - 1.0
HTTPSCapable boolean - Does this device contain an HTTPS server allowing clients to access the data via an HTTPS client? - 1.0
HTTPWritable boolean - Does this device contain an HTTP server that supports creating files via an HTTP PUT/POST mechanism that would allow an HTTP client to upload files via HTTP? This is also sometimes referred to as "WebDAV" support. - 1.0
SupportedNetworkProtocols string -

Comma-separated list of strings. Supported application-level network protocols. Each list item is an enumeration of:

The list MAY include vendor-specific protocols, which MUST be in the format defined in [TR-106]. For example: "X_EXAMPLE-COM_MyProt.

- 1.0
SupportedFileSystemTypes string -

Comma-separated list of strings. Supported FileSystems Types. Each list item is an enumeration of:

The list MAY include vendor-specific protocols, which MUST be in the format defined in [TR-106]. For example: "X_EXAMPLE-COM_MyType.

- 1.0
SupportedRaidTypes string -

Comma-separated list of strings. Supported RAID types. Each list item is an enumeration of:

The list MAY include vendor-specific protocols, which MUST be in the format defined in [TR-106]. For example:"X_EXAMPLE-COM_MyRaid.

- 1.0
VolumeEncryptionCapable boolean - Does this device have the ability to encrypt and decrypt Logical Volumes as they are stored and retrieved? - 1.0
StorageService.{i}.NetInfo. object - This object provides general LAN network information about this device. - 1.0
HostName string­(64) W Logical name which identifies the device on the local network. This is the first segment of a fully qualified domain name (FQDN). Combining HostName, a "." and the DomainName will result in a fully qualified domain name. - 1.0
DomainName string­(255) W Domain name for the device on the local network. Combining HostName, a "." and DomainName will result in a fully qualified domain name (FQDN). For example, if the HostName contains "myLaptop" and the DomainName contains "dsl.sp1.com", then the FQDN would be "myLaptop.dsl.sp1.com". - 1.0
StorageService.{i}.UserGroup.{i}. object W

This object provides information about each user group configured on this device, which allows the grouping of user accounts for easier maintenance of permissions.

At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the Agent MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries.

At most one enabled entry in this table can exist with a given value for GroupName.

- 1.0
Enable boolean W Enables or disables this group. false 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
GroupName string­(64) W The unique name of the group. <Empty> 1.0
StorageService.{i}.UserAccount.{i}. object W

This object provides information about each user configured on this device, which provides a means for controlling access to the device.

At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the Agent MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries.

At most one enabled entry in this table can exist with a given value for Username.

- 1.0
Enable boolean W Enables or disables this user. false 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
Username string­(64) W The unique name of the user. Also used for authentication. <Empty> 1.0
Password string­(64) W

Password used to authenticate the user when connecting to the Storage Service Device.

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

- 1.0
UserGroupParticipation string­(1024) W Comma-separated list (maximum list length 1024) of strings. Each list item MUST be the Path Name of a row in the UserGroup table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents a User Group that this User Account is a member of. Each UserGroup.{i}. referenced by this parameter MUST exist within the same StorageService instance. <Empty> 1.0
AllowFTPAccess boolean W Enables or disables access via FTP (including SSH FTP access) for this user. false 1.0
AllowHTTPAccess boolean W Enables or disables access via HTTP (including HTTPS access) for this user. false 1.0
StorageService.{i}.NetworkServer. object - This object allows the control of network layer protocols authorization enforcement. - 1.0
AFPEnable boolean W Enables or disables the AFP network protocol. - 1.0
NFSEnable boolean W Enables or disables the NFS network protocol. - 1.0
SMBEnable boolean W Enables or disables the SMB network protocol. - 1.0
NetworkProtocolAuthReq boolean W If this parameter is set to false then the device MUST NOT attempt to request login credentials or authenticate access from network layer protocols such as AFP, NFS, and SMB. If this parameter is set to true then the device MUST attempt to request login credentials or authenticate access from network layer protocols such as AFP, NFS, and SMB by using an instance of UserAccount.{i}. found on this device. - 1.0
StorageService.{i}.FTPServer. object - This object allows the configuration of the FTP server. - 1.0
Enable boolean W Enables or disables the FTP server. - 1.0
Status string -

The current status of this FTP server. Enumeration of:

- 1.0
MaxNumUsers unsignedInt­[1:32] W Maximum number of users allowed to log in to the device at once via FTP. - 1.0
IdleTime unsignedInt­[0:600] W Maximum amount of time in seconds that the FTP socket will remain open without any activity. If set to 0 an infinite timeout will apply. - 1.0
PortNumber unsignedInt­[0:65535] W

The port number that the FTP server is listening on.

The factory default value MUST be 21.

- 1.0
StorageService.{i}.FTPServer.AnonymousUser. object - This object allows the configuration of anonymous FTP access. - 1.0
Enable boolean W Enables or disables support for anonymous access into the FTP server - 1.0
StartingFolder string­(256) W The value MUST be the Path Name of a row in the LogicalVolume.{i}.Folder table. Represents the home directory for anonymous FTP access. The LogicalVolume.{i}.Folder.{i}. referenced by this parameter MUST exist within the same StorageService instance. - 1.0
ReadOnlyAccess boolean W If this is set to true, then the anonymous user is limited to only retrieval of files from the Storage Service (no deletions, copies, creations or uploads). If this is set to false, then the anonymous user has full permissions within the folder specified in StartingFolder. This SHOULD default to True. - 1.0
StorageService.{i}.SFTPServer. object - This object allows the configuration of the SSH FTP server. - 1.0
Enable boolean W Enables or disables the SSH FTP server. - 1.0
Status string -

The current status of this SSH FTP server. Enumeration of:

- 1.0
MaxNumUsers unsignedInt­[1:32] W Maximum number of users allowed to log in to the device at once via SFTP. - 1.0
IdleTime unsignedInt­[0:600] W Maximum amount of time in seconds that the SFTP socket will remain open without any activity. If set to 0 an infinite timeout will apply. - 1.0
PortNumber unsignedInt­[0:65535] W

The port number that the SSH FTP server is listening on.

The factory default value MUST be 115.

- 1.0
StorageService.{i}.HTTPServer. object - This object allows the configuration of the HTTP server. - 1.0
Enable boolean W Enables or disables the HTTP server. - 1.0
Status string -

The current status of this HTTP server. Enumeration of:

- 1.0
MaxNumUsers unsignedInt­[1:32] W Maximum number of users allowed to log in to the device at once via HTTP. - 1.0
IdleTime unsignedInt­[0:600] W Maximum amount of time in seconds that the HTTP socket will remain open without any activity. If set to 0 an infinite timeout will apply. - 1.0
HTTPWritingEnabled boolean - Is support for the HTTP PUT/POST mechanism (WebDAV) enabled? - 1.0
PortNumber unsignedInt­[0:65535] W

The port number that the HTTP server is listening on.

The factory default value MUST be 80.

- 1.0
AuthenticationReq boolean W If true, HTTP will require login prior to access (basic or digest authentication). - 1.0
StorageService.{i}.HTTPSServer. object - This object allows the configuration of the HTTPS server. - 1.0
Enable boolean W Enables or disables the HTTPS server. - 1.0
Status string -

The current status of this HTTPS server. Enumeration of:

- 1.0
MaxNumUsers unsignedInt­[1:32] W Maximum number of users allowed to log in to the device at once via HTTPS. - 1.0
IdleTime unsignedInt­[0:600] W Maximum amount of time in seconds that the HTTPS socket will remain open without any activity. If set to 0 an infinite timeout will apply. - 1.0
HTTPWritingEnabled boolean - Is support for the HTTP PUT/POST mechanism (WebDAV) enabled? - 1.0
PortNumber unsignedInt­[0:65535] W

The port number that the HTTPS server is listening on.

The factory default value MUST be 443.

- 1.0
AuthenticationReq boolean W If true, HTTPS will require login prior to access (basic or digest authentication). - 1.0
StorageService.{i}.PhysicalMedium.{i}. object -

This object provides information about each physical medium connected to this device.

At most one entry in this table can exist with a given value for Name, or with all the same values for Vendor, Model and SerialNumber, or with a given value for Alias.

- 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
Name string­(64) W A user-friendly name for this physical storage medium. - 1.0
Vendor string­(64) - The vendor of this physical storage medium. - 1.0
Model string­(128) - The model name/number of this physical storage medium. - 1.0
SerialNumber string­(64) - The serial number of this physical storage medium. - 1.0
FirmwareVersion string­(64) - The firmware version for firmware contained within the physical medium's controller. - 1.0
ConnectionType string -

The method of connection to this storage device. Enumeration of:

The parameter MAY instead be a vendor-specific connection type, which MUST be in the format defined in [TR-106]. For example:

"X_EXAMPLE-COM_MyConnType"

- 1.0
Removable boolean - Is this physical storage medium removable? Removable storage implies that the removal action is part of normal operations and is expected to leave the data on the removable storage intact. - 1.0
Capacity unsignedInt - The formatted capacity of the physical storage medium in MB. - 1.0
Status string -

The general activity status of this physical storage medium. Enumeration of:

- 1.0
Uptime unsignedInt - Time since boot in hours. This MAY reflect S.M.A.R.T. PowerOnHours. - 1.0
SMARTCapable boolean - Is this physical medium capable of reporting S.M.A.R.T. statistics? - 1.0
Health string -

The general health of this physical storage medium. Enumeration of:

Note: Health MAY be obtained from S.M.A.R.T. data where available.

- 1.0
HotSwappable boolean - Is this physical medium capable of being removed while the device is powered up? Hot-Swappable storage does not imply Removable storage; hot-swappable is an operation taken only when the disk has failed and needs to be replaced. The data on the hot-swapped storage will not remain intact. - 1.0
StorageService.{i}.StorageArray.{i}. object W

This object provides information about each storage array (RAID) configured on this device.

Creating an instance of this object generates a disabled StorageArray instance. Before this new StorageArray instance can be enabled (via a SetParameterValues command), it MUST have the following parameters configured: Name, RaidType, and PhysicalMediumReference. Once an instance is enabled the following parameters become immutable for the life of the instance: Name, RaidType, and PhysicalMediumReference.

At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the Agent MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries.

At most one enabled entry in this table can exist with a given value for PhysicalMediumReference.

- 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
Name string­(64) W

A user-friendly name for this Storage Array.

Once this instance becomes enabled, this parameter will be immutable for the life of the instance.

<Empty> 1.0
Status string -

The current status of this StorageArray. Enumeration of:

  • Rebuilding (Indicates a drive participating in an array is replaced, while the data striping and/or redundancy of the array are reestablished on the new disk. In this state, data operations to the array will function properly, but its performance could be significantly diminished)
  • Initializing (The state when the RAID array is being first constructed, and the data striping and/or redundancy of the array are first being established. In this state, data operations to the array will function properly, but its performance could be significantly diminished and the redundancy might not be fully established)
  • Offline (Indicates the RAID array is not available. This might occur because the administrator explicitly has disabled the array, or because underlying elements of the array, such as the physical disks, are not ready)
  • Online (Indicates the RAID array is fully operational)
  • Error (Indicates an error condition exists within the RAID array. In this state, data operations to the array are not possible, and data loss might have occurred)
  • Degraded (Indicates the loss of a drive only in a Raid Type of more than 2 drives, that can support multiple failures. Data redundancy continues to be available but with degraded capability)
  • Critical (Indicates the loss of data redundancy, and a possible degraded state. The array continues to perform read/write operations)
"Offline" 1.0
Enable boolean W Enables or disables this StorageArray instance. false 1.0
RaidType string W

The value MUST be a member of the list reported by the Capabilities.SupportedRaidTypes parameter. Note that after creation of the Storage Array, any subsequent writes to this parameter MUST be ignored as array type migration is not supported. To identify which RAID Types are supported, see Capabilities.SupportedRaidTypes.

Once this instance becomes enabled, this parameter will be immutable for the life of the instance.

"Linear" 1.0
UsableCapacity unsignedInt - The total Usable Capacity of the Storage Array in MB. This is computed by the system based on PhysicalMediumReference and RaidType. Disk size is a consideration, as many RAID Types use the smallest drive in the group for calculations. - 1.0
PhysicalMediumReference string­(1024) W

Comma-separated list (maximum list length 1024) of strings. Each list item MUST be the Path Name of a row in the PhysicalMedium table. Represents the physical medium used by this RAID. Each Physical Medium referenced by this parameter MUST exist within the same StorageService instance. A PhysicalMedium.{i}. MUST only be referenced by one StorageArray.{i}. instance.

Once this instance becomes enabled, this parameter will be immutable for the life of the instance.

- 1.0
StorageService.{i}.LogicalVolume.{i}. object W

This object provides information about each logical volume configured on this device. A logical volume can reside either on an instance of a single PhysicalMedium.{i}. or on an instance of a single StorageArray.{i}. instance, but it can not span multiple instances of either. PhysicalReference is used to define where this LogicalVolume instance resides.

Creating an instance of this object generates a disabled LogicalVolume instance. Before this new LogicalVolume instance can be enabled (via a SetParameterValues command), it MUST have the following parameters configured: Name, PhysicalReference, and Capacity. Once an instance is enabled the following parameters become immutable for the life of the instance: Name, PhysicalReference, and Capacity.

At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the Agent MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries.

At most one enabled entry in this table can exist with a given value for Name.

- 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
Name string­(64) W

The name of the partition for this logical volume.

Once this instance becomes enabled, this parameter will be immutable for the life of the instance. This parameter acts as the unique identifier for the instance, thus the device MUST NOT allow multiple LogicalVolume instances to use the same Name.

<Empty> 1.0
Status string -

The current status of this Logical Volume. Enumeration of:

The default Offline status will exist until this LogicalVolume is enabled.

"Offline" 1.0
Enable boolean W Enables or disables this LogicalVolume instance. false 1.0
PhysicalReference string­(256) W

The value MUST be the Path Name of a row in the PhysicalMedium or StorageArray tables. Represents the physical medium or RAID where this LogicalVolume resides. The PhysicalMedium.{i}. or StorageArray.{i}. referenced by this parameter MUST exist within the same StorageService instance.

An AddObject followed by an enabling SetParameterValues on Name, PhysicalReference, and Capacity will cause the formatting of this logical partition and these parameters to become immutable for the life of this instance.

- 1.0
FileSystem string - The value MUST be a member of the list reported by the Capabilities.SupportedFileSystemTypes parameter. The file system for this LogicalVolume as it is currently formatted. - 1.0
Capacity unsignedInt W

The Capacity of the Logical Volume in MB.

Once this instance becomes enabled, this parameter will be immutable for the life of the instance.

- 1.0
UsedSpace unsignedInt - The Amount of Used Space on the Logical Volume in MB. - 1.0
ThresholdLimit unsignedInt W This value is specified in MB and controls when ThresholdReached will have its value altered. If the value of UsedSpace plus the value of ThresholdLimitr is greater than or equal to the value of Capacity then the value of ThresholdReached will be true, otherwise it will be false. Setting the value of this parameter to 0 will disable the Thresholding mechanism. 0 1.0
ThresholdReached boolean - When ThresholdLimit > 0 and UsedSpace + ThresholdLimit >= Capacity this will be true, else false. false 1.0
Encrypted boolean - Is the Volume Encrypted? The type of encryption will be handled by the device internally and is not a matter for remote management. - 1.0
FolderNumberOfEntries unsignedInt - The number of instances of LogicalVolume.{i}.Folder.{i}. on this LogicalVolume. - 1.0
StorageService.{i}.LogicalVolume.{i}.Folder.{i}. object W

This object provides information about each top-level folder configured on this logical volume. Each top-level folder allows the configuration of quotas and access permissions.

Creating an instance of this object generates a disabled Folder instance. Before this new Folder instance can be enabled (via a SetParameterValues command), it MUST have the Name configured. Folder instances are unique per LogicalVolume.{i}. and the unique key for this object is Name which also means that once an instance is enabled Name becomes immutable for the life of the instance.

At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the Agent MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries.

At most one enabled entry in this table can exist with a given value for Name.

- 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
Name string­(64) W

Setting of this variable will add a new folder. The full hierarchical pathname of the folder MUST be specified.

All folders created on the Logical Volume will appear here, created locally or via AddObject.

The local directory name will be formatted as a UNIX-style directory name, for example: /home/ftp

The presence of a trailing `/' character is inconsequential, meaning that /home/ftp/ is the same as /home/ftp.

Once this instance becomes enabled, this parameter will be immutable for the life of the instance. This parameter acts as the unique identifier for the instance, thus the device MUST NOT allow multiple Folder instances within a LogicalVolume.{i}. to use the same Name.

<Empty> 1.0
Enable boolean W Entry is enabled or disabled false 1.0
UserAccountAccess unsignedInt­[0:3] W

What are the User authentication requirements of this folder? The following bitmap is used.

11 = Authenticated Access required for Network protocols (NFS/AFP/SMB) and for non Network protocols (FTP/SFTP/HTTP/HTTPS)
10 = Authenticated Access required for Network protocols (NFS/AFP/SMB)
01 = Authenticated Access Required for non Network protocols (FTP/SFTP/HTTP/HTTPS)
00 = No Authentication required
2 1.0
UserAccessNumberOfEntries unsignedInt - The number of instances of LogicalVolume.{i}.Folder.{i}.UserAccess.{i}. on this LogicalVolume.{i}.Folder.{i}.. - 1.0
GroupAccessNumberOfEntries unsignedInt - The number of instances of LogicalVolume.{i}.Folder.{i}.GroupAccess.{i}. on this LogicalVolume.{i}.Folder.{i}. - 1.0
StorageService.{i}.LogicalVolume.{i}.Folder.{i}.UserAccess.{i}. object W

This object provides information about each user account configured for access permissions on this folder.

At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the Agent MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries.

At most one enabled entry in this table can exist with a given value for UserReference.

- 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
Enable boolean W Enables or disables the entry. false 1.1
UserReference string­(256) W The value MUST be the Path Name of a row in the UserAccount table. Represents a user that has access to this folder. The instance of UserAccount.{i}. referenced by this parameter MUST exist within the same StorageService instance. <Empty> 1.0
Permissions unsignedInt­[0:7] W

What permissions the user account has over this LogicalVolume.{i}.Folder.{i}.. This is an integer value like the xNIX systems use for access permissions, meaning that it is a 3-bit field with the following structure:

100 = read field
010 = write field
001 = execute field
7 1.0
StorageService.{i}.LogicalVolume.{i}.Folder.{i}.GroupAccess.{i}. object W

This object provides information about each user group configured for access permissions on this folder.

At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the Agent MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries.

At most one enabled entry in this table can exist with a given value for GroupReference.

- 1.0
Alias string­(64) W

A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference.

If the CPE supports the Alias-based Addressing feature as defined in [Section 3.6.1/TR-069a4] and described in [Appendix II/TR-069a4], the following mandatory constraints MUST be enforced:

  • Its value MUST NOT be empty.
  • Its value MUST start with a letter.
  • If its value is not assigned by the ACS, it MUST start with a "cpe-" prefix.
  • The CPE MUST NOT change the parameter value.
- 1.2
Enable boolean W

Enables or disables the entry.

The factory default value MUST be false.

- 1.1
GroupReference string­(256) W The value MUST be the Path Name of a row in the UserGroup table. Represents a user group that is a collection of User Accounts that have access to this folder. The UserGroup.{i}. referenced by this parameter MUST exist within the same StorageService instance. <Empty> 1.0
Permissions unsignedInt­[0:7] W

What permissions the group members have over this LogicalVolume.{i}.Folder.{i}. instance. This is an integer value like the xNIX systems use for access permissions, meaning that it is a 3-bit field with the following structure:

100 = read field
010 = write field
001 = execute field
7 1.0
StorageService.{i}.LogicalVolume.{i}.Folder.{i}.Quota. object - This object allows the configuration of per-folder storage quota management. - 1.0
Enable boolean W Enables or disables quota management for this folder. false 1.0
Capacity unsignedInt W Maximum size in MB of the quota for this folder. - 1.0
UsedSpace unsignedInt - Current size in MB of this folder. - 1.0
ThresholdLimit unsignedInt W This value is specified in MB and controls when ThresholdReached will have its value altered. If the value of UsedSpace plus the value of this parameter is greater than or equal to the value of Capacity then the value of ThresholdReached will be true, otherwise it will be false. Setting the value of this parameter to 0 will disable the Thresholding mechanism. 0 1.0
ThresholdReached boolean - When ThresholdLimit > 0 and UsedSpace + ThresholdLimit >= Capacity this will be true, else false. false 1.0

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
StorageService.{i}.
Alias
StorageService.{i}.UserGroup.{i}.
Alias
StorageService.{i}.UserAccount.{i}.
Alias
StorageService.{i}.PhysicalMedium.{i}.
Alias
Uptime
StorageService.{i}.StorageArray.{i}.
Alias
StorageService.{i}.LogicalVolume.{i}.
Alias
UsedSpace
StorageService.{i}.LogicalVolume.{i}.Folder.{i}.
Alias
StorageService.{i}.LogicalVolume.{i}.Folder.{i}.UserAccess.{i}.
Alias
StorageService.{i}.LogicalVolume.{i}.Folder.{i}.GroupAccess.{i}.
Alias
StorageService.{i}.LogicalVolume.{i}.Folder.{i}.Quota.
UsedSpace

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 is REQUIRED.
A Creation of instances of the object is REQUIRED, but deletion is not REQUIRED.
D Deletion of instances of the object is REQUIRED, but creation is not REQUIRED.

Baseline:1 Profile

This table defines the Baseline:1 profile for the StorageService:1 data model. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}. P
Enable W
PhysicalMediumNumberOfEntries R
LogicalVolumeNumberOfEntries R
StorageService.­{i}.­Capabilities. P
FTPCapable R
SFTPCapable R
HTTPCapable R
HTTPSCapable R
HTTPWritable R
SupportedNetworkProtocols R
SupportedFileSystemTypes R
VolumeEncryptionCapable R
StorageService.­{i}.­NetInfo. P
HostName W
DomainName W
StorageService.­{i}.­NetworkServer. P
AFPEnable R
NFSEnable R
SMBEnable R
NetworkProtocolAuthReq R
StorageService.­{i}.­PhysicalMedium.­{i}. P
Name R
Vendor R
Model R
SerialNumber R
FirmwareVersion R
ConnectionType R
Removable R
Capacity R
Status R
SMARTCapable R
HotSwappable R
StorageService.­{i}.­LogicalVolume.­{i}. P
Name R
Status R
Enable R
PhysicalReference R
FileSystem R
Capacity R
UsedSpace R
Encrypted R
FolderNumberOfEntries R
StorageService.­{i}.­LogicalVolume.­{i}.­Folder.­{i}. P
Name R
Enable R
UserAccountAccess R

UserAccess:1 Profile

This table defines the UserAccess:1 profile for the StorageService:1 data model. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}. P
UserAccountNumberOfEntries R
StorageService.­{i}.­NetworkServer. P
NetworkProtocolAuthReq W
StorageService.­{i}.­UserAccount.­{i}. C
Enable W
Username W
Password W
StorageService.­{i}.­LogicalVolume.­{i}.­Folder.­{i}. P
UserAccountAccess W
UserAccessNumberOfEntries R
StorageService.­{i}.­LogicalVolume.­{i}.­Folder.­{i}.­UserAccess.­{i}. C
UserReference W
Permissions W

GroupAccess:1 Profile

The GroupAccess:1 profile for the StorageService:1 data model is defined as the union of the UserAccess:1 profile and the additional requirements defined in this table. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}. P
UserGroupNumberOfEntries R
StorageService.­{i}.­UserGroup.­{i}. C
Enable W
GroupName W
StorageService.­{i}.­UserAccount.­{i}. C
UserGroupParticipation W
StorageService.­{i}.­LogicalVolume.­{i}.­Folder.­{i}.­GroupAccess.­{i}. C
GroupReference W
Permissions W

FTPServer:1 Profile

This table defines the FTPServer:1 profile for the StorageService:1 data model. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}.­FTPServer. P
Enable W
Status R
MaxNumUsers W
IdleTime W
PortNumber W
StorageService.­{i}.­FTPServer.­AnonymousUser. P
Enable W
StartingFolder W
ReadOnlyAccess W

SFTPServer:1 Profile

The SFTPServer:1 profile for the StorageService:1 data model is defined as the union of the FTPServer:1 and UserAccess:1 profiles and the additional requirements defined in this table. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}.­UserAccount.­{i}. P
AllowFTPAccess W
StorageService.­{i}.­SFTPServer. P
Enable W
Status R
MaxNumUsers W
IdleTime W
PortNumber W

HTTPServer:1 Profile

This table defines the HTTPServer:1 profile for the StorageService:1 data model. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}.­HTTPServer. P
Enable W
Status R
MaxNumUsers W
IdleTime W
HTTPWritingEnabled R
PortNumber W
AuthenticationReq W

HTTPSServer:1 Profile

The HTTPSServer:1 profile for the StorageService:1 data model is defined as the union of the HTTPServer:1 and UserAccess:1 profiles and the additional requirements defined in this table. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}.­UserAccount.­{i}. P
AllowHTTPAccess W
StorageService.­{i}.­HTTPSServer. P
Enable W
Status R
MaxNumUsers W
IdleTime W
HTTPWritingEnabled R
PortNumber W
AuthenticationReq W

VolumeConfig:1 Profile

The VolumeConfig:1 profile for the StorageService:1 data model is defined as the union of the Baseline:1 profile and the additional requirements defined in this table. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}.­PhysicalMedium.­{i}. P
Name W
StorageService.­{i}.­LogicalVolume.­{i}. C
Name W
Enable W
FileSystem R
Capacity W
StorageService.­{i}.­LogicalVolume.­{i}.­Folder.­{i}. C
Name W
Enable W
UserAccountAccess W

RAID:1 Profile

This table defines the RAID:1 profile for the StorageService:1 data model. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}. P
StorageArrayNumberOfEntries R
StorageService.­{i}.­Capabilities. P
SupportedRaidTypes R
StorageService.­{i}.­StorageArray.­{i}. C
Name W
Status R
Enable W
RaidType W
UsableCapacity R
PhysicalMediumReference W

FolderQuota:1 Profile

This table defines the FolderQuota:1 profile for the StorageService:1 data model. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}.­LogicalVolume.­{i}.­Folder.­{i}.­Quota. P
Enable W
Capacity W
UsedSpace R
ThresholdLimit W
ThresholdReached R

VolumeThresh:1 Profile

This table defines the VolumeThresh:1 profile for the StorageService:1 data model. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}.­LogicalVolume.­{i}. P
Capacity R
ThresholdLimit W
ThresholdReached R

NetServer:1 Profile

This table defines the NetServer:1 profile for the StorageService:1 data model. The minimum REQUIRED version for this profile is StorageService:1.0.

Name Requirement
StorageService.­{i}.­NetworkServer. P
AFPEnable W
NFSEnable W
SMBEnable W

Baseline:2 Profile

The Baseline:2 profile for the StorageService:1 data model is defined as the union of the Baseline:1 profile and the additional requirements defined in this table. The minimum REQUIRED version for this profile is StorageService:1.1.

Name Requirement
StorageServiceNumberOfEntries R

UserAccess:2 Profile

The UserAccess:2 profile for the StorageService:1 data model is defined as the union of the UserAccess:1 profile and the additional requirements defined in this table. The minimum REQUIRED version for this profile is StorageService:1.1.

Name Requirement
StorageService.­{i}.­LogicalVolume.­{i}.­Folder.­{i}.­UserAccess.­{i}. C
Enable W

GroupAccess:2 Profile

The GroupAccess:2 profile for the StorageService:1 data model is defined as the union of the GroupAccess:1 profile and the additional requirements defined in this table. The minimum REQUIRED version for this profile is StorageService:1.1.

Name Requirement
StorageService.­{i}.­LogicalVolume.­{i}.­Folder.­{i}.­GroupAccess.­{i}. C
Enable W


Generated by Broadband Forum report.pl#422 (2018/03/28 version) on 2018/04/02 at 12:26:45.
report.pl --exitcode=fatals --cwmpindex=.. --nofontstyles --nowarnreport --quiet --report=html --outfile=tr-140-1-2-0.html tr-140-1-2-0.xml