
Released on: 2008-10-30
Welcome to CDRouter version 4.2 CDRouter 4.2 introduces several new features to the CDRouter test suite and related add-ons. New Xbox Live Test Module ------------------------- A new xbox.tcl module is available that contains tests similar to the Xbox Live console. An application note is available that describes the test cases included in the xbox.tcl module. http://www.qacafe.com/notes/show/8 The final result of the Xbox NAT test is based on the expected classification of NAT on the device under test. Xbox classifies the NAT behavior of the device as either open, moderate, or strict. By default, CDRouter will check that the device is classified as open, but you can configure the test to accept either moderate or strict by configuring the testvar xboxNatMinType. For example, testvar xboxNatMinType moderate Set the NTP Date ---------------- CDRouter 4.1 introduced the ntpOffset testvar to adjust the NTP time forward or backward based on the CDRouter host's local time. CDRouter 4.2 improves on this by adding a new testvar to set the date to a specific starting time. The new testvar ntpStartDate allows you to always start the NTP server at a specific time. This is very useful for dealing with any expired certificates or certificate testing. Example: Set the time to March 1st, 2007, 11:00 UTC time: testvar ntpStartDate "3/1/2007 11:00 AM UTC" Additional STUN Test Case ------------------------- The apps.tcl module includes an additional test case for an authenticated STUN session. TEST 155: Verify authenticated STUN session through the router MODULE: apps.tcl NAME: cdrouter_app_131 Additional DNS Proxy Test Case ------------------------------ The dns.tcl module includes an additional test case for verifying that DNS recovers after a DNS server outage. TEST 385: Verify DNS proxy recovers after DNS server outage MODULE: dns.tcl NAME: dns_100 New MSS Clamping Configuration ------------------------------ CDRouter now allows you to configure a different MSS clamping value for the incoming TCP direction in cases where it may be different than the outbound direction. If the inbound direction differs from the outbound direction, the inbound direction can be adjusted using the testvar mssClampingInValue. If not specified, the outbound and inbound directions will check for the same value specified in the testvar mssClampingValue. Example with different values per direction: testvar mssClampingValue 1452 testvar mssClampingInValue 1460 DNS Lookup Timeout ------------------ The default DNS lookup timeout is normally 5 seconds when a CDRouter client attempts to resolve a hostname. In some cases, a device under test may be slow to respond to DNS requests. The DNS lookup timeout can be adjusted by configuring the testvar dnsLookupTimeout. Example with 10 second DNS lookup timeout testvar dnsLookupTimeout 10 Running external scripts ------------------------ CDRouter 4.2 has a new API interface for running external scripts and programs. The new "SCRIPT_exec" proc can be used to launch an external script while maintaining CDRouter's event loop. Using Tcl's exec command directly may lead to CDRouter blocking and not processing any incoming packets or events. Examples: # -- run a script and let the output show up in the log SCRIPT_exec "/hom/tools/run.sh" my-log-prefix # -- run a ping command and display the output afterwards set output [ SCRIPT_exec "ping -c 10 [ testvar acsIp ]" ] pktsrcLog $output The SCRIPT_exec command may be used in testcases or testcase enter/exit procs. For more examples of SCRIPT_exec, please visit http://www.qacafe.com/kb/articles/show/248 Chrome Browser Support ---------------------- BuddyWeb now supports Google's new Chrome browser. Please see http://www.google.com/chrome Madwifi Wireless Driver Support ------------------------------- CDRouter 4.2 adds experimental support for the madwifi driver as an alternative to driverloader. Please see http://www.qacafe.com/kb/articles/show/253 ---------------------------------------------------------------------- CDRouter TR-069 Updates ---------------------------------------------------------------------- Updated XML Parser ------------------ CDRouter 4.2 now uses a faster XML parser by default. The new parser helps improve the performance of the CDRouter ACS when a device supports a large data model. Please note that if you are tracking the timing of specific tests, the new timing will be shorter. QA Cafe has experienced a reduction of 40 to 60 percent in the time it takes the ACS to parse the SOAP requests from the CPE. NOTE: It is still possible to configure CDRouter to use the older parser. The older parser can be enabled by touching the following file: # touch /usr/buddyweb/etc/use-pure-tcl-xml-parser Buddyweb does not need to be enabled. To return to the new parser, delete the file /usr/buddyweb/etc/use-pure-tcl-xml-parser. # rm /usr/buddyweb/etc/use-pure-tcl-xml-parser New TR-106 profile testing module --------------------------------- CDRouter 4.2 adds support for the Broadband Forum's TR-106 "Data Model Template for TR-069-Enabled Devices". Several new test cases for testing the profiles defined by TR-106 have been included in the new tr106_profiles.tcl module. New TR-111 Part 2 module ------------------------ CDRouter 4.2 contains a new TR-111 Part 2 module containing specific tests for TR-111 Part 2. The tr111_part2.tcl module can test an IGD with TR-111 Part 2 or a LAN side device with TR-111 Part 2. To enable TR-111 Part 2 testing, the testvar supportsTr111Part2 must be configured to yes. During the first Inform from a device, CDRouter will configure the STUN client and initial settings for TR-111 Part 2. There are three additional testvars that can be used to control the TR-111 Part 2 test setup: testvar STUNMaximumKeepAlivePeriod 60 The STUNMaximumKeepAlivePeriod maps directly to the TR-111 Part 2 parameter STUNMaximumKeepAlivePeriod. CDRouter will configure this value on the TR-069 client. The default is 60 seconds. testvar STUNMinimumKeepAlivePeriod 60 The STUNMinimumKeepAlivePeriod maps directly to the TR-111 Part 2 parameter STUNMinimumeepAlivePeriod. CDRouter will configure this value on the TR-069 client. The default is 60 seconds which matches the value of STUNMaximumKeepAlivePeriod. testvar STUNAuth no By default, the CDRouter STUN server will not require authentication for the STUN client. Authentication can be enabled by configuring the testvar STUNAuth to yes. CDRouter automatically configures a STUN username and STUN password when TR-111 Part 2 is enabled. New PD-128 Test Case 4.1 ------------------------ The pd128.tcl module has been updated to include an implementation of PD-128 Test 4.1. This test case is only run when TR-111 Part 2 is enabled. TEST 405: PD-128 Test 4: STUN NAT Traversal Test MODULE: pd128.tcl NAME: pd128_test_4.1 New PD-128 Test Case 6.2 ------------------------ The pd128.tcl module has been updated to include an implementation of PD-128 Test 6.2. This test case is only run when TR-111 Part 2 is enabled. TEST 408: PD-128 Test 6 Part 2: UDP Connection Request MODULE: pd128.tcl NAME: pd128_test_6.2 Support for Upload RPC ---------------------- The tr69.tcl module has two new additional tests for the Upload RPC. Support for the Upload RPC can be enabled or disabled by configuring the testvar tr69UploadRPC. By default, uploaded vendor configuration and log files are stored in the /tmp directory. This location may be changed by configuring the testvar tr69UploadPath. There is a new test case for a configuration file upload and a log file upload: TEST 478: Verify vendor config file HTTP Upload with no ACS specified delay MODULE: tr69.tcl NAME: tr69_140 TEST 479: Verify vendor log file HTTP Upload with no ACS specified delay MODULE: tr69.tcl NAME: tr69_150 Improved Verification for GetParameterNames Walk Testing -------------------------------------------------------- The GetParameterNames "walk" test capabilities for CWMP profiles have been improved to catch problems with returned parameter lists that are not correctly implementing the nextLevel = 'true' functionality. CDRouter currently catches this type of problem for general GetParameterNames tests, but this type of validation is now implemented when walking through all of the parameter names during CWMP profile testing as well. New AddObject/DeleteObject CWMP Profile Testing ----------------------------------------------- CDRouter's CWMP Profile testing has been updated in this release with a new AddObject/DeleteObject test for all objects that are creatable. Support for CWMP profiles is automatically detected by reading the DeviceSummary parameter in the initial Inform from the device under test. If the device does not support the DeviceSummary parameter, a list of supported CWMP profiles may be configured statically in the CDRouter configuration file. The new CWMP profile support also allows the use of skipping verification for specific parameters that may not be implemented. CDRouter contains five generalized tests for each CWMP profile that is supported. For a discussion on CWMP profile testing and configuration options, please see the new chapter on "CWMP Profile Testing" in the CDRouter TR-069 User Guide. http://www.qacafe.com/static/pdf/cdrouter-tr69-user-guide.pdf New ACS Download Server Certificate ----------------------------------- In some configurations, CDRouter may need to create a second download server running https. CDRouter now contains a default certificate for this download server that is based on the same CA as the default ACS certificate. You can configure your own certificate for the download server using the following testvar: testvar acsDownloadCertPath /usr/share/doc/cdrouter/acs-download.qacafe.com.pem If your certificate requires an intermediate CA, you can also configure the the intermediate CA certificate: testvar acsDownloadCaCertPath /usr/share/doc/cdrouter/acs.qacafe.com-ca.pem TR-069 Port Map Deletion and Disable Timeout -------------------------------------------- CDRouter 4.2 now allows you to configure the amount of time to wait for a port mapping to be deleted after a DeleteObject RPC has been issued for the port mapping. The default value is current 15 seconds. This value may be changed by configuring the testvar tr69PortMapDeletionDelay. Example: # Wait 120 seconds before checking that port map is deleted testvar tr69PortMapDeletionDelay 120 CDRouter also allows you to configure a similar delay for port mappings that are disabled instead of deleted. The testvar tr69PortMapDisableDelay may be configured to adjust the delay after disabling a port mapping. The default value is 15 seconds. Example: # Wait 120 seconds before checking that port map is disabled testvar tr69PortMapDisableDelay 120