TP-181 - CWMP Interoperability and Functionality Test Plan
TP-181 - CWMP Interoperability and Functionality Test Plan
List of Figures
List of Tables
Notice
The Broadband Forum is a non-profit corporation organized to create guidelines for broadband
network system development and deployment. This Test Plan is owned and copyrighted by the
Broadband Forum, and portions of this Test Plan may be owned and/or copyrighted by
Broadband Forum members.
Intellectual Property
Recipients of this document are requested to submit, with their comments, notification of any
relevant patent claims or other intellectual property rights of which they may be aware that might
be infringed by any implementation of this Test Plan, and to provide supporting documentation.
Terms of Use
Recipients of this document may use it (a) for internal review and study purposes, (b) to provide
to the Broadband Forum the comments and notification requested in the preceding paragraph,
and (c) if the Recipient is a Broadband Forum member, to implement the Test Plan in a product
or service made commercially available. Any other use of this Test Plan is expressly prohibited
without the prior written consent of the Broadband Forum.
THIS TEST PLAN IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN
PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT AND ANY IMPLIED WARRANTIES
ARE EXPRESSLY DISCLAIMED. ANY USE OF THIS TEST PLAN SHALL BE MADE ENTIRELY
AT THE USER’S OR IMPLEMENTER’S OWN RISK, AND NEITHER THE FORUM, NOR ANY
OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY
USER, IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE
WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS TEST
PLAN, INCLUDING BUT NOT LIMITED TO, ANY CONSEQUENTIAL, SPECIAL, PUNITIVE,
INCIDENTAL AND INDIRECT DAMAGES.
All copies of this Test Plan (or any portion hereof) must include the notices, legends and other
provisions set forth on this page.
Issue History
Comments or questions about this Broadband Forum Test Plan should be directed to
[email protected].
Editors
Executive Summary
In order to ensure the continued growth of the TR-069 market and further the interoperability of
the protocol, the Broadband Forum is creating a TR-069 Certification Program. Within this
program, devices implementing a TR-069 management interface may be tested for their
conformance to the TR-069 specification and various use cases. The TR-069 Certification
Program started with the TR-069 Conformance Test Plan and now the CWMP Data Model
Implementation Test Plan. To provide a consistent scope for this verification, BBF developed
these test plans that are to be used by the testing agencies in the verification process.
This Test Plan provides a test plan that may be used to verify Interoperability of a CPE Device
with an ACS Server through use cases.
1.1 Purpose
The purpose of this document is to provide a set of use test cases, which will be used as a
common testing language during Interoperability testing of a CPE Device with an ACS Server.
1.2 Scope
The tests detailed in this document are only intended to facilitate TR-069 interoperability use
case testing. The tests in this document are limited to ACSs and CWMP enabled CPE devices.
2.1 Conventions
In this Test Plan, several words are used to signify the requirements of the specification. These
words are always capitalized. More information can be found be in RFC 2119 [4].
MUST This word, or the terms “REQUIRED”, means that the definition is an
absolute requirement of the specification.
MUST NOT This phrase means that the definition is an absolute prohibition of the
specification.
SHOULD This word, or the adjective “RECOMMENDED”, means that there could
exist valid reasons in particular circumstances to ignore this item, but the
full implications need to be understood and carefully weighed before
choosing a different course.
SHOULD This phrase, or the phrase “NOT RECOMMENDED” means that there
NOT could exist valid reasons in particular circumstances when the particular
behavior is acceptable or even useful, but the full implications need to be
understood and the case carefully weighed before implementing any
behavior described with this label.
MAY This word, or the adjective “OPTIONAL”, means that this item is one of
an allowed set of alternatives. An implementation that does not include
this option MUST be prepared to inter-operate with another
implementation that does include the option.
2.2 References
The following references are of relevance to this Test Plan. At the time of publication, the
editions indicated were valid. All references are subject to revision; users of this Test Plan are
therefore encouraged to investigate the possibility of applying the most recent edition of the
references listed below, including any released amendments or corrigendum materials.
forum.org.
[1] IR-069 Issue 2, TR-069 Conformance Test Plan, Broadband Forum, 2016
[2] OD-361, CWMP Certification Program Guidelines, Broadband Forum, 2016
[3] REC-xml, Extensible Markup Language (XML) 1.0 (Fifth Edition), W3C, 2008
[4] RFC 2119, Key words for use in RFCs to Indicate Requirement Levels, IETF, 1997
[5] RFC 2131, Dynamic Host Configuration Protocol, IETF
[6] RFC 2132, DHCP Options and BOOTP Vendor Extensions, IETF
[7] RFC 3315, Dynamic Host Configuration Protocol for IPv6 (DHCPv6), IETF, 2003
[8] TR-069 Amendment 6, CPE WAN Management Protocol, Broadband Forum, 2018
[9] TR-098 Amendment 2 Corrigendum 1, Internet Gateway Device Data Model for TR-069,
Broadband Forum, 2014
[10] TR-181 Issue 2, Device Data Model, Broadband Forum
2.3 Abbreviations
This Test Plan uses the following abbreviations:
CN Common Name
ID Identifier
IP Internet Protocol
TR Technical Report
WA Work Area
3.2 IPv6
TP-181 intends to support the IPv6 protocol. However, in this issue of the Working Text, IPv6
specific test cases have not been identified.
3.3 Security
TP-181 requires the use of authentication when connecting CPE to an ACS. Use of an HTTPS
URL indicates that the CPE can establish an SSL or TLS connection to the ACS.
4 Test Setup
Traffic To verify certain test metrics, Traffic Analyzers MUST be present between
Analyzer the CPE and ACS and between the CPE and any LAN Device
File Server The File Server MUST support HTTP PUT & GET, as well as FTP PUT &
GET
Network There may be one or more Network Routers between the CPE & ACS. If
Router the CPE is a LAN CPE, one Network Router may be configured to provide a
Network Address Translation (NAT) function
Firewall The Firewall MUST support the ability to selectively block traffic based on
IP address
NTP Two NTP Servers. Public NTP Servers such as NIST Internet Time Servers
Server may be used
DHCP To assign addresses and other provisioning information to the CPE on the
Server WAN
This section describes the test setup shared between all test cases. Any additional setup steps
will be described in the “Test Setup” section of the test case.
2. CPE is connected to the network and configured with an ACS URL that corresponds to the
ACS in step 1.
This section describes steps to determine the WAN interface of a device. These steps are
referenced in the Test Procedures.
The ACS performs a GetParameterNames RPC on the Interface table. The interface with the
WAN IP address is the WAN interface.
For CPE that support the InternetGatewayDevice:1 root data model [9]:
Each test is defined as a separate entity that can be run independent of all other test procedures.
These tests, performed sequentially, may cause changes to the ACS & CPE states during the
course of testing.
2. Each test case includes a References section that refers to a version of a data model
definition or other standard document. For all Broadband Forum data models and
Broadband Forum Technical Reports, the test case references the earliest version the CPE
can support to run the test case.
3. Each test case includes a Profiles section that includes the profiles needed to run the test
case. Any additional requirements are included in the Optional Features section. If the CPE
supports the profile and the optional feature listed, the test case MUST be run.
Note: For test cases that require Baseline:1 or Baseline:2 support, the CPE MUST
support each parameter listed in the test case, but does not need to support each
parameter in the profile.
A list of test cases by profile is included below. Note, there may be additional
parameters required or required parameter values. Refer to the test case for complete
information.
5 Test Procedures
5.1.1.1 Purpose:
5.1.1.2 References:
InternetGatewayDevice:1 [9]
Device:2 [10]
5.1.1.3 Profiles:
Baseline:1 Baseline:1
5.1.1.5 Parameters:
The following parameter is required to be implemented for this test. CPE supports FactoryReset
RPC.
For CPE that support the Device:2 data model:
ProvisioningCode <string>
ProvisioningCode <string>
5.1.1.7 Procedure:
1. ACS performs a GetParameterValues RPC on the above parameter to determine its value.
2. ACS performs a SetParameterValues RPC on the above parameter for a value that is
different than the value returned in step 1.
3. ACS performs a FactoryReset RPC to the CPE.
4. Allow the ACS to perform bootstrap procedures on the CPE, if it is configured to do so.
5. ACS performs a GetParameterValues RPC on the above parameter.
5.1.2.1 Purpose:
5.1.2.2 References:
Device:2 [10]
5.1.2.3 Profiles:
Time:1 N/A
None
5.1.2.5 Parameters:
Enable True
5.1.2.7 Procedure:
6. CPE is rebooted
7. ACS performs a GetParameterValues RPC on the Status and LocalTime parameters.
5.1.3.1 Purpose:
5.1.3.2 References:
InternetGatewayDevice:1 [9]
5.1.3.3 Profiles:
N/A Time:1
None
5.1.3.5 Parameters:
5.1.3.7 Procedure:
5.1.4.1 Purpose:
5.1.4.2 References:
InternetGatewayDevice:1 [9]
Device:2 [10]
5.1.4.3 Profiles:
Baseline:1 Baseline:1
None
5.1.4.5 Parameters:
The following parameter is required to be implemented by the CPE for this test.
For CPE that support the Device:2 data model:
5.1.4.7 Procedure:
CommandKey <string>
DelaySeconds
SuccessURL <empty>
FailureURL <empty>
Allow the CPE to complete firmware download from the file server, apply the firmware, and
reboot if necessary After CPE issues a “7 TRANSER COMPLETE” event code, the ACS issues a
GetParameterValues RPC on the on the CPE SoftwareVersion parameter listed in the
parameters section to learn the CPEs new software version
1. Ensure the software version reported by the CPE before the firmware download is different
than the software version reported by the CPE after the firmware download.
5.1.5 GetRPCMethods
5.1.5.1 Purpose:
This test is designed to verify that the ACS can schedule a GetRPCMethods RPC to a CPE and
get back the correct response
5.1.5.2 References:
5.1.5.3 Profiles:
N/A N/A
None
5.1.5.5 Parameters:
None.
5.1.5.7 Procedure:
5.1.6.1 Purpose:
This test is designed to verify that the ACS can schedule an upload of a CPE’s configuration and
then perform a restoration of that same configuration.
5.1.6.2 References:
5.1.6.3 Profiles:
Baseline:1 Baseline:1
Upload RPC
5.1.6.5 Parameters:
These arguments are for the Upload and Download RPCs. Note, if the CPE supports Upload
FileType “3 Vendor Configuration File <i>”, the test case MUST be run using that FileType.
CommandKey <string>
DelaySeconds
CommandKey <string>
DelaySeconds
SuccessURL <empty>
FailureURL <empty>
number to upload.
5.1.6.7 Procedure:
1. Verify that the CPE responds to the Upload RPC with an UploadResponse
2. Verify that the DUT uploaded the configuration to the server
3. Verify that the CPE sends Periodic Informs at the interval set in Step 4.
4. Verify that the CPE responds to the Download RPC with a DownloadResponse
5. Verify that the CPE sends Periodic Informs at the interval returned from the device in Step 1.
5.1.7.1 Purpose:
This test is designed to verify that the ACS can configure the PPP interface of the CPE.
5.1.7.2 References:
InternetGatewayDevice:1.4
Device:2 [10]
5.1.7.3 Profiles:
PPPInterface:1 Baseline:2
None
5.1.7.5 Parameters:
This test is only applicable to CPE that use PPP to obtain an IP address. The following
parameters are required to be implemented for this test.
For CPE that support the Device:2 data model:
Reset true
Username username1,
username2
Password password1,
password2
Reset true
5.1.7.7 Procedure:
5.1.8.1 Purpose:
To verify that an ACS can configure the basic DHCPv4 configuration required on a CPE device.
5.1.8.2 References:
InternetGatewayDevice:1 [9]
Device:2 [10]
RFC 2131 [5]
5.1.8.3 Profiles:
DHCPv4Server:1 Baseline:2
DHCPLeaseTime is included in data model for CPE that support the InternetGatewayDevice:1
data model.
5.1.8.5 Parameters:
Enable true
LeaseTime 60
DHCPServerConfigurable true
DHCPServerEnable true
MinAddress <minimum
address>
MaxAddress <maximum
address>
DHCPLeaseTime 60
5.1.8.7 Procedure:
1. If the DUT implements the Device:2 root data model, and no entry exists for
Device.DHCPv4.Server.Pool.{i}., perform an AddObject RPC on Device.Server.Pool.,
recording the InstanceNumber value returned in the AddObjectResponse.
2. On the ACS schedule a SetParameterValues RPC on the appropriate Configurable
parameters in the Parameters Section, setting the DHCP pool’s minimum and maximum to
be completely outside the existing range, if any (for example, by setting the new minimum
above the current maximum).
3. Allow the end system to connect to the CPE via DHCP.
4. Perform a reboot of the CPE
5. Allow the end system to connect to the CPE via DHCP
5.1.9.1 Purpose:
This is a test case to verify that the ACS can change the Boolean on a CPE and receive the
correct response.
5.1.9.2 References:
5.1.9.3 Profiles:
Baseline:1 Baseline:1
None
5.1.9.5 Parameters:
5.1.9.7 Procedure:
5.1.10.1 Purpose:
To verify that an ACS and CPE can interoperate using Encryption protocols.
5.1.10.2 References:
5.1.10.3 Profiles:
N/A N/A
Secure CWMP
5.1.10.5 Parameters:
5.1.10.7 Procedure:
1. Allow the CPE to establish an encrypted CWMP session with the ACS.
2. On the ACS schedule a GetParametersValues RPC on the CPE.
3. Allow the CPE to respond with the GetParametersValuesResponse containing the requested
parameters.
5.1.11.1 Purpose:
To verify that vendor specific CPE objects and parameters can be read and processed in an
ACS.
5.1.11.2 References:
5.1.11.3 Profiles:
None
5.1.11.5 Parameters:
Vendor supplied vendor specific parameter, type, and purpose. Vendor supplied vendor specific
object and purpose.
5.1.11.7 Procedure:
1. Verify that the ACS can process all vendor specific parameters and objects.
5.1.12.1 Purpose:
5.1.12.2 References:
5.1.12.3 Profiles:
None
5.1.12.5 Parameters:
Refer to Common Test Setup for setup steps. Obtain a writable vendor specific parameter,
parameter type, and parameter purpose from the vendor.
5.1.12.7 Procedure:
1. Verify that the SetParameterValues RPC in Step 2 completes and the CPE responds with a
correct SetParameterValuesResponse RPC.
2. Verify that the GetParametersValues RPC in Step 3 completes and the CPE responds with a
correct GetParameterValuesResponse RPC.
3. Verify that the value in the GetParameterValues in Step 3 matches the value set in Step 2.
4. Verify that the value in the GetParameterValues in Step 5 matches the value set in Step 2.
5.2 Diagnostics
5.2.1.1 Purpose:
To verify that an ACS can perform an IP Ping Diagnostics test on the CPE.
5.2.1.2 References:
InternetGatewayDevice:1 [9]
Device:2 [10]
5.2.1.3 Profiles:
None
5.2.1.5 Parameters:
DiagnosticsState Requested
NumberOfRepetitions
Timeout 1000
DataBlockSize 128
DSCP
Device.IP.Interface. Device.IP.Interface.
DiagnosticsState Requested
NumberOfRepetitions
Timeout 1000
DataBlockSize 128
DSCP
DefaultConnectionService Returned
from device
5.2.1.7 Procedure:
1. Verify that the CPE transmitted 3 ICMP Echo Requests to the target Host.
2. Validate that the CPE sends an Inform RPC to the ACS with Event Code “8 DIAGNOSTICS
COMPLETE”.
3. Validate that the DiagnosticsState is set to “Complete”.
4. Verify that the SuccessCount and FailureCount match what is seen on the network capture.
5.2.2.1 Purpose:
To verify that an ACS and CPE can interoperate while performing the download diagnostics
function over HTTP. This test will be run if supported on the CPE.
5.2.2.2 References:
InternetGatewayDevice.1.3
Device:2 [10]
5.2.2.3 Profiles:
Download:1 Download:1
None
5.2.2.5 Parameters:
DiagnosticsState Requested
DiagnosticsState Requested
The DownloadTransports parameter MUST include HTTP for this test to be executed.
5.2.2.7 Procedure:
5.2.3.1 Purpose:
To verify that an ACS and CPE can inter-operate while performing the download diagnostics
function over FTP. This test will be run if supported on the CPE.
5.2.3.2 References:
InternetGatewayDevice.1.3
Device:2 [10]
5.2.3.3 Profiles:
Download:1 Download:1
5.2.3.5 Parameters:
DiagnosticsState Requested
DiagnosticsState Requested
The DownloadTransports parameter MUST include FTP for this test to be executed.
5.2.3.7 Procedure:
5.2.4.1 Purpose:
To verify that an ACS and CPE can inter-operate while performing the upload diagnostics
function over HTTP. This test will be run if supported on the CPE.
5.2.4.2 References:
InternetGatewayDevice.1.3
Device:2 [10]
5.2.4.3 Profiles:
Upload:1 Upload:1
None
5.2.4.5 Parameters:
DiagnosticsState Requested
DiagnosticsState Requested
The UploadTransports parameter MUST include HTTP for this test to be executed.
5.2.4.7 Procedure:
COMPLETE”
3. Verify that the GetParameterValuesResponse contains a valid value for the DiagnosticsState
parameter.
4. Verify that the test server received a file of TestLengthBytes size.
5. Verify that EOMTime – BOMTime is within 1 second of the time that the file server reports
the transfer took.
6. Verify that the GetParameterValuesResponse contains a valid value for the DiagnosticsState
parameter.
1. If the value is “Completed” verify that the values in the UploadDiagnostic object are the
same as they were before the reboot.
2. Verify that TotalBytesSent is within 1% of the measured traffic.
5.2.5.1 Purpose:
To verify that an ACS and CPE can inter-operate while performing the upload diagnostics
function over FTP. This test will be run if supported on the CPE.
5.2.5.2 References:
InternetGatewayDevice.1.3
Device:2 [10]
5.2.5.3 Profiles:
Upload:1 Upload:1
5.2.5.5 Parameters:
DiagnosticsState Requested
DiagnosticsState Requested
The UploadTransports parameter MUST include FTP for this test to be executed.
5.2.5.7 Procedure:
5.2.6 TraceRoute
5.2.6.1 Purpose:
This test is designed to validate that the CPE supports TraceRoute diagnostics test and reports
results appropriately to the ACS.
5.2.6.2 References:
InternetGatewayDevice:1.4
Device:2 [10]
5.2.6.3 Profiles:
TraceRoute:1 TraceRoute:1
None
5.2.6.5 Parameters:
DiagnosticsState Requested
NumberOfTries
Timeout 5000
DataBlockSize 128
DSCP
MaxHopCount 30
DiagnosticsState Requested
NumberOfTries
Timeout 5000
DataBlockSize 128
DSCP
MaxHopCount 30
DefaultConnectionService Returned
from device
5.2.6.7 Procedure:
1. Establish a CWMP session between the CWMP Analyzer and DUT with successful Inform
exchanges.
2. Schedule a GetParameterValues RPC on the current WAN interface.
3. Schedule a SetParameterValues RPC on the DUT on the trace route diagnostic parameters
listed above.
4. Schedule a GetParameterValues RPC on the DUT on Diagnostic State.
5. Schedule a GetParameterValues RPC on the CPE on the RouteHops table.
1. The DUT can properly respond to the GetParameterValues request on WAN interface.
2. The DUT is able to properly respond to the SetParameterValues for diagnostics parameter.
3. Verify that the CPE performed the TraceRoute test on the target Host.
4. Validate that the CPE sends an Inform RPC to the ACS with Event Code “8 DIAGNOSTICS
COMPLETE”.
5. Validate that the DiagnosticsState is set to “Complete”.
6. Validate that the Entries in the RouteHops table match the traceroute traffic on the WAN.
5.2.7.1 Purpose:
This test is designed to verify that the ACS can configure the UDPEcho service on the CPE and
that the CPE implements that service correctly.
5.2.7.2 References:
InternetGatewayDevice:1.3
Device:2 [10]
5.2.7.3 Profiles:
UDPEcho:1 UDPEcho:1
None
5.2.7.5 Parameters:
Enable <boolean>
UDPPort <port>
Enable <boolean>
UDPPort <port>
5.2.7.7 Procedure:
11. ACS schedules a GetParameterValues RPC on the CPE, reading PacketsReceived and
PacketsResponded.
12. Allow the CPE to respond with the GetParameterValuesResponse
5.3.1.1 Purpose:
This test is designed to verify that the ACS can determine the current configuration of the
interfaces on the CPE.
5.3.1.2 References:
Section 4/TR-181i2
5.3.1.3 Profiles:
None
5.3.1.5 Parameters:
5.3.1.7 Procedure:
1. On the ACS schedule a GetParameterValues RPC for the InterfaceStack on the CPE.
2. Allow the CPE to respond with a GetParameterValuesResponse
3. On the ACS schedule a GetParameterValues on each interface returned in the
InterfaceStack.
5.3.2.1 Purpose:
This test is designed to verify that the ACS can determine the current connected LAN devices on
the CPE and get back the correct response
5.3.2.2 References:
InternetGatewayDevice:1.4
5.3.2.3 Profiles:
N/A Baseline:2
None
5.3.2.5 Parameters:
5.3.2.7 Procedure:
5.3.3.1 Purpose:
This test is designed to verify that the ACS can determine the current connected LAN devices on
the CPE and get back the correct response
5.3.3.2 References:
Device:2.2
5.3.3.3 Profiles:
Hosts:2 N/A
None
5.3.3.5 Parameters:
5.3.3.7 Procedure:
5.3.4.1 Purpose:
This test is designed to verify that the ACS can determine the current connected LAN devices on
the CPE and get back the correct response
5.3.4.2 References:
Device:2.2 [10]
RFC 2131 [5]
RFC 2132 [6]
RFC 3315 [7]
5.3.4.3 Profiles:
None
5.3.4.5 Parameters:
5.3.4.7 Procedure:
1. Connect each LAN device so it is configured to use DHCP for its addressing information
2. On the ACS schedule a GetParameterValues RPC for Device.Hosts. on the CPE
3. Allow the CPE to respond
4. On the ACS schedule a GetParameterValues RPC for all the AssociatedDevices returned
5. Allow the CPE to respond
6. On the ACS schedule a GetParameterValues RPC for all the DHCPClient values returned
5.3.5.1 Purpose:
This test is designed to verify that the ACS can determine when the set of LAN devices on the
CPE changes and get back the correct response
5.3.5.2 References:
Device:2 [10]
InternetGatewayDevice:1 [9]
5.3.5.3 Profiles:
Hosts:1 Baseline:1
None
5.3.5.5 Parameters:
5.3.5.7 Procedure:
1. On the ACS schedule a SetParameterAttributes RPC with active notification on the CPE for
HostNumberOfEntries
2. Connect a device to the CPE on each interface the CPE supports.
3. Verify that the ACS receives a notification containing the HostNumberOfEntries parameter.
4. On the ACS schedule a SetParameterAttributes RPC with active notification on the CPE for
each host object’s active parameter (Host.{i}.Active).
5. Disconnect a device from the CPE
6. Verify that the ACS receives a notification containing the Active parameter.
7. Schedule a GetParameterNames RPC on the CPE for Host.
5.4.1.1 Purpose:
To verify that an ACS can create a port mapping, the CPE can create the port mapping that the
ACS requested, and that internet traffic can traverse the port mapping.
5.4.1.2 References:
InternetGatewayDevice:1 [9]
Device:2 [10]
5.4.1.3 Profiles:
NAT:1 Baseline:1
None
5.4.1.5 Parameters:
The following parameters are required to be implemented by the CPE for this test:
Enable true
LeaseDuration
ExternalPort 1400
InternalPort 1401
Protocol UDP
PortMappingEnabled true
PortMappingLeaseDuration
ExternalPort 1400
InternalPort 1401
PortMappingProtocol UDP
5.4.1.7 Procedure:
1. Validate that the values of the PortMapping instance match the values that were set.
2. Validate that the CPE retains the PortMapping instance and configuration across a reboot.
3. Validate that the UDP traffic is forwarded to the LAN Device’s IP address, port 1401.
5.4.2.1 Purpose:
To verify that an ACS can create a port mapping, the CPE can create the port mapping that the
ACS requested, and that internet traffic can traverse the port mapping.
5.4.2.2 References:
Device:2 [10]
5.4.2.3 Profiles:
NAT:1 N/A
None
5.4.2.5 Parameters:
The following parameters are required to be implemented by the CPE for this test:
Enable true
AllInterfaces true
LeaseDuration
ExternalPort 1400
InternalPort 1401
Protocol UDP
1. Refer to Common Test Setup for setup steps. Have a LAN device connected to the LAN
side of the CPE Have a device connected on the WAN side of the CPE that can send UDP
traffic. ACS ensures that the port mapping being created doesn’t already exist by retrieving
all instances of the PortMapping table via a GetParamterValues RPC
1. If PortMapping already exists, remove it via the DeleteObject RPC
2. Have a Network Analyzer to capture traffic between the CPE and the LAN device.
5.4.2.7 Procedure:
1. Validate that the values of the PortMapping instance match the values that were set.
2. Validate that the UDP traffic is forwarded to the LAN Device’s IP address, port 1401.
5.4.3.1 Purpose:
To verify that an ACS can create a port mapping, the CPE can create the port mapping that the
ACS requested, and that internet traffic can traverse the port mapping.
5.4.3.2 References:
InternetGatewayDevice:1.4
and Device:2 [10]
5.4.3.3 Profiles:
NAT:1 Baseline:1
5.4.3.5 Parameters:
Enable true
LeaseDuration
ExternalPort 1400
ExternalPortEndRange 1405
InternalPort 1401
Protocol UDP
PortMappingEnabled true
PortMappingLeaseDuration
ExternalPort 1400
ExternalPortEndRange 1405
InternalPort 1401
PortMappingProtocol UDP
5.4.3.7 Procedure:
1. Validate that the values of the PortMapping instance match the values that were set.
2. Validate that the UDP traffic to port 1400 is forwarded to the LAN Device’s IP address, port
1401.
3. Validate that the UDP traffic to port 1403 is forwarded to the LAN Device’s IP address, port
1401.
5.4.4.1 Purpose:
To verify that an ACS can create a port mapping, the CPE can create the port mapping that the
ACS requested, and that internet traffic can traverse the port mapping.
5.4.4.2 References:
InternetGatewayDevice:1 [9]
Device:2 [10]
5.4.4.3 Profiles:
NAT:1 Baseline:1
5.4.4.5 Parameters:
Enable true
LeaseDuration 120
ExternalPort 1400
InternalPort 1401
Protocol UDP
PortMappingEnabled true
PortMappingLeaseDuration 120
ExternalPort 1400
InternalPort 1401
PortMappingProtocol UDP
5.4.4.7 Procedure:
6. Send UDP traffic to the CPE’s IP Address with destination port 1400 from the WAN side of
the CPE.
1. Validate that the values of the PortMapping instance match the values that were set.
2. Validate that the UDP traffic to port 1400 is forwarded to the LAN Device’s IP address, port
1401.
3. Validate that the UDP traffic to port 1400 is NOT forwarded to the LAN Device after the
PortMapping Instance expires.
5.4.5.1 Purpose:
To verify that an ACS can create a port mapping, the CPE can create the port mapping that the
ACS requested, and that internet traffic can traverse the port mapping.
5.4.5.2 References:
InternetGatewayDevice:1 [9]
and Device:2 [10]
5.4.5.3 Profiles:
NAT:1 Baseline:1
5.4.5.5 Parameters:
Enable true
LeaseDuration
ExternalPort 1400
InternalPort 1401
Protocol UDP
PortMappingEnabled true
PortMappingLeaseDuration
ExternalPort 1400
InternalPort 1401
PortMappingProtocol UDP
5.4.5.7 Procedure:
1. Validate that the values of the PortMapping instance match the values that were set.
2. Validate that the UDP traffic to port 1400 from WANDevice1 is forwarded to the LAN
Device’s IP address, port 1401.
3. Validate that the UDP traffic to port 1400 from WANDevice2 is NOT forwarded to the LAN
Device.
5.4.6.1 Purpose:
To verify that an ACS can create a port mapping, the CPE can create the port mapping that the
ACS requested, and that internet traffic can traverse the port mapping.
5.4.6.2 References:
InternetGatewayDevice:1 [9]
and Device:2 [10]
5.4.6.3 Profiles:
NAT:1 Baseline:1
None
5.4.6.5 Parameters:
Enable true
LeaseDuration
ExternalPort
InternalPort 1401
Protocol UDP
PortMappingEnabled true
PortMappingLeaseDuration
ExternalPort
InternalPort 1401
PortMappingProtocol UDP
5.4.6.7 Procedure:
1. Validate that the values of the PortMapping instance match the values that were set.
2. Validate that the UDP traffic to port 1399 from WANDevice1 is forwarded to the LAN
Device’s IP address, port 1401.
3. Validate that the UDP traffic to port 1400 from WANDevice2 is forwarded to the LAN
Device’s IP address, port 1402.
5.4.7.1 Purpose:
To verify that an ACS can change a port mapping, the CPE can change the port mapping in the
way that the ACS requested, and that internet traffic can traverse the altered port mapping.
5.4.7.2 References:
InternetGatewayDevice:1 [9]
Device:2 [10]
5.4.7.3 Profiles:
NAT:1 Baseline:1
None
5.4.7.5 Parameters:
Enable true
LeaseDuration
ExternalPort 1400
InternalPort 1401
Protocol UDP
PortMappingEnabled true
PortMappingLeaseDuration
ExternalPort 1400
InternalPort 1401
PortMappingProtocol UDP
5.4.7.7 Procedure:
1. Validate that the UDP traffic to port 1400 is forwarded to the LAN Device’s IP address, port
1401.
2. Validate that the values of the PortMapping instance match the values that were set.
3. Validate that the UDP traffic to port 1401 is forwarded to the LAN Device’s IP address, port
1402.
5.4.8.1 Purpose:
To verify that an ACS can remove a port mapping, the CPE can remove the port mapping that
the ACS requested, and that internet traffic will not traverse the across the removed port
mapping.
5.4.8.2 References:
InternetGatewayDevice:1 [9]
and Device:2 [10]
5.4.8.3 Profiles:
NAT:1 Baseline:1
None
5.4.8.5 Parameters:
The following parameters are required to be implemented by the CPE for this test:
Enable true
LeaseDuration
ExternalPort 1400
InternalPort 1401
Protocol UDP
PortMappingEnabled true
PortMappingLeaseDuration
ExternalPort 1400
InternalPort 1401
PortMappingProtocol UDP
5.4.8.7 Procedure:
1. Send UDP traffic to the CPE’s IP Address with destination port 1400 from the WAN side of
the CPE.
2. ACS performs a DeleteObject RPC on the PortMapping Instance.
3. ACS validates that the PortMapping entry no longer exists by retrieving all instances of the
PortMapping table via a GetParamterValues RPC
4. Send UDP traffic to the CPE’s IP Address with destination port 1400 from the WAN side of
the CPE.
1. Validate that the UDP traffic to port 1400 is forwarded to the LAN Device’s IP address, port
1401.
2. Validate that the PortMapping Instance no longer exists in the table.
3. Validate that the UDP traffic to port 1400 is NOT forwarded to the LAN Device after the
PortMapping has been deleted.
5.4.9.1 Purpose:
To verify that an ACS can create a port mapping, the CPE can create the port mapping that the
ACS requested, and that internet traffic can traverse the port mapping.
5.4.9.2 References:
InternetGatewayDevice:1 [9]
Device:2 [10]
5.4.9.3 Profiles:
NAT:1 Baseline:1
None
5.4.9.5 Parameters:
The following parameters are required to be implemented by the CPE for this test:
Enable true
LeaseDuration
ExternalPort 1400
InternalPort 1401
Protocol TCP
PortMappingEnabled true
PortMappingLeaseDuration
ExternalPort 1400
InternalPort 1401
PortMappingProtocol TCP
5.4.9.7 Procedure:
1. Validate that the values of the PortMapping instance match the values that were set.
2. Validate that the CPE retains the PortMapping instance and configuration across a reboot.
3. Validate that the TCP traffic is forwarded to the LAN Device’s IP address, port 1401.
5.5.1.1 Purpose:
To verify the ACS can configure a firewall with a default policy on the CPE.
5.5.1.2 References:
Device:2.2
5.5.1.3 Profiles:
AdvancedFirewall:1 N/A
None
5.5.1.5 Parameters:
Enable true
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
DefaultPolicy Accept
Enable true
Target Drop
SourceIP <Unused IP
Address>
5.5.1.7 Procedure:
1. Configure ACS to send an AddObject RPC for Device.Firewall.Level and record the returned
instance number.
3. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule using the path
returned in step 2 and record the returned instance number.
DefaultPolicy Drop
10. WAN Device attempts to open a TCP connection with End Device.
5.5.2.1 Purpose:
To verify the ACS can configure a firewall on the CPE that denies or allows specific outbound
protocols.
5.5.2.2 References:
Device:2.2
5.5.2.3 Profiles:
AdvancedFirewall:1 N/A
None
5.5.2.5 Parameters:
Enable true
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
DefaultPolicy Drop
Enable true
Target Accept
5.5.2.7 Procedure:
1. Configure ACS to send an AddObject RPC for Device.Firewall.Level and record the returned
instance number.
3. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule using the path
returned in step 2 and record the returned instance number.
4. ACS performs a SetParameterValues RPC on the following parameters using the instance
numbers returned in steps 1-3.
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
DefaultPolicy Drop
Target Accept
DestIP <Unused IP
Address>
SourceIP <Unused IP
Address>
8. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule. and record the
returned instance number.
9. ACS Configures the new Firewall Rule by sending a SetParameterValues RPC with the
following name/value pairs using the instance number returned in step 8.
Enable true
Target Accept
Protocol 6 (TCP)
10. End Device attempts to open a TCP connection with WAN Device.
11. End Device attempts to open a UDP connection with WAN Device.
12. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule. and record the
returned instance number.
13. ACS Configures the new Firewall Rule by sending a SetParameterValues RPC with the
following name/value pairs using the instance number returned in step 12.
Enable true
Target Accept
Protocol 17 (UDP)
14. End Device attempts to open a TCP connection with WAN Device.
15. End Device attempts to open a UDP connection with WAN Device.
1. In Step 6, CPE does not forward TCP traffic to the WAN side.
2. In Step 7, CPE does not forward UDP traffic to the WAN side.
3. In Step 10, CPE forwards TCP traffic to the WAN side.
4. In Step 11, CPE does not forward UDP traffic to the WAN side.
5. In Step 14, CPE forwards TCP traffic to the WAN side.
6. In Step 15, CPE forwards UDP traffic to the WAN side.
5.5.3.1 Purpose:
To verify the ACS can configure a firewall on the CPE that denies or allows specific outbound
ports.
January 2022 © The Broadband Forum. All rights reserved. 100 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.5.3.2 References:
Device:2.2
5.5.3.3 Profiles:
AdvancedFirewall:1 N/A
None
5.5.3.5 Parameters:
Enable true
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
DefaultPolicy Drop
Enable true
Target Accept
January 2022 © The Broadband Forum. All rights reserved. 101 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
DestPort int[-1:65535]
5.5.3.7 Procedure:
1. Configure ACS to send an AddObject RPC for Device.Firewall.Level and record the returned
instance number.
3. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule using the path
returned in step 2 and record the returned instance number.
4. ACS performs a SetParameterValues RPC on the following parameters using the instance
numbers returned in steps 1-3.
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
January 2022 © The Broadband Forum. All rights reserved. 102 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
DefaultPolicy Drop
Target Accept
DestIP <Unused IP
Address>
SourceIP <Unused IP
Address>
6. End Device attempts to open a TCP connection, destination port 80, with WAN Device.
7. End Device attempts to open a TCP connection, destination port 443, with WAN Device.
8. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule and record the
returned instance number.
9. ACS Configures the new Firewall Rule by sending a SetParameterValues RPC with the
following name/value pairs using the instance number returned in step 8.
Enable true
Target Accept
Protocol
DestPort 80
10. End Device attempts to open a TCP connection, destination port 80, with WAN Device.
11. End Device attempts to open a TCP connection, destination port 443, with WAN Device.
January 2022 © The Broadband Forum. All rights reserved. 103 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
12. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule and record the
returned instance number.
13. ACS Configures the new Firewall Rule by sending a SetParameterValues RPC with the
following name/value pairs using the instance number returned in step 12.
Enable true
Target Accept
Protocol
DestPort 443
14. End Device attempts to open a TCP connection, destination port 80, with WAN Device.
15. End Device attempts to open a TCP connection, destination port 443, with WAN Device.
1. In Step 6, CPE does not forward TCP traffic with destination port 80 to the WAN side.
2. In Step 7, CPE does not forward TCP traffic with destination port 443 to the WAN side.
3. In Step 10, CPE forwards TCP traffic with destination port 80 to the WAN side.
4. In Step 11, CPE does not forward TCP traffic with destination port 443to the WAN side.
5. In Step 14, CPE forwards TCP traffic with destination port 80 to the WAN side.
6. In Step 15, CPE forwards TCP traffic with destination port 443 to the WAN side.
5.5.4.1 Purpose:
To verify the ACS can configure a firewall on the CPE that denies or allows specific outbound
ports.
January 2022 © The Broadband Forum. All rights reserved. 104 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.5.4.2 References:
Device:2.2
5.5.4.3 Profiles:
AdvancedFirewall:1 N/A
None
5.5.4.5 Parameters:
Enable true
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
DefaultPolicy Drop
Enable true
Target Accept
January 2022 © The Broadband Forum. All rights reserved. 105 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
DestPort int[-1:65535]
5.5.4.7 Procedure:
1. Configure ACS to send an AddObject RPC for Device.Firewall.Level and record the returned
instance number.
3. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule using the path
returned in step 2 and record the returned instance number.
4. ACS performs a SetParameterValues RPC on the following parameters using the instance
numbers returned in steps 1-3.
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
January 2022 © The Broadband Forum. All rights reserved. 106 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
DefaultPolicy Drop
Target Accept
DestIP <Unused IP
Address>
SourceIP <Unused IP
Address>
6. End Device 1 attempts to open a TCP connection, destination port 80, with WAN Device.
7. End Device 2 attempts to open a TCP connection, destination port 80, with WAN Device.
8. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule and record the
returned instance number.
9. ACS Configures the new Firewall Rule by sending a SetParameterValues RPC with the
following name/value pairs using the instance number returned in step 8.
Enable true
Target Accept
Protocol
DestPort 80
10. End Device 1 attempts to open a TCP connection, destination port 80, with WAN Device.
January 2022 © The Broadband Forum. All rights reserved. 107 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
11. End Device 2 attempts to open a TCP connection, destination port 80, with WAN Device.
12. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule and record the
returned instance number.
13. ACS Configures the new Firewall Rule by sending a SetParameterValues RPC with the
following name/value pairs using the instance number returned in step 12.
Enable true
Target Accept
Protocol
DestPort 80
14. End Device 1 attempts to open a TCP connection, destination port 80, with WAN Device.
15. End Device 2 attempts to open a TCP connection, destination port 80 with WAN Device.
1. In Step 6, CPE does not forward TCP traffic from End Device 1 to the WAN side.
2. In Step 7, CPE does not forward TCP traffic from End Device 2 to the WAN side.
3. In Step 10, CPE forwards TCP traffic from End Device 1 to the WAN side.
4. In Step 11, CPE does not forward TCP traffic from End Device 2 to the WAN side.
5. In Step 14, CPE forwards TCP traffic from End Device 1 to the WAN side.
6. In Step 15, CPE forwards TCP traffic from End Device 2 to the WAN side.
January 2022 © The Broadband Forum. All rights reserved. 108 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.1.1 Purpose:
To verify that an ACS can set a valid wireless LAN configuration on the CPE using WEP 64
encryption.
5.6.1.2 References:
InternetGatewayDevice:1.4
5.6.1.3 Profiles:
N/A WiFiLan:1
5.6.1.5 Parameters:
The following parameters are required to be implemented for this test. A CPE MUST support
WEP-64 encryption in order to run this test.
Enable true
RadioEnabled true
SSID <string>
Channel <unsignedint>
BeaconType Basic
BeaconAdvertisementEnabled true
BasicEncryptionModes WEPEncryption
January 2022 © The Broadband Forum. All rights reserved. 109 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
BasicAuthenticationMode None
WEPKey 5-character
hexadecimal string
5.6.1.7 Procedure:
5.6.2.1 Purpose:
To verify that an ACS can set a valid wireless LAN configuration on the CPE using WEP 128
January 2022 © The Broadband Forum. All rights reserved. 110 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
encryption.
5.6.2.2 References:
InternetGatewayDevice:1.4
5.6.2.3 Profiles:
N/A WiFiLan:1
5.6.2.5 Parameters:
The following parameters are required to be implemented for this test. A CPE MUST support
WEP-128 encryption in order to run this test.
Enable true
RadioEnabled true
SSID <string>
Channel <unsignedint>
BeaconType Basic
BeaconAdvertisementEnabled true
BasicEncryptionModes WEPEncryption
BasicAuthenticationMode None
January 2022 © The Broadband Forum. All rights reserved. 111 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
WEPKey 13-character
hexadecimal string
5.6.2.7 Procedure:
5.6.3.1 Purpose:
To verify that an ACS can set a valid Wireless LAN configuration on the CPE using WPA
Personal encryption.
January 2022 © The Broadband Forum. All rights reserved. 112 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.3.2 References:
InternetGatewayDevice:1.4
5.6.3.3 Profiles:
N/A WiFiLan:1
5.6.3.5 Parameters:
Enable true
RadioEnabled true
SSID <string>
Channel <unsignedint>
BeaconType WPA
BeaconAdvertisementEnabled true
WPAEncryptionModes AESEncryption
WPAAuthenticationMode PSKAuthentication
PreSharedKey Hexadecimal
string
January 2022 © The Broadband Forum. All rights reserved. 113 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.3.7 Procedure:
5.6.4.1 Purpose:
To verify that an ACS can set a valid Wireless LAN configuration on the CPE using WPA2-
Personal encryption.
5.6.4.2 References:
InternetGatewayDevice:1.4
5.6.4.3 Profiles:
N/A WiFiLan:1
January 2022 © The Broadband Forum. All rights reserved. 114 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.4.5 Parameters:
Enable true
RadioEnabled true
SSID <string>
Channel <unsignedint>
BeaconType 11i
BeaconAdvertisementEnabled true
IEEE11iEncryptionModes AESEncryption
IEEE11iAuthenticationMode PSKAuthentication
PreSharedKey Hexadecimal
string
5.6.4.7 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 115 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.5.1 Purpose:
To verify that an ACS can set a valid Wireless LAN configuration on the CPE using WPA-WPA2-
Personal encryption.
5.6.5.2 References:
InternetGatewayDevice:1.4
5.6.5.3 Profiles:
N/A WiFiLan:1
5.6.5.5 Parameters:
January 2022 © The Broadband Forum. All rights reserved. 116 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
Enable true
RadioEnabled true
SSID <string>
Channel <unsignedint>
BeaconType WPAand11i
BeaconAdvertisementEnabled true
IEEEEncryptionModes AESEncryption
IEEEAuthenticationMode PSKAuthentication
PreSharedKey Hexadecimal
string
5.6.5.7 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 117 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
4. The End Device has appropriate network access through the wifi connection.
5.6.6.1 Purpose:
To verify that an ACS can set a valid wireless LAN configuration on the CPE using WEP 64
encryption.
5.6.6.2 References:
Device:2 [10]
5.6.6.3 Profiles:
5.6.6.5 Parameters:
The following parameters are required to be implemented for this test. A CPE MUST support
WEP-64 encryption in order to run this test.
Enable true
Channel <unsignedInt>
OperatingStandards <appropriate
setting>
January 2022 © The Broadband Forum. All rights reserved. 118 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WEP-64
5.6.6.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
1. Record the instance number received in the AddObjectResponse.
2. If no AccessPoint objects exist, perform an AddObject RPC on the
Device.Wifi.AccessPoint. partial path
3. Record the instance number received in the AddObjectResponse
4. Configure the Wifi settings on the CPE using a single SetParameterValues.
5. Reboot the CPE.
6. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
January 2022 © The Broadband Forum. All rights reserved. 119 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
7. The End Device connects to the CPE’s newly created wifi access point.
8. Stimulate network traffic across the Wifi connection
9. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
5.6.7.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WEP 128 encryption.
5.6.7.2 References:
Device:2 [10]
5.6.7.3 Profiles:
5.6.7.5 Parameters :
January 2022 © The Broadband Forum. All rights reserved. 120 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
The following parameters are required to be implemented for this test. A CPE MUST support
WEP-128 encryption in order to run this test.
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WEP-128
5.6.7.7 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 121 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
1. Record the instance number received in the AddObjectResponse.
2. If no AccessPoint objects exist, perform an AddObject RPC on the
Device.Wifi.AccessPoint. partial path
3. Record the instance number received in the AddObjectResponse
4. Configure the Wifi settings on the CPE using a single SetParameterValues.
5. Reboot the CPE.
6. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
7. The End Device connects to the CPE’s newly created wifi access point.
8. Stimulate network traffic across the Wifi connection
9. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
5.6.8.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA Personal
Encryption.
5.6.8.2 References:
Device:2 [10]
5.6.8.3 Profiles:
January 2022 © The Broadband Forum. All rights reserved. 122 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.8.5 Parameters:
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WPA-Personal
January 2022 © The Broadband Forum. All rights reserved. 123 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.8.7 Procedure:
Perform a GetParameterValues on the root partial path listed in the parameters section to learn
the existing stack hierarchy. If no SSID objects exist, perform an AddObject RPC on the
Device.Wifi.SSID. partial path. #. Record the instance number received in the
AddObjectResponse. #. If no AccessPoint objects exist, perform an AddObject RPC on the
Device.Wifi.AccessPoint. partial path #. Record the instance number received in the
AddObjectResponse #. Configure the Wifi settings on the CPE using a single
SetParameterValues. #. Reboot the CPE. #. Perform a GetParameterValues on the Stats object
listed in the Parameters section and note the values. #. The End Device connects to the CPE’s
newly created wifi access point. #. Stimulate network traffic across the Wifi connection #.
Perform a GetParameterValues on the Stats object listed in the Parameters section and note the
values.
5.6.9.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA Enterprise
Encryption.
January 2022 © The Broadband Forum. All rights reserved. 124 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.9.2 References:
Device:2 [10]
5.6.9.3 Profiles:
5.6.9.5 Parameters:
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
January 2022 © The Broadband Forum. All rights reserved. 125 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
ModeEnabled WPA-Enterprise
RadiusSecret <string>
5.6.9.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
1. Record the instance number received in the AddObjectResponse.
2. If no AccessPoint objects exist, perform an AddObject RPC on the
Device.Wifi.AccessPoint. partial path
3. Record the instance number received in the AddObjectResponse
4. Configure the Wifi settings on the CPE using a single SetParameterValues.
5. Reboot the CPE.
6. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
7. The End Device connects to the CPE’s newly created wifi access point, authenticated
from the RADIUS Server.
8. Stimulate network traffic across the Wifi connection
9. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
January 2022 © The Broadband Forum. All rights reserved. 126 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.10.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA2-Personal
encryption.
5.6.10.2 References:
Device:2 [10]
5.6.10.3 Profiles:
5.6.10.5 Parameters:
January 2022 © The Broadband Forum. All rights reserved. 127 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WPA2-Personal
5.6.10.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
January 2022 © The Broadband Forum. All rights reserved. 128 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
1. Record the instance number received in the AddObjectResponse.
2. If no AccessPoint objects exist, perform an AddObject RPC on the
Device.Wifi.AccessPoint. partial path
3. Record the instance number received in the AddObjectResponse
4. Configure the Wifi settings on the CPE using a single SetParameterValues.
5. Reboot the CPE.
6. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
7. The End Device connects to the CPE’s newly created wifi access point.
8. Stimulate network traffic across the Wifi connection
9. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
5.6.11.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA2-Enterprise
Encryption.
5.6.11.2 References:
Device:2 [10]
5.6.11.3 Profiles:
January 2022 © The Broadband Forum. All rights reserved. 129 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.11.5 Parameters:
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WPA2-Enterprise
RadiusSecret <string>
January 2022 © The Broadband Forum. All rights reserved. 130 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.11.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
1. Record the instance number received in the AddObjectResponse.
2. If no AccessPoint objects exist, perform an AddObject RPC on the
Device.Wifi.AccessPoint. partial path
3. Record the instance number received in the AddObjectResponse
4. Configure the Wifi settings on the CPE using a single SetParameterValues.
5. Reboot the CPE.
6. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
7. The End Device connects to the CPE’s newly created wifi access point, authenticated
from the RADIUS Server.
8. Stimulate network traffic across the Wifi connection
9. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
January 2022 © The Broadband Forum. All rights reserved. 131 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.12.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA-WPA2-Personal
encryption.
5.6.12.2 References:
Device:2 [10]
5.6.12.3 Profiles:
5.6.12.5 Parameters:
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
January 2022 © The Broadband Forum. All rights reserved. 132 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WPA-WPA2-Personal
5.6.12.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
1. Record the instance number received in the AddObjectResponse.
2. If no AccessPoint objects exist, perform an AddObject RPC on the
Device.Wifi.AccessPoint. partial path
3. Record the instance number received in the AddObjectResponse
4. Configure the Wifi settings on the CPE using a single SetParameterValues.
5. Reboot the CPE.
6. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
7. The End Device connects to the CPE’s newly created wifi access point.
January 2022 © The Broadband Forum. All rights reserved. 133 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.13.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA-WPA2-
Enterprise Encryption.
5.6.13.2 References:
Device:2 [10]
5.6.13.3 Profiles:
5.6.13.5 Parameters:
January 2022 © The Broadband Forum. All rights reserved. 134 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WPA-WPA2-Enterprise
RadiusSecret <string>
January 2022 © The Broadband Forum. All rights reserved. 135 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.13.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
1. Record the instance number received in the AddObjectResponse.
2. If no AccessPoint objects exist, perform an AddObject RPC on the
Device.Wifi.AccessPoint. partial path
3. Record the instance number received in the AddObjectResponse
4. Configure the Wifi settings on the CPE using a single SetParameterValues.
5. Reboot the CPE.
6. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
7. The End Device connects to the CPE’s newly created wifi access point.
8. Stimulate network traffic across the Wifi connection
9. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
5.6.14.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA3- Personal
encryption.
5.6.14.2 References:
Device:2 [10]
January 2022 © The Broadband Forum. All rights reserved. 136 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.14.3 Profiles:
5.6.14.5 Parameters:
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WPA3-Personal
January 2022 © The Broadband Forum. All rights reserved. 137 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.14.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
5.6.15.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA3- Personal-
Transition encryption.
5.6.15.2 References:
Device:2 [10]
5.6.15.3 Profiles:
5.6.15.5 Parameters:
Enable true
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
January 2022 © The Broadband Forum. All rights reserved. 139 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WPA3-Personal-Transition
5.6.15.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
January 2022 © The Broadband Forum. All rights reserved. 140 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
the values
5.6.16.1 Purpose:
To verify that an ACS can set a valid Wi-Fi configuration on the CPE using WPA3- Enterprise
encryption.
5.6.16.2 References:
Device:2 [10]
5.6.16.3 Profiles:
5.6.16.5 Parameters:
Enable true
January 2022 © The Broadband Forum. All rights reserved. 141 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
Channel <unsignedInt>
OperatingFrequencyBand 2.4GHz or
5GHz
OperatingStandards Auto
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDAdvertisementEnabled true
SSIDReference Device.WiFi.SSID.{i}.
ModeEnabled WPA3-Enterprise
RadiusSecret <string>
5.6.16.7 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 142 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy.
2. If no SSID objects exist, perform an AddObject RPC on the Device.Wifi.SSID. partial path.
5.6.17.1 Purpose:
To verify that an ACS can add an SSID object successfully to a preexisting Wifi configuration and
that the new SSID is able to be successfully used to gain appropriate network access.
5.6.17.2 References:
January 2022 © The Broadband Forum. All rights reserved. 143 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
Device:2 [10]
5.6.17.3 Profiles:
None
5.6.17.5 Parameters:
Enable true
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDReference Device.WiFi.SSID.{i}.
5.6.17.7 Procedure:
1. Perform a GetParameterValues on the root partial path listed in the parameters section to
January 2022 © The Broadband Forum. All rights reserved. 144 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
learn the existing stack hierarchy. Take special note of the existing SSID object’s
LowerLayers parameter (Device.Wifi.SSID.{j}.LowerLayers)
2. Perform an AddObject RPC on “Device.Wifi.SSID.” and record the instance number and
status returned.
3. If the status of the Add Object RPC returned a 1, reboot the device.
4. Perform a Get Parameter Values RPC on the path from Procedure step 2 and confirm the
object was added successfully.
5. Peform an AddObject RPC on “Device.WiFi.AccessPoint.” and record the instance number
and status returned.
6. If the status of the Add Object RPC returned a 1, reboot the device.
7. Perform a Get Parameter Values RPC on the path from Procedure step 5 and confirm the
object was added successfully.
8. Configure the Wifi settings on the CPE to utilize the new SSID object using the
SetParameterValues RPC:
1. Device.Wifi.SSID.{i}.LowerLayers = <Value returned in Procedure step 1>
2. Device.Wifi.SSID.{i}.Enable = true
3. Device.Wifi.SSID.{i}.SSID = <Value different from Device.Wifi.SSID.{j}.SSID>
4. Device.Wifi.AccessPoint.{k}.SSIDReference = Device.Wifi.SSID.{i}
5. The End Device connects to the CPE’s newly created Wi-Fi SSID using the same
authentication method and credentials that the preexisting configuration uses.
6. Reboot the CPE
7. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
8. The End Device connects to the CPE’s newly created wifi SSID using the same
authentication method and credentials that the preexisting configuration uses.
9. Stimulate network traffic across the Wifi connection.
10. Perform a GetParameterValues on the Stats object listed in the Parameters section and
note the values.
January 2022 © The Broadband Forum. All rights reserved. 145 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.18.1 Purpose:
To verify that an ACS can remove an SSID object successfully from a preexisting Wifi
configuration and that the new SSID is able to be successfully used to gain appropriate network
access.
5.6.18.2 References:
Device:2 [10]
5.6.18.3 Profiles:
None
5.6.18.5 Parameters:
Enable true
SSID <string>
LowerLayers Device.WiFi.Radio.{i}.
SSIDReference Device.WiFi.SSID.{i}.
January 2022 © The Broadband Forum. All rights reserved. 146 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.6.18.7 Procedure:
1. Verify that the existing Wifi configuration is operating correctly by connecting the End Device
to it. Note the SSID that was connected to.
2. Perform a GetParameterValues on the root partial path listed in the parameters section to
learn the existing stack hierarchy. Note the instance number of the SSID object with the
SSID field matching the one connected to in Procedure Step 1 as well as the instance
number of the AccessPoint with the SSIDReference field mapped to the appropriate SSID.
3. Peform a DeleteObject RPC on the Device.Wifi.SSID.{instance noted in Procedure Step 2}
and Device.Wifi.AccessPoint.{instance noted in Procedure Step 2}, noting the returned
value.
4. If the status returned is 1, reboot the CPE.
5. Perform a GetParameterValues on Device.Wifi.SSID. And Device.Wifi.AccessPoint. to
confirm deletion.
6. Attempt to re-connect the End Device to the removed SSID.
7. If status returned in the DeleteObject was 0, reboot the CPE and then perform a
GetParameterValues on Device.Wifi.SSID. And Device.Wifi.AccessPoint. to confirm deletion
persisted across reboot.
5.7.1.1 Purpose:
5.7.1.2 References:
Device:2 [10]
REC-xml Section 4.4 [3]
5.7.1.3 Profiles:
Baseline:1 N/A
None
5.7.1.5 Parameters:
ProvisioningCode <string>
5.7.1.7 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 148 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.7.2.1 Purpose:
To verify that an ACS can configure strings in the CPE that are 64 characters but more than 64
bytes.
5.7.2.2 References:
Device:2 [10]
REC-xml Section 4.3.3 [3]
5.7.2.3 Profiles:
Baseline:1 N/A
January 2022 © The Broadband Forum. All rights reserved. 149 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
None
5.7.2.5 Parameters:
ProvisioningCode <string>
5.7.2.7 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 150 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.7.3.1 Purpose:
5.7.3.2 References:
Device:2 [10]
REC-xml Section 4.4 [3]
5.7.3.3 Profiles:
Baseline:1 N/A
None
5.7.3.5 Parameters:
ProvisioningCode <string>
ParameterKey <string>
January 2022 © The Broadband Forum. All rights reserved. 151 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.7.3.7 Procedure:
5.7.4.1 Purpose:
To verify that an ACS can configure strings in the CPE that are 32 characters but more than 32
bytes.
5.7.4.2 References:
Device:2 [10]
REC-xml Section 4.3.3 [3]
January 2022 © The Broadband Forum. All rights reserved. 152 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.7.4.3 Profiles:
Baseline:1 N/A
None
5.7.4.5 Parameters:
ProvisioningCode <string>
ParameterKey <string>
5.7.4.7 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 153 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.7.5.1 Purpose:
5.7.5.2 References:
Device:2 [10]
REC-xml Section 4.4 [3]
5.7.5.3 Profiles:
Device:2 InternetGatewayDevice:1
None
5.7.5.5 Parameters:
None.
January 2022 © The Broadband Forum. All rights reserved. 154 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.7.5.7 Procedure:
5.7.6.1 Purpose:
To verify that an ACS can configure strings in the CPE that are 32 characters but more than 32
bytes.
5.7.6.2 References:
Device:2 [10]
REC-xml Section 4.3.3 [3]
January 2022 © The Broadband Forum. All rights reserved. 155 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.7.6.3 Profiles:
Baseline:1 N/A
None
5.7.6.5 Parameters:
None.
5.7.6.7 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 156 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.8.0.1 Purpose:
This test is designed to verify that the CPE responds to invalid restoration of a configuration with
a correct fault code.
5.8.0.2 References:
5.8.0.3 Parameters:
January 2022 © The Broadband Forum. All rights reserved. 157 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
Download parameters:
DelaySeconds: 0
5.8.0.5 Procedure:
1. ACS schedules a download RPC on the CPE with the parameters above
2. Allow CPE to respond DownloadResponse or TransferComplete
January 2022 © The Broadband Forum. All rights reserved. 158 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
1. Verify that the CPE responds to the Download RPC with a DownloadResponse or
TransferComplete with one of the following fault codes: 9003 (Invalid argument),
January 2022 © The Broadband Forum. All rights reserved. 159 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.9.0.1 Purpose:
To verify that an ACS can configure the basic DHCPv4 configuration required on a CPE device.
5.9.0.2 References:
TR-181i2a7
5.9.0.3 Parameters:
January 2022 © The Broadband Forum. All rights reserved. 160 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
table.
5. Have an end system that can attempt to connect to the CPE via DHCP.
5.9.0.5 Procedure:
1. If the DUT implements the Device:2 root data model, perform an AddObject RPC on
Device.Server.Pool., recording the InstanceNumber value returned in the
AddObjectResponse
2. On the ACS schedule a SetParameterValues RPC on the appropriate Configurable
parameters in the Parameters Section
3. Allow the end system to connect to the CPE via DHCP.
4. Perform a reboot of the CPE
5. Allow the end system to attempt connect to the CPE via DHCP
January 2022 © The Broadband Forum. All rights reserved. 161 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.10.0.1 Purpose:
To verify that an ACS can perform an IP Ping Diagnostics test on the CPE where the CPE returns
a Error_NoRouteToHost.
5.10.0.2 References:
5.10.0.3 Parameters:
The following WAN Interface parameters are to determine the WAN interface of the CPE,
InternetGatewayDevice.Layer3Forwarding.Default and Device.IP.Interface:
January 2022 © The Broadband Forum. All rights reserved. 162 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
The following Diagnostics parameters are to determine the state of the IP ping test of the CPE,
InternetGatewayDevice.IPPingDiagnostics and Device.IP.Diagnostics.IPPing:
5.10.0.5 Procedure:
1. Validate that an Inform RPC is sent from the ACS with Event Code “8 DIAGNOSTICS
COMPLETE”
2. Validate that the DiagnosticsState is set to Error_NoRouteToHost.
January 2022 © The Broadband Forum. All rights reserved. 163 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.11.0.1 Purpose:
This test is designed to validate that the CPE supports TraceRoute diagnostics test and reports
results appropriately to the ACS.
5.11.0.2 References:
5.11.0.3 Parameters:
Number of NumberOfTries
Tries
January 2022 © The Broadband Forum. All rights reserved. 164 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
ACS in Setup #1
3. Wireshark running between ACS and CPE.
4. Ensure there are at least 2 hops between the CPE and Host
5.11.0.5 Procedure:
1. Establish a CWMP session between the CWMP Analyzer and DUT with successful Inform
exchanges.
2. Schedule a GetParameterValues RPC on the current WAN interface.
3. Schedule a SetParameterValues RPC on the DUT on the trace route diagnostic parameters
listed above.
4. Schedule a GetParameterValues RPC on the DUT on Diagnostic State.
1. The DUT can properly respond to the GetParameterValues request on WAN interface.
2. The DUT is able to properly respond to the SetParameterValues for diagnostics parameter.
3. Validate that the DiagnosticsState is set to “Error_MaxHopCountExceeded”
January 2022 © The Broadband Forum. All rights reserved. 165 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.12.0.1 Purpose:
To verify that an ACS can perform an IP Ping Diagnostics test on the CPE and receive a periodic
inform without an Diagnostic complete event before the diagnostic completes.
5.12.0.2 References:
5.12.0.3 Parameters:
The following WAN Interface parameters are to determine the WAN interface of the CPE,
InternetGatewayDevice.Layer3Forwarding.Default and Device.IP.Interface:
January 2022 © The Broadband Forum. All rights reserved. 166 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
The following Diagnostics parameters are to determine the state of the IP ping test of the CPE,
InternetGatewayDevice.IPPingDiagnostics and Device.IP.Diagnostics.IPPing:
The following parameters are to set to ensure the CPE performs a periodic inform prior to the
completion of Diagnostic, InternetGatewayDevice.ManagementServer and
Device.IP.Diagnostics.ManagementServer:
5.12.0.5 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 167 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
1. During diagnostic: Validate that the Inform RPC does not have a “8 DIAGNOSTICS
COMPLETE” Event Code
2. After diagnostic:-Validate that an Inform RPC is sent from the ACS with Event Code “8
DIAGNOSTICS COMPLETE”
January 2022 © The Broadband Forum. All rights reserved. 168 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.13.0.1 Purpose:
To verify the ACS can configure a firewall on the CPE that allows certain IPv6 traffic from the
WAN side.
5.13.0.2 References:
Device:2.2
5.13.0.3 Parameters:
Enable true
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
DefaultPolicy Drop
Enable true
Target Accept
January 2022 © The Broadband Forum. All rights reserved. 169 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
Protocol int[-1:255]
DestPort int[-1:65535]
5.13.0.5 Procedure:
1. Configure ACS to send an AddObject RPC for Device.Firewall.Level and record the returned
instance number.
3. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule using the path
returned in step 2 and record the returned instance number.
4. ACS performs a SetParameterValues RPC on the following parameters using the instance
numbers returned in steps 1-3.
Config Advanced
AdvancedLevel Device.Firewall.Level.{i}.
DefaultPolicy Drop
January 2022 © The Broadband Forum. All rights reserved. 170 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
Target Accept
DestIP <Unused IP
Address>
SourceIP <Unused IP
Address>
6. WAN Device attempts to open a TCP connection over IPv6, destination port 25, with End
Device 1.
7. WAN Device attempts to open a TCP connection over IPv6, destination port 25, with End
Device 2.
8. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule and record the
returned instance number.
9. ACS Configures the new Firewall Rule by sending a SetParameterValues RPC with the
following name/value pairs using the instance number returned in step 8.
Enable true
Target Accept
Protocol
DestPort 25
10. WAN Device attempts to open a TCP connection over IPv6, destination port 25, with End
Device 1.
January 2022 © The Broadband Forum. All rights reserved. 171 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
11. WAN Device attempts to open a TCP connection over IPv6, destination port 25, with End
Device 2.
12. Configure ACS to send an AddObject RPC for Device.Firewall.Chain.{i}.Rule and record the
returned instance number.
13. ACS Configures the new Firewall Rule by sending a SetParameterValues RPC with the
following name/value pairs using the instance number returned in step 12.
Enable true
Target Accept
Protocol
DestPort 25
14. WAN Device attempts to open a TCP connection over IPv6, destination port 25, with End
Device 1.
15. WAN Device attempts to open a TCP connection over IPv6, destination port 25, with End
Device 2.
1. In Step 6, CPE does not forward TCP traffic from WAN Device to End Device1.
2. In Step 7, CPE does not forward TCP traffic from WAN Device to End Device2.
3. In Step 10, CPE forwards TCP traffic from WAN Device to End Device1.
4. In Step 11, CPE does not forward TCP traffic from WAN Device to End Device2.
5. In Step 14, CPE forwards TCP traffic from WAN Device to End Device1.
6. In Step 15, CPE forwards TCP traffic from WAN Device to End Device2.
January 2022 © The Broadband Forum. All rights reserved. 172 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.14.0.1 Purpose:
To verify that an ACS and CPE can interoperate while performing the download diagnostics
function over HTTPS. This test will be run if supported on the CPE.
5.14.0.2 References:
InternetGatewayDevice.1.3
Device:2 [10]
5.14.0.3 Parameters:
DiagnosticsState Requested
DiagnosticsState Requested
January 2022 © The Broadband Forum. All rights reserved. 173 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
The DownloadTransports parameter MUST include HTTP for this test to be executed.
5.14.0.5 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 174 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
parameter.
1. If the value is “Completed” verify that the values in the DownloadDiagnostic object are
the same as they were before the reboot.
2. Verify that TotalBytesReceived is within 1% of the measured traffic.
January 2022 © The Broadband Forum. All rights reserved. 175 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
5.15.0.1 Purpose:
To verify that an ACS and CPE can inter-operate while performing the upload diagnostics
function over HTTP. This test will be run if supported on the CPE.
5.15.0.2 References:
InternetGatewayDevice.1.3
Device:2 [10]
5.15.0.3 Parameters:
DiagnosticsState Requested
DiagnosticsState Requested
January 2022 © The Broadband Forum. All rights reserved. 176 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
The UploadTransports parameter MUST include HTTP for this test to be executed.
5.15.0.5 Procedure:
January 2022 © The Broadband Forum. All rights reserved. 177 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
parameter.
1. If the value is “Completed” verify that the values in the UploadDiagnostic object are the
same as they were before the reboot.
2. Verify that TotalBytesSent is within 1% of the measured traffic.
January 2022 © The Broadband Forum. All rights reserved. 178 of 179
CWMP Interoperability and Functionality Test Plan TP-181 Issue 1 Amendment 2
6 Open Issues
Item x
January 2022 © The Broadband Forum. All rights reserved. 179 of 179