Articles

What is IR-181 and how does it apply to TR-069 testing?

4 min read

Critical to testing TR-069 implementations is the ability to demonstrate that the underlying code that configures settings on the device interacts correctly with the commands sent via CWMP. We discussed this in another training article on setting up Wi-Fi using TR-069, but there are many more valuable tests of this kind to consider.

Consequently, TR-069 testing should include some manner of “real-world” testing that can be used to demonstrate the interoperability of the deployment of an ACS and TR-069 enabled CPE. To address this area, the Broadband Forum is developing a test plan known as “IR-181”, the “CWMP Interoperability and Functionality Test Plan”. CDRouter has support for many of these tests in its ir181.tcl test module, part of its TR-069 add-on, both because they are valuable tests and to help CDRouter users test their devices before seeking interoperability testing at an approved Broadband Forum test lab.

Note: IR stands for “Internal Report” in the Broadband Forum, which means the published plan with the full test cases and procedures is only be available to Broadband Forum members. It is available to the public as “Abstract Test Plan (ATP) 181”.

Why is it called IR-181?

The “181” refers to TR-181 Issue 2, which defines the Device:2 Data Model for TR-069 devices and USP agents. The Device:2 data model replaces the now deprecated InternetGatewayDevice:1 data model, thought InternetGatewayDevice:1 is still used by some deployments of TR-069. The IR-181 tests have options for devices that use either of these data models.

You can find a more in-depth look at how TR-069 data models work here.

What does IR-181 test?

Functional testing, in reference to TR-069 implementations, means testing the device’s ability to receive TR-069 commands and accurately execute them, making real changes in its configuration. The IR-181 tests include the exercise of several functions associated with broadband gateways, such as firewall, port mapping, and Wi-Fi functionality, as well as tests common to any CWMP endpoint, like diagnostics, basic RPC functions (like firmware downloads), and data validation of CWMP string parameters.

Basic setup tests

These IR-181 tests comprise basic TR-069 functions that most implementations support, and likely apply to any system that implements CWMP. This includes functions like factory reset, firmware downloads, configuration backup and restoration, and some basic TR-069 RPC tests to act as a “sanity check” for further tests.

Monitoring and diagnostics

IR-181 contains tests that verify that a device’s tables correctly report dynamic values, including the presence and removal of connected hosts.

It also includes tests that verify the basic functionality of TR-143 based active diagnostics tests, ensuring that the DUT does the tests and correctly sends notifications about the diagnostics when complete. This dovetails the line-rate performance tests that CDRouter implements based on TR-143 included in the TR-069 add-on.

Firewall and port mapping functionality

These IR-181 tests exercise whether a device sets up, configures, and tears down “Port Mappings” through the DUT’s NAT layer to enable applications the end-user wants to use. This is done by manipulating the various parameters in an instance of the .PortMapping.{i}. object, which is common to both IGD:1 and Device:2, though found in different places in the data model (similar to CDRouter’s tr69_50 through tr69_64 test cases).

IR-181 also verifies that a DUT’s firewall will block and accept certain traffic after its policy has been changed via TR-069.

Wi-Fi provisioning

The IR-181 test plan exercises Wi-Fi configuration on devices that support it in a variety of ways. You can read about how TR-069 Wi-Fi parameters on access points are used here.

String validation

IR-181 also includes a set of tests to make sure that the DUT both correctly assigns and validates the values given to its string typed parameters. This includes tests for handling non-ASCII and multi-byte characters.

What about certification?

The IR-181 test plan is made to supplement and enhance the robustness of devices that have passed the BBF.069 certification program (with the IR-069 test plan).

Devices that pass the certification will have a much easier time performing functional interoperability testing with an ACS as defined in IR-181.

How do I know what to test on my device?

Obviously, not all of the IR-181 test cases apply to all devices, though most broadband gateways will implement the features that are tested. To make it clear which tests apply to the DUT, IR-181 defines which TR-069 data model “Profiles” apply to each test case. Profiles are defined in the data model and describe the minimum set of objects and parameters required in order to support a given piece of functionality. For example, the Device:2 Data Model Profiles include baseline, Wi-Fi, and other high-level profiles that can be used as a guideline for what your own DUT should expect to support in order to perform these tests.