qacafe - ip test solutions

Release Information: CDRouter v4.3

Released on: 2009-03-26

Release Notes

Original release: CDRouter 4.3 build 109, February 9, 2009

New Features and Enhancements


CDRouter

  • NAT TCP Window Scale Option

    A new NAT test has been added for TCP connections using the TCP Window Scaling Option. The test case validates that the TCP Window Scaling Option is not modified and that packets can pass in both directions in the full window size.

    Use of the TCP Window Scale Option with a non zero window is now enabled by default on Windows Vista. Some devices applying advanced firewall filters either modify the TCP Window Scale Option, drop packets which are correctly in the TCP window, or generate invalid checksums based on the use of the option.

  • Support multiple wireless modes for a single wireless SSID

    CDRouter wireless interfaces now support wireless access points that advertise multiple wireless modes such as WPA and WPA2 on a single SSID. Previously, CDRouter would check the wireless scan results and only match the desired wireless configuration against the first advertised RSN or WPA information element. With release 4.3, CDRouter will look at all advertised RSN or WPA information elements to find a configuration match. CDRouter will attempt to associate with the wireless access point if a configuration match is found.

  • General purpose HTTP server

    A general purpose HTTP server can now be enabled directly from the CDRouter configuration file. The HTTP server can be used when additional URLs must be checked before the device under test reaches operational state. One example is checking the CRL (certificate revocation list) for a SSL certificate. The HTTP server can be enabled on the WAN side of the network by specifying an IPv4 address for the server, an optional port number, and a location on the local system to act as the root of the HTTP server.

    HTTP Server Configuration Example:

    testvar httpServerIp    3.3.9.9
    testvar httpServerPort  80
    testvar httpServerRoot  /home/tools/www
    

    In some cases it may also be useful to map a DNS name to the HTTP server IP address. This can be done by adding a new DNS host entry as explained in http://www.qacafe.com/kb/articles/show/72.

  • Retry a test failure automatically

    Buddy has a new -retry X option to retry a test case up to X times if it fails. This option can be used to automatically repeat test cases in situations where a test failure might be acceptable because of packet loss or other conditions. This feature is also available in the "Run-Time" options menu when building a test package with BuddyWeb. A more detailed overview of the retry option is available at the following Application Note - http://www.qacafe.com/notes/show/11

  • Improved wireless driver support for automatic wireless reconnect

    Support for all recommended wireless adapters and drivers has been improved to automatically reconnect if the interface becomes disassociated. This feature is automatically enabled for all wireless based interfaces. Some existing drivers will automatically reconnect. But some drivers such as madwifi do not. Now, CDRouter will force the driver to reconnect automatically. You can disable this feature if your driver reconnects automatically. However, this is typically not required.

  • testvar wirelessForceReconnect no
    

  • New Template Keywords

    The following new keywords have been added to the reporting templates.

    %TESTCASE_LOGDIR% This keyword expands to the name of the current log directory when the -logdir option is used. If -logdir is not in use, the value will be empty.

    %TESTCASE_LOGFILE% This keyword expands to the name of the current log file for a test case when either the -logfile or -logdir options are used.

    %TESTCASE_ATTEMPTS% This keyword expands to the total number of execution attempts used to produce the current result. This value will always be 1 unless the -retry option is used.

    More information on report templates can be found in chapter 9 of the CDRouter user guide.

  • Reduced number of EAP identify configurations

    The maximum number of EAP identity configurations supported by CDRouter has been reduced from 8196 to 512 for maintenance purposes. This change should have no impact on test setups involving less than 512 EAP identity configurations.

CDRouter-Multiport

  • Support for static NAT
  • CDRouter-Multiport 4.3 introduces the ability to configure and test additional static NAT interfaces. A static NAT interface consists of a public WAN IPv4 address that maps to a specific LAN side private IPv4 address. CDRouter-Multiport supports this configuration by creating an additional LAN interface that is configured with a staticNatIp testvar.

    The following is a basic example.

    testvar_group lan2 {
    
       testvar lanInterface                    eth1
       testvar lanType                         ethernet
       testvar hostIp                          192.168.1.100
       testvar staticNatIp                     68.1.2.18
       testvar lanMac                          00:01:22:33:44:55
    
    }
    

    Static NAT interfaces may have their own virtual servers, port triggers, NAT filtering and firewall rules. For a full discussion on static NAT interfaces, please see the Application Note http://www.qacafe.com/notes/show/10.

CDRouter TR-069

  • New test cases for PD-128 Version 9

    New PD-128 test cases have been added based on PD-128 version 9. The following test cases have been added:

      PD-128 Test 2 Part 4: Rejection of Invalid Certificate
      PD-128 Test 8 Part 5: Download Failure
      PD-128 Test 8 Part 6: Vendor Config File Download
      PD-128 Test 8 Part 7: Download Across Reboot
    

  • CWMP Profile updates for TR-098 Amendment 2 and TR-106 Amendment 2

    New CWMP profiles from TR-098 Amendment 2 and TR-106 Amendment 2 have been added to CDRouter. The new CWMP profiles introduce several new profile versions. CDRouter will attempt to use the same profile version advertised in the device's DeviceSummary string when verifying CWMP profiles. By default, CDRouter uses strict profile matching where a profile will be skipped unless CDRouter knows about the same version of the profile. Best case matching can be enabled by configuring the testvar tr69ProfileMatch to "best". When best matching is enabled, CDRouter will use the most recent profile version it knows about even if a device is advertising a newer version.

    testvar tr69ProfileMatch best
    

  • WT-107 profiles have moved to TR-098

    CDRouter TR-069 no longer includes the wt107_profile.tcl module. All profiles defined in WT-107 are covered under TR-098 Amendment 2. In some cases, profiles defined in WT-107 were dropped from the final version of TR-098 Amendment 2. CDRouter still defines the older profiles, but actual test cases for these profiles have been dropped.


New Test Modules and Test Cases


CDRouter

  • New test cases in nat.tcl module
    TEST 87: Verify TCP connections using TCP window scale option through NAT
    MODULE: nat.tcl 
    NAME: cdrouter_nat_530 
    

CDRouter-Multiport

  • New test cases in nat-static.tcl module
  • TEST 426: Verify ARP Request on WAN interface for each static NAT hosts on same WAN network
    MODULE: nat-static.tcl 
    NAME: nat_static_1 
    
    TEST 427: Outbound TCP connections through static NAT do not modify TCP src port
    MODULE: nat-static.tcl 
    NAME: nat_static_2 
    
    TEST 428: Outbound UDP connections through static NAT do not modify UDP src port
    MODULE: nat-static.tcl 
    NAME: nat_static_3 
    

CDRouter TR-069

  • New test cases in pd128.tcl module
    TEST 436: PD-128 Test 2 part 4: Rejection of Invalid Certificate
    MODULE: pd128.tcl 
    NAME: pd128_test_2.4 
    
    TEST 448: PD-128 Test 8 Part 5: Download Failure
    MODULE: pd128.tcl 
    NAME: pd128_test_8.5 
    
    TEST 449: PD-128 Test 8 Part 6: Vendor Config File Download
    MODULE: pd128.tcl 
    NAME: pd128_test_8.6 
    
    TEST 450: PD-128 Test 8 Part 7: Download Across Reboot
    MODULE: pd128.tcl 
    NAME: pd128_test_8.7 
    

  • Several new CWMP profile tests have been added to the tr098_profiles.tcl module and tr106_profiles.tcl module.

Bug Fixes and Notes


  • The MSS Clamping test cases from the nat.tcl module have been moved from port 80 to non HTTP port 8096. This was done to avoid issues with HTTP proxies that are terminating HTTP connections in order to apply filtering. When TCP connections are actually terminated by the device under test, the device may use its own TCP MSS option instead of passing the TCP option through NAT for MSS Clamping. Moving the TCP session to a different TCP port avoids this issue. The actual TCP port number used by the test can be configured using:

    testvar mssClampingTestPort 8096
    

    This change effects test cases cdrouter_nat_400, cdrouter_nat_401, and cdrouter_nat_410.

  • cdrouter_renumber_6 has been updated to address a problem verifying that a new DHCP gateway is actually being used. The test previously checked connectivity to the gateway but did not verify that new traffic was routed through the gateway.

  • static_10 from the static.tcl module has been updated to create a unique MAC address for next-hop gateways when testing static routes with next-hop gateways on the WAN interface. The test previously used proxy ARP to support next-hop gateways for each configured static route. As a result, the test was not able to distinguish between the use of a static route and the use of the default route.

  • xbox_5 from the xbox.tcl module has been updated to correctly detect full-cone NAT. The previous version of the test case was not correctly detecting full-cone NAT.

  • cdrouter_nat_520 from the nat.tcl module now differentiates between address-restricted and full-cone NAT. The previous version of the test did not distinguish between address-restricted and full-cone.

  • When testing TR-069, if a device does not support the InternetGatewayDevice.DeviceSummary parameter, the parameter must be added to the CWMP parameter skip list in order to pass the verification of the Baseline:1 or Baseline:2 profiles. In previous releases, CDRouter would not fail the verification of the Baseline profile if the InternetGatewayDevice.DeviceSummary parameter was missing. This parameter can be added to the CWMP skip list as follows:

    testvar cwmpSkipParameters {
       InternetGatewayDevice.DeviceSummary
    }
    

  • The InternetGatewayDevice.WANDevice.{i}.WANDSLConnectionManagement. object has been obsoleted in TR-098 Amendment 2 although it is still included in the ADSLWAN profile. As a result, this object is now marked as optional in CDRouter's definition of the TR-098 ADSLWAN profile. This change affects only CDRouter TR-069 users running the tr098_profiles.tcl test module.

  • By default, CDRouter performs a check during tr69_200 and will automatically skip this test if the primary WAN interface is not DSL. This test case has been updated to allow the initial check to be skipped, forcing CDRouter to execute tr69_200 regardless of the WAN interface type. To skip the interface check configure the testvar tr69_200_skpInterfaceCheck:

    testvar tr69_200_skipInterfaceCheck yes
    

  • The TR-069 profile verification GetParameterNames walk tests have been updated to exit immediately following the identification of a failure at any point during the walk process. In previous releases, CDRouter would not queue any additional RPCs when a failure occurred. However, CDRouter would continue to execute all existing queued RPCs which produced somewhat confusing log messages. This change impacts only the TR-069 profile verification related test modules.

  • CDRouter now works with STUN clients that pad the STUN username attribute using a space character when performing authenticated STUN. This is specified in TR-069 Amendment 2 Annex G section G.2.1.1. Previously, CDRouter required clients to pad STUN usernames with nulls (0x00).

  • The STUN server has been updated to return the MESSAGE-INTEGRITY attribute when sending a Binding-Response that was previously authenticated using a received MESSAGE-INTEGRITY attribute. In the previous release of CDRouter, the MESSAGE-INTEGRITY attribute was missing in the Binding-Response.

Updated release: CDRouter 4.3 build 113, February 13, 2009

Bug Fixes and Notes


  • The test cases associated with the DHCPCondServing:1 and DHCPOption:1 profiles defined in Broadband Forum TR-098 Amendment 2 were omitted from the original release of CDRouter 4.3. The tr098_profiles.tcl test module in CDRouter 4.3 build 113 has been updated to include these test cases. Note that this update affects only CDRouter TR-069 users running the tr098_profiles.tcl test module.

  • The test case title for all Verify InternetGatewayDevice Baseline Profile using AddObject and DeleteObject on all creatable objects test cases in the tr098_profiles.tcl test module in the original release of CDRouter 4.3 were incorrectly listed as Verify InternetGatewayDevice Baseline Profile using SetParameterValues RPC. The tr098_profiles.tcl test module in CDRouter 4.3 build 113 has been updated with the correct test titles for these test cases. Note that this update affects only CDRouter TR-069 users running the tr098_profiles.tcl test module.

  • The BuddyWeb binary in CDRouter 4.3 build 113 has been updated to better handle and incorporate user-defined test paths. BuddyWeb will now update the test path automatically based on the value of BUDDY_TESTPATH environment variable. For more information, please see this Knowledge Base article - http://www.qacafe.com/kb/articles/show/179.

Updated release: CDRouter 4.3 build 114, February 13, 2009

Bug Fixes and Notes


  • Updated the pd128_test_8.7 test case in the pd128.tcl module to prevent a potential error while running this test case. This change affects only CDRouter TR-069 users.

Updated release: CDRouter 4.3 build 117, February 26, 2009

Bug Fixes and Notes


  • The TR-098 Amendment 2 DHCPCondServing:1 and DHCPOption:1 profile definitions were not correctly defined in previous builds of CDRouter 4.3. These profiles have been updated and are now consistent with TR-098 Amendment 2. These updates affect only CDRouter TR-069 users.

  • The DHCPCondServing:1 and DHCPOption:1 profiles were not being dynamically skipped by CDRouter based on the value of the DUT's reported DeviceSummary parameter. This functionality has been updated - CDRouter will now automatically skip these profiles if the DUT does indicate support for them via the DeviceSummary parameter. This update affects only CDRouter TR-069 users.

  • The cdrouter_renumber_6 test case in the renum-dhcp.tcl test module has been updated to resolve an issue with implementation of the dhcpGatewayCache testvar.

  • CDRouter now catches the "Resource temporarily unavailable" driver error message when sending Ethernet packets over wireless interfaces. In previous releases CDRouter would treat this as a fatal error and exit immediately. Although this condition is rare, CDRouter now issues a warning when this occurs and attempt to continue with the test case and test run. CDRouter will also automatically attempt wireless reassociation if necessary.

  • The cdrouter_firewall_12 test case in the firewall.tcl test module has been updated. This test case will now be skipped automatically if a UDP virtual service on port 53 is configured. In previous releases of CDRouter, this test case would be performed even if a DNS virtual service was configured. This scenario would typically pass, despite the presence of a UDP virtual service on the WAN, because the LAN hosts associated with any virtual services are not active during cdrouter_firewall_12. As a result, the DUT would not be able to forward packets received on WAN port 53 to the virtual server on the LAN, thus resulting in a false positive result for cdrouter_firewall_12.

  • This build fixes a problem with the wireless reconnection logic and WPA-PSK that could result in CDRouter sending EAPOL-Start packets every 30 seconds even though the wireless interface is connected and WPA keys have been established. Sending the additional EAPOL-Start packets has no impact on any of the test cases, but the behavior is not typical or expected.

  • The cdrouter_icmp_12 test case in the icmp.tcl test module has been updated to resolve an issue that could potentially lead to a fatal error.

Updated release: CDRouter 4.3 build 124, March 26, 2009

Bug Fixes and Notes


  • Functionality within the CDRouter TR-069 add-on module has been updated to address an issue that occurs when executing the tr135_profiles.tcl test module on LAN-side STB devices. In previous builds CDRouter incorrectly used InternetGatewayDevice. as the root device when running the tr135_profiles.tcl test module. This build resolves this issue by using Device. as the root device. Note that this update impacts only users testing TR-069 enabled STBs as LAN-side devices.

  • Certain RPC implementations in previous releases of CDRouter were hard-coded with numerical or string representations for boolean values regardless of the tr69ForceBoolean setting. These RPCs have been updated to properly encode boolean values based on the value of the testvar tr69ForceBoolean. By default CDRouter will use a string representation, either "true" or "false" for boolean values. To enable numerical representation, "1" or "0", set the tr69ForceBoolean testvar to "yes":

    testvar tr69ForceBoolean yes
    

  • The CDRouter TR-069 add-on module has been update to better handle and parse the Device.DeviceSummary parameter returned by TR-106 LAN-side devices including STBs and VoIP devices.

  • CDRouter now supports dynamic PPTP configurations which allow a device to be configured with a PPTP server host name as opposed to a fixed IP address. When running PPTP with DHCP enabled, CDRouter will provide the wanIspIp as a temporary DNS server in the intial DHCPOFFER. As a result, the DUT should be able to resolve the host name of the PPTP server. CDRouter assumes that the CPE will learn the real DNS servers during PPTP session establishment and use them from that point on.

Updated release: CDRouter 4.3 build 126, April 27, 2009

Bug Fixes and Notes


  • The ACS server certificate acs.qacafe.com.pem included with earlier releases of CDRouter 4.3 was set to expire in April of 2009. CDRouter 4.3 build 126 includes an updated ACS server certificate which does not expire until June of 2012.

Updated release: CDRouter 4.3 build 127, May 13, 2009

Bug Fixes and Notes


  • The BuddyWeb startup script has been modified to address a potential incompatibility with the Ubuntu 9.04 operating system. Earlier releases would occasionally fail to start automatically upon reboot on Ubuntu 9.04 system (BuddyWeb would have to be started manually in these cases using the command /etc/init.d/buddyweb restart).

  • CDRouter's PPPoE server behavior has been modified to send a PPP IPCP Configure-Reject whenever an unsupported option is requested by the PPPoE client. Previous releases of CDRouter would not send a Configure-Reject which may have been problematic for some PPPoE implementations.