CDRouter Support

CDRouter 9.2 Release Notes

knowledge-base version 10.5

Release History

Release Type Release Number Release Date
Original CDRouter 9.2 Build 1 June 1, 2015
Maintenance release 1 CDRouter 9.2 Build 4 June 19, 2015
Maintenance release 2 CDRouter 9.2 Build 6 July 16, 2015
Maintenance release 3 CDRouter 9.2 Build 8 August 25, 2015

Note: CDRouter 9.2 includes many new features and configuration testvars. Old config files can be automatically upgraded to include all new CDRouter 9.2 testvars using the config upgrade utility.

CDRouter 9.2 Build 1 June 1, 2015

New Features and Enhancements


CDRouter

  • Support for multiple wireless clients on a single interface

    CDRouter now supports wireless virtualization on the LAN. This feature allows multiple wireless clients to be created on the LAN using a single wireless interface. With this feature CDRouter can now run all tests, including the scaling modules, over a single wireless interface on select systems.

    Note that not all wireless interfaces and Linux kernel versions support virtualization of wireless interfaces. As a result this feature is enabled exclusively on the NTA1000 version 4 platform. For more information on the NTA1000v4, please contact support@qacafe.com.

    Please see our wifi scalability testing guide for more information.

  • New testvar for specifying the maximum number of wireless clients supported by the DUT

    Some devices may have an upper limit on the number of wireless clients that can be simultaneously associated. This value can be configured using the new testvar lanWirelessMaxClients. CDRouter will not exceed this maximum value when creating clients on a wireless interface during testing.

  • New mode to support WAN-only testing

    It is now possible to run CDRouter tests using a single network interface. This is useful for testing devices that only have one interface, such as VoIP endpoints and set-top boxes. It can also simplify setups for testing other devices for TR-069, SNMP, or Nmap, when only the WAN interface is required.

    Setting the lanInterface testvar to “none” will enable this mode and cause CDRouter to skip all LAN interface initialization. CDRouter will automatically skip any test cases that send traffic on the LAN or require the DUT to forward traffic between LAN and WAN.

  • Updated NTA1000 platform

    Version 4 of the NTA1000 test platform for CDRouter is now available! This iteration incorporates a number of new features and enhancements, including an updated 3.10 Linux kernel and two integrated dual-band wireless interfaces. One wireless interface is based on an Intel chipset and supports up to 802.11 ac. The second wireless interface is based on a QCA chipset that supports up to 802.11 n and virtualization of wireless clients on the LAN.

    The NTA1000v4 enables a new class of testing by allowing users to simulate, test, and understand the behavior of their CPE when a large number of wireless clients are connected. Many devices have practical limits on the number of simultaneous wireless associations that can be maintained - with the NTA1000v4 and CDRouter 9.2 it is now possible to verify this limit and ensure that the DUT works as expected as the number of wireless clients is scaled up. For more information on the NTA1000 version 4 platform, please contact support@qacafe.com.

  • New testvar for specifying the behavior of assigning an IPv4 address to a LAN client

    The lanMode testvar allows the ability to configure CDRouter to either use DHCP (default) or a static IP, which may be used in the case that a DUT does not have a DHCP server implemented and/or enabled.

    If lanMode is set to static, CDRouter will assign itself an IPv4 address from the DHCP pool in the configuration. This will be a value between dhcpClientStart and dhcpClientEnd. Also when lanMode is set to static, CDRouter will use a DNS server based upon the value of lanStaticDns. If the value of this testvar is set to ‘yes’, the value assigned to wanDnsServer will be used. If lanStaticDns has the value ‘no’, the value assgined to lanIp will be used.

    Setting lanMode to the value ‘static’ replaces the use of the testvar useInternalDHCP in previous versions of CDRouter.

  • New DHCP client test case to verify proper handling of a DHCPNAK message

    The cdrouter_dhcp_4 test case has been created and added to the dhcp-c test module to verify that the DUT’s DHCP client on the WAN drops back into the INIT state and sends a DHCPDISCOVER when it receives a DHCPNAK message in response to a DHCPREQUEST. This behavior is referenced in Section 3.2 of RFC 2131.

  • Cleanup and audit of tests in the dhcp-s module

    Tests in this module have been audited and modified so that in many cases no additional LAN client is necessary. This allows tests to be run that would have previously been skipped if no additional LAN client was available. The only tests that still require an additional LAN client are cdrouter_dhcp_server_3, cdrouter_dhcp_server_200, cdrouter_dhcp_server_501, and cdrouter_dhcp_server_540.

  • New cdrouter_dos_2 test

    There is a new cdrouter_dos_2 test that tests the ‘ping of death’ on the WAN.

  • New version of TCL

    The version of TCL that comes bundled with CDRouter has been updated to 8.6.4.

  • It is now possible to test without a LAN interface

    In certain scenarios it may be helpful to disable CDRouter’s LAN interface. This can be accomplished by setting the testvar lanInterface to the keyword none. This is most often used when testing endpoints such as STBs, VoIP ATAs, or NAS devices that do not have a LAN interface. This can also be helpful for simplying the test setup when the primary focus is on WAN specific functionality such as TR-069 or NMap. Any test cases that require end-to-end connecitivity or LAN specific functionality will be automatically skipped when lanInterface is set to none.

CDRouter Multiport

  • Support for testing SIP on a separate WAN VLAN

    CDRouter now supports the testing of SIP in multi-service gateway environments on secondary WAN interfaces. The sipInterface testvar specifies the network interface CDRouter will use for SIP testing. CDRouter’s default, primary WAN interface is simply referred to as “wan”. Additional, secondary WAN interfaces are typically referred to as “wan2”, “wan3”, etc. To configure CDRouter to test SIP on the service channel attached to “wan2”, for example, the testvar multicastInterface must be set to a value of “wan2”:

    testvar sipInterface wan2
    

    CDRouter will ignore all SIP traffic that is received on any WAN interface or service channel other than “wan2”. Note that this feature applies to SIP over both IPv4 and IPv6.

    Note that the sipInterface is ignored when CDRouter Live is enabled.

  • New testvars for specifying SIP server IP addresses in multi-service gateway configurations

    By default, CDRouter will use the IPv4 and IPv6 remote hosts on the primary WAN interface for its SIP servers. If the testvar sipInterface is not set to “wan”, CDRouter will create a SIP server on the given WAN interface with an IPv4 address specified by the new testvar sipServerIp and an IPv6 address specified by the new testvar ipv6SipServerIp.

CDRouter IPv6

  • New slaac-wan.tcl test module

    A new slaac-wan.tcl test module has been added to test Autoconf / SLAAC client functionality for the WAN side of the router.

  • New ipv6_ndp_wan_16 test

    A new ipv6_ndp_wan_16 test has been added to the ndp_wan.tcl module to verify the DUT responds to DAD-style Neighbor Solicitations on the WAN for its global IPv6 address

CDRouter TR-069

  • New testvar for specifying the path to a CA certificate for validating a client cert

The testvar acsClientCaCertPath may be used to specify the path location (on CDRouter) to the CA certificate that signed the client certificate which is sent by a DUT when initiating an SSL connection for a CWMP session.

When acsClientCACertPath is assigned a value, the ACS simulated by CDRouter will send a certificate request during the SSL handshake and then validate the signature path of the client certificate sent back by the DUT.

New Test Modules and Test Cases


CDRouter

  • New DHCP client test case

    TEST: cdrouter_dhcp_4
    MODULE: dhcp-c.tcl
    DESCRIPTION: DHCP client drops back into DISCOVERY mode if server sends a DHCPNAK
    
  • New denial of service test case

    TEST: cdrouter_dos_2
    MODULE: dos.tcl
    DESCRIPTION: Send 'ping of death' ICMP request to WAN side of the router
    

CDRouter IPv6

  • New Autoconf / SLAAC test module for the WAN side of the router

    MODULE: slaac-wan.tcl
    DESCRIPTION: Autoconf / SLAAC client tests for the WAN side of the router
    NEW TESTS: 8
    
  • New ipv6_ndp_wan_16 test case

    TEST: ipv6_ndp_wan_16
    MODULE: ndp_wan.tcl
    DESCRIPTION: Verify DUT responds to DAD-style Neighbor Solicitations on the WAN for its global IPv6 address
    

Bug Fixes and Notes


CDRouter

  • Updated the dhcp-s test module to better handle test environments where the default router and the DHCP server are different hosts on the LAN. This fixes a bug involving the cleanup of the various DHCP clients that are created during this test module.

    When the DHCP server does not have the same address as the default router, CDRouter’s DHCP clients must ARP for the DHCP server before sending a DHCPRELEASE. In earlier releases CDRouter’s DHCP clients were not waiting for this ARP response. This ultimately caused the DHCPRELEASE messages from each client to be dropped, resulting in a number of stale DHCP leases on the DUT.

  • A bug was fixed in the cdrouter_dhcp_server_2 test where it was not verified that a DHCPNAK was sent by the DUT if it received a DHCPREQUEST with a non-offered IP address. It is now verified that a DHCPNAK is sent.

  • A bug was fixed in the cdrouter_dhcp_server_200 test where it was not verified that a DHCPNAK was sent by the DUT if it received a DHCPREQUEST with an IP address of another DHCP client. It is now verified that a DHCPNAK is sent.

  • The cdrouter_heartbleed_300 test no longer skipped due to dutSecureMgmtPort. Previously, if the testvar dutSecureMgmtPort was disabled, all tests in the heartbleed module would be skipped. However, it was not necessary to skip the cdrouter_heardbleed_300 test for this reason. This test is now run even if dutSecureMgmtPort is disabled.

  • A bug was fixed in the parsing algorithm of testvar values. CDRouter can now parse testvar values that contain the equal (‘=’) character. This is true for testvars specified within a confguration file or ones set at runtime using the BuddyWeb CLI -

        testvar pppoeServiceName    qa=cafe
    

    or

        $ buddyweb -package <packagename> -wait -- -testvar pppoeServiceName="qa=cafe"
    
  • A bug was fixed in BuddyWeb’s pcap(packet) viewer to properly display unicode for an arrow ‘->’ character.

  • DHCP packets transmitted by CDRouter had been using a null terminated DHCP Host Name option. This option should not have been null terminated according to RFC 2132. The null termination has been removed.

  • Updated the buddy::restart_dut API method to use the waitTime argument (if specified) as the amount of time to pause after executing the “reboot” script, before returning control to the caller.

CDRouter Multiport

  • Resolved an issue with IPv6 over PPPoE on a secondary WAN interface. Prior to this release, IPv6 over PPPoE was only supported on the primary WAN. This fix only impacts dual-stack multiport or multi service gateway configurations.

CDRouter Live

  • Added logic to skip some DNS test cases that are not compatible with CDRouter Live. These tests are currently written to assume the use of a DNS server, (IPv4 or IPv6) that is simulated by CDRouter, connected to the DUT’s WAN interface. When using CDRouter Live, this cannot be assumed. In fact, it is more likely that a ‘real’ DNS service is being used, therefore making these test cases incompatible in ‘Live’ mode.
    Tests skipped - dns_301, dns_tcp_301, ipv6_dns_301, and ipv6_dns_tcp_301

  • Fixed a bug in the cdrouter_scale_20 test case when running in DS-Lite mode on the WAN. Previously the ICMP echo replies sent by CDRouter’s tunnel endpoints on the WAN would be incorrectly sent to the destination address specified by the testvar wanNatIp. In DS-Lite mode NAT is not present, so the ICMP echo replies must be sent directly to the LAN client’s source address. An example of the fixed, correct behavior for these ICMP echo replies can be found here.

  • Added logic to skip the ftp-wan-52 and ftps-wan-52 tests when running in a live setup. Also, tests in the ftp-wan.tcl and ftps-wan.tcl modules were modified to better work in a live setup.

  • A bug was fixed that prevented the snmp_wan_100 test from running successfully in a live configuration.

CDRouter IPv6

  • Fixed a bug where all the tests in the 6to4 and 6rd modules were skipped when the WAN interface was configured to be static (.i.e wanMode set to the value ‘static’).

  • Resolved an issue in the dhcpv6_pd_63 test case. Originally in step 5 of this test CDRouter would send a Neighbor Advertisement to the node-local scope multicast address of ff01::1. This test now sends the Neighbor Advertisement to the link-local scope multicast address of ff02::1, as required in Section 7.2.4 of RFC 4861.

  • Fixed a bug involving CDRouter’s RIPng implementation where in certain environments CDRouter would not set the IPv6 hop count to 255 in outgoing RIPng packets. This behavior is incorrect according to RFC 2080 Section 2.4.2 which indicates that outgoing RIPng messages must always have the hop count set to 255, thus guaranteeing that the packet is from a neighbor.

  • Under certain conditions CDRouter could enter a state where it continuously retransmits a packet that is larger than the current IPv6 Link MTU.

CDRouter TR-069

  • Fixed a bug where several test cases within the tr106_profiles test module were incorrectly named “tr143_profile_xx”.

  • Resolved a problem where CDRouter would not properly configure the DUT’s XMPP settings, causing the entire test run to fail.

  • Resolved a problem in which XMPP services could remain running after the end of a test run. Additional checks have been put in place to ensure that the XMPP server is started and stopped successfully.

CDRouter 9.2 Build 4 June 19, 2015

New Features and Enhancements


CDRouter

  • New testvar for specifying the maximum number of DHCP clients for scaling module

    In some cases, a user may not want to use the entire address space defined on their DUT to run the scaling module test cases. To use a subset of all the DHCP addresses defined, the new testvar ipv4MaxLanClients may be used to define the max number of clients for the scaling tests. CDRouter will not exceed this maximum value when creating clients on the LAN.

  • New SIP ALG scaling tests

    The cdrouter_sip_200 and cdrouter_sip_tcp_200 test cases have been added to the sip-alg and sip-tcp-alg test modules, respectively. These tests are designed to verify that the DUT supports a scenario where multiple DHCP clients on the LAN initiate outbound calls simultaneously. For these tests each DHCP client initiates one outbound call; the number of clients created is controlled by the testvar sipMaxOutboundCalls.

    Two new testvars have also been added to control the operation of the UDP ports used in these test cases. sipScaleClientPort specifies the SIP source port used by each of the clients, and sipScaleServerPort can be used to specify the listening port of the SIP server.

New Test Modules and Test Cases


CDRouter

  • New SIP ALG scaling test

    TEST: cdrouter_sip_200
    MODULE: sip-alg.tcl
    DESCRIPTION: Verify outbound SIP calls with multiple DHCP LAN clients
    
  • New SIP over TCP ALG scaling test

    TEST: cdrouter_sip_tcp_200
    MODULE: sip-alg-tcp.tcl
    DESCRIPTION: Verify outbound SIP calls with multiple DHCP LAN clients
    

Bug Fixes and Notes


CDRouter

  • Fixed a bug where the start log would report a fatal error if the ACS port specified in the CDRouter config file was already in use on the system. It now reports this condition simply as an error, not a fatal error.

  • Resolved a fatal error when running the scaling test module with DHCP pool sizes greater than 250.

  • Resolved an issue that caused CDRouter’s SCRIPT_exec proc to log an error and leave the test running indefinitely until manually interrupted.

  • CDRouter’s LAN interface(s) now default to using an automatically generated MAC address based on the OUI specified by the testvar cdrouterOui. A specific MAC address can be configured on each LAN interface by enabling and configuring the lanMac testvar. Any additional LAN hosts that are created during test cases will also automatically generate a MAC address using the cdrouterOui value.

  • Added the testvar lanWirelessMaxClients to the default config file template under the Advanced Wireless Settings section.

  • Relaxed the PASS criteria on DHCP server test cases cdouter_dchp_server_2 and cdrouter_dhcp_server_200. If the DUT does not send a DHCPNAK, as expected, CDRouter will log a warning, but will not mark either test case as a FAIL.

  • Fixed a defect in DHCP test case cdrouter_dhcp_server_540, where CDRouter was not using a unique MAC address for its simulated host client.

CDRouter TR-069

  • Fixed a bug with the Download:1 and Upload:1 profiles in the tr181i2_profiles test module. The Downloadransports and UploadTransports parameters were not properly defined in the intial release of CDRouter 9.2.

  • Fixed a bug with the supportsCWMP testvar. In previous releases a fatal error would be generated if this testvar was set to no and the acsIp testvar was enabled. This issue has been resolved and the supportsCWMP now disables TR-069 support within CDRouter regardless of any other configuraiton settings that may be present.

  • If the DUT supports ACS discovery using DHCP option 124, CDRouter’s DHCP server will include options 43 and 125 in its response. This improves interoperability with some ACS discovery implementations.

  • Resolved a problem where CDRouter would not correctly validate the length of data model parameters defined as type hexBinary.

CDRouter Live

  • Fixed a bug where the final (cleanup) test case would fail when trying to close the secure tunnel connection with the ‘Live’ server.

CDRouter 9.2 Build 6 July 16, 2015

New Features and Enhancements


CDRouter

  • New DHCP client test case to verify proper handling of a DHCPNAK message

    The cdrouter_dhcp_5 test case has been created and added to the dhcp-c test module to verify that the DUT’s DHCP client on the WAN returns to the INIT state and sends a DHCPDISCOVER when it receives a DHCPNAK message in response to a DHCPREQUEST after receiving a DHCPOFFER. This behavior is referenced in Section 3.1, paragraph 5 and in the state-transition diagram of RFC 2131.

New Test Modules and Test Cases


CDRouter

  • New DHCP client test case

    TEST: cdrouter_dhcp_5
    MODULE: dhcp-c.tcl
    DESCRIPTION: DHCP client remains in DISCOVERY mode if server sends a DHCPNAK
    

Bug Fixes and Notes


CDRouter

  • Fixed a bug in DHCP server test case cdrouter_dhcp_server_200. If the DUT does not send a DHCPNAK, as expected, CDRouter will log a warning, but will still mark the test as PASSED. (The previous maintenance release marked the case as a FAIL, in this scenario).

  • The cdrouter_rtsp_70 test case has been updated to send pause and play messages. The pause duration is configurable using the testvar natRtspTimeout. While paused the rtsp client will send GET_PARAMETER messages to keep the connection open. The GET_PARAMETER interval is also configurable using the new testvar rtspGetParameterInterval.

  • CDRouter now provides more warning messages when packets with unexpected MAC or IP addresses are received.

  • Resolved an issue with the static_10 test case when testing static routes with a next-hop address that is different than the WAN default gateway.

  • A number of updates and tweaks have been made to the wireless virtualization feature added in the initial release of CDRouter 9.2. These updates improve the stability and robustness of multiple wireless stations when running various scaling tests.

CDRouter TR-069

  • Resolved an issue associated with the loading of client CA certs specified using the testvar acsClientCaCertPath when client cert validation is enabled.

CDRouter 9.2 Build 8 August 25, 2015

New Features and Enhancements


CDRouter TR-069

  • STUN username and password are now configurable

    When TR-111 Part 2 is enabled CDRouter will automatically configure a STUN username and password on the DUT. By default CDRouter will compose a unique STUN username and password based on the serial number and oui returned by the DUT in the initial Inform it sends to the ACS. With this release the STUN username and password can also be configured to user defined values using the new testvars STUNUsername and STUNPassword, respectively.

  • Updated CWMP profiles

    CDRouter’s CWMP profiles have been updated to support TR-143 Amendment 1 and the Device:2 version 2.9 data models. This update adds support for the following profiles:

    Test Module Profile
    tr098_profiles UDPEchoDiag
    tr098_profiles ServerSelectionDiag
    tr106_profiles UDPEchoDiag
    tr106_profiles ServerSelectionDiag
    tr143_profiles UDPEchoDiag
    tr143_profiles ServerSelectionDiag
    tr181i2_profiles UDPEchoDiag
    tr182i2_profiles ServerSelectionDiag
    tr181i2_profiles IEEE1905Device
    tr181i2_profiles IEEE1905TopologyMetric
    tr181i2_profiles IEEE1905TopologyNeighbor
    tr181i2_profiles IEEE1905TopologyHigherLayer
    tr181i2_profiles IEEE1905Power
    tr181i2_profiles IEEE1905InterfaceSelection
    tr181i2_profiles IEEE1905LinkMetric
    tr181i2_profiles IEEE1905NetworkTopology
    tr181i2_profiles WiFiAccessPoint:2

Bug Fixes and Notes


CDRouter

  • The dns_45 and dns_46 test case descriptions have been updated to clarify the test procedure. This update also applies to all variants of these two tests in the dns-tcp, dns-v6, and dns-tcp-v6 test modules.

  • Resolved an issue with the syntax validation logic for certain testvars in the default config file.

  • A bug was fixed related to certain configurations of CDRouter Multiport, where the primary LAN interface is wireless, the secondary LAN interface is ethernet, and the testvar useSameLanInterface is set to yes.

  • Resolved an issue where CDRouter was incorrectly filtering valid incoming traffic destined for a known service. For example, CDRouter would start filtering Get-Responses during an SNMP Walk exchange, causing the test to fail.

  • The Intel 7260HMW wireless adapter does not currently support automatic channel selection (ACS) when running in AP mode on the WAN. As a result, CDRouter will now generate a config check warning for any configuration that attempts to set the testvar wanApChannel to a value of auto on the Intel 7260HMW adapter.

  • Resolved a fatal error in the sip_31 and sip_tcp_31 test cases when parsing certain messages.

CDRouter IPv6

CDRouter TR-069

  • Added the tr69DeviceSn and tr69DeviceSn testvars to the Additional TR-069 Options section of the default configuration file.

  • The UDPConnectionRequestAddressNotificationLimit parameter is not supported in the Device:2 data model and is no longer configured during start when TR-111 Part 2 is enabled. This change was implemented to better support TR-111 Part 2 for Device:2 implementations.

  • The tr111_p2_50 test case is now automatically skipped if the DUT supports Device:2, since the UDPConnectionRequestAddressNotificationLimit parameter is not part of the Device:2 data model.

  • Updated CWMP Parameter Validation checks to handle dateTime values with fractional seconds (eg: 0001-01-01T00:00:00.000000Z) and parameters marked “hidden” (ie. write-only) in the BBF Data Model XML definitions.

  • Resolved an issue with CDRouter’s ACS and HTTP cookies. CDRouter 9.1 introduced a bug which resulted in CDRouter’s ACS omitting the HTTP set-cookie header during the intial inform exchange in start and also while running CWMP scenarios test cases. This issue has been resolved in this release. CDRouter’s ACS will now include HTTP cookies in all transactions.

  • The following tests from the tr69.tcl test module are not fully compatible with IPv6. These tests are now skipped if CDRouter’s ACS is configured with an IPv6 address:

    Test Name Description
    tr69_30 Verify CPE connection requests are accepted from IP address other than ACS
    tr69_31 Verify CPE follows 302 redirects to new ACS server
    tr69_32 Verify CPE follows 307 redirects to new ACS server
    tr69_33 Verify CPE follows multiple 302 redirects to ACS server
    tr69_34 Verify CPE follows multiple 307 redirects to ACS server
    tr69_50 Verify Add/delete dynamic TR-069 TCP port mapping for wildcard IP src address
    tr69_51 Verify Add/delete dynamic TR-069 TCP port mapping for specific IP src address
    tr69_52 Verify dynamic TR-069 TCP port mapping is disabled by default
    tr69_53 Verify dynamic TR-069 TCP port mapping stops working after disabled
    tr69_60 Verify Add/delete dynamic TR-069 UDP port mapping for wildcard IP src address
    tr69_61 Verify Add/delete dynamic TR-069 UDP port mapping for specific IP src address
    tr69_62 Verify dynamic TR-069 UDP port mapping is disabled by default
    tr69_63 Verify dynamic TR-069 UDP port mapping stops working after disabled
    tr69_120 Verify SetParameterValues fails when parameter values are invalid
    tr69_130 Verify firmware download returns SOAP Fault when HTTP 404 error occurs
    tr69_140 Verify vendor config file HTTP Upload with no ACS specified delay
    tr69_150 Verify vendor log file HTTP Upload with no ACS specified delay
    tr69_210 Verify router sends new Inform when primary WAN IP address changes
    tr69_220 Verify Connection Request URL after primary WAN IP address changes
    tr69_400 Verify IPv4 Trace Route on the WAN

Contents

×

About CDRouter

CDRouter is made by QA Cafe, a technology company based in Portsmouth, NH.

Get in touch via our Contact page or by following us on your favorite service: