HCK Controller and Client Organization

Before you install the Windows HCK software in your lab, you should decide how you want to organize your lab's resources to best use Windows HCK. Determine the number of controllers, the number of clients connecting to those controllers, and on which computer(s) to install Windows HCK Studio. These decisions are partly influenced by the type of devices and/or systems that you want to certify.

For example, to test specific devices, such as a USB-based flash-card reader, you might decide to allocate fewer controllers, each with more clients, because multiple testers can access the controllers, schedule jobs, and review job results, simultaneously.


This release of Windows HCK does not support enterprise scenarios, wherein controllers communicate directly with each other to share clients and distribute scheduled jobs. That is, Windows HCK does not support load-balancing.


Typically, there are two ways to organize your controller and client lab resources:

  1. Allocate fewer controllers, each with many clients connected to them.

    • Advantages: You will have less overhead administering the controllers and clients. Also, the chances are higher for a client with the necessary hardware and software configuration to be available, or become available shortly, to execute a scheduled job.

    • Disadvantages: Adds more latency to the Windows HCK controller. Windows HCK Studio menu items will be slower to respond and jobs slower to launch.

  2. Allocate more controllers, each with fewer clients connected to them.

    • Advantages: Any given controller will be more responsive because it has fewer clients communicating with it. You can reduce overall latency.

    • Disadvantages: Adds more latency to the Windows HCK controller. Windows HCK Studio menu items will be slower to respond and jobs slower to launch.

If you configure your controllers to run on high performance/high resource hardware, they will be able to handle more clients.


Multiple controllers are independent of each other.


Windows HCK puts a limit of 150 clients that can connect to a single controller. If you have a large lab that has more than 150 computers intended to be clients, you must allocate multiple controllers. Regardless of the size of your lab, you can allocate multiple controllers, each with any number of clients (up to 150 per controller) connected to a given controller.


Installing Windows HCK Studio does not count toward the limit of 150 clients per controller.


The following table describes example scenarios for labs of different sizes.

Number of computersMinimum number of Windows HCK controllers to allocateNumber of Windows HCK clients to allocateConfiguration

2 to 10


1 to 9

Allocate a single controller that will have 1 to 9 clients connected to it.

The remaining computers all become clients of the controller.

11 to 151

1 or more

1 to 150

Allocate at least one controller, and possibly more.

For example, you can allocate one controller that can have up to 150 clients. Or, you can allocate two controllers and distribute the computers as their clients in an arbitrary manner.

The decision about the ratio in which to allocate clients to controllers is completely at your discretion.

152 or more

2 or more

150 or more

You must allocate at least two or more controllers for labs that contain more than 150 clients because this release of Windows HCK supports a maximum of 150 clients per controller.



To use Windows HCK to obtain certification, all tests must be performed from a single controller. You cannot combine results from multiple controllers to obtain certification.




Send comments about this topic to Microsoft