Wake-on-ring/Wake-on-LAN Test Plan - DRAFT

 

  1. Validating Wake-on-ring/Wake-on-LAN capabilities
  2. This plan addresses testing and validating a machine’s ability to wake from a low-power state via the telephone ring indicator or LAN activity.

  3. Requirements
  4. A machine undergoing wake-on-ring/wake-on-LAN testing must meet the set of requirements defined below.

    1. BIOS
    2. The machine’s BIOS must comply with the Advanced Power Management (APM) specification v1.2 or the Advanced Configuration and Power Interface (ACPI) specification v1.0 or later. Machines that comply with APM v1.2 must also support resume timers.

    3. Operating Systems
    4. The machine must have Microsoft Windows 98 or Microsoft Windows NT5 installed.

      Windows 98 supports wake-on-ring/wake-on-LAN on machines compliant with the APM or ACPI specification. Wake-on-LAN is only supported in Windows 98 Service Release 1 and later.

      A machine running Windows NT5.0 must comply with the ACPI specification. NT5 does not support wake-on-ring/wake-on-LAN on APM-compliant machines.

    5. Networking
    6. The machine must be connected to a network and must use the TCP/IP protocol. This requirement applies to both wake-on-ring and wake-on-LAN testing.

    7. Number of Machines

    The test requires at least two machines. The machine undergoing testing must meet the BIOS, OS, and networking requirements described above. The modem or network card to be tested should be installed on this machine.

    The purpose of the second machine is to wake up the test machine(s). Think of it as a wake-up server. This server only needs to satisfy the networking requirement. Of course, if you are testing a wake-on-ring, you will want to ensure that a modem is installed on this machine.

  5. Test Process
  6. The test is an automated, repetitive process that marks the modem or network card as the wake-up device and then puts the machine into a low-power state. Another computer, designated as the wake-up server, then attempts to wake the machine via a telephone call or via activity on the LAN. If this action succeeds, the test will validate that the machine is capable of accurately receiving and transmitting data over the modem or the network. This process repeats ten times. If each of the ten iterations is successful, the test is considered a success.

    1. Test Components
    2. The wake-on-ring/wake-on-LAN test consists of two applications: DOZER.EXE and WAKER.EXE. DOZER runs on the test machine and conducts the wake-on-ring/wake-on-LAN testing and validation. WAKER runs on the wake-up server. The two applications communicate through a TCP/IP socket connection.

      1. DOZER
      2. DOZER conducts the wake-on-ring/wake-on-LAN tests, validating that the machine wakes and functions properly.

      3. WAKER

      WAKER wakes up the machine(s) running DOZER. Once awake, DOZER will exchange data with WAKER order to validate that the machine is functioning properly.

    3. Testing
      1. Marking the Wake-up Device
      2. DOZER ensures that the modem or network card is marked as the wake-up device before suspending the machine.

        1. Wake-on-ring
        2. Windows 98 transparently marks the modem as the wake-up device. By design, when a modem’s COM port is opened it is marked as the wake-up device. DOZER has only to maintain an open COM port as the system suspends in order to enable wake-on-ring.

          Windows NT 5.0 requires a call to RequestDeviceWakeup() in order to mark the modem as the wake-up device. DOZER passes the modem’s COM port handle to RequestDeviceWakeup as soon as it opens a connection to the modem.

        3. Wake-on-LAN

        If the network card is capable of wake-on-LAN, both Windows 98 and Windows NT 5.0 automatically mark it as the wake-up device.

      3. Failure Recovery
      4. DOZER will recover from wake-on-ring/wake-on-LAN failures as well resume failures.

        1. Wake-on-ring/Wake-on-LAN failure
        2. DOZER sets a waitable timer to awaken the machine if wake-on-ring/wake-on-LAN fails to do so. If the resume timer awakens the machine, DOZER notes that the test failed and proceeds to the next iteration of the test.

        3. Resume failure

      DOZER has made provisions for machines which fail to resume. As soon as the machine is restarted, DOZER notes that the test failed and continues with the next iteration of the test.

    4. Validating

    Once DOZER has confirmed that the machine successfully woke-on-ring/woke-on-LAN, it validates that the wake-up device is functioning properly by exchanging a predefined string of randomly generated characters with WAKER. If the data is transmitted/received completely and without corruption, then DOZER declares the device successfully awakened the machine.

  7. Usage
  8. Both DOZER and WAKER allow you to make changes to various internal settings via command line parameters or dialog boxes.

    You must provide DOZER with the name of the wake-up server. If you do not provide the name on the command line, then DOZER will prompt for it. Additionally, if you are testing wake-on-ring, you must provide both DOZER and WAKER with the appropriate phone numbers. Unlike typical telecommunications applications, do not provide the telephone number you are calling. Instead, provide the telephone number of the line connected to the machine.

    1. DOZER
      1. Command Line Syntax
      2. Dozer [/I x] [/K] [/L file.ext] [/P xxx-xxxx] [/Q] [/S server] [/R] [/T x] [/V] [/?]

        Where:

        /I specifies the number of iterations

        /K suppresses suspend (Keep awake)

        /L specifies the name of the log file

        /P specifies the telephone number

        /Q turns on query mode (DOZER queries user before starting test)

        /R turns on the ability to test root-enumerated modems

        /S specifies the name of the wake-up server

        /T specifies the amount of time (in seconds) the system should sleep

        /V turns on verbose output

        /? displays help

      3. Starting the Test

      Once DOZER is running, you can start the test by selecting Test | Start.

    2. WAKER
      1. Command Line Syntax

    Waker [/P xxx-xxxx] [/?]

    Where:

    /P specifies the telephone number

    /? displays help