1.3 Overview

Windows Deployment Services (WDS) Control Protocol is a generic client/server protocol which is used to invoke services provided by Service Providers in WDS Server. The WDS Control Protocol is a simple protocol with no state shared across multiple calls. Each call is considered one complete request.

A typical service invocation involves the following:

  1. The client has already obtained the name of the WDS Server, Endpoint GUID for Service Provider and OpCode for the operation being invoked.

  2. The client constructs a request by packaging required variables (as specified in section 2.2.1), Endpoint GUID and OpCode.

  3. The WDS Control Protocol sends the request to the server by using RPC interface (as specified in section 3).

  4. The WDS Server dispatches the request to the appropriate Service Provider based on Endpoint GUID.

  5. Based on the Endpoint GUID and OpCode in the request, Service Provider will:

    • Validate that the client has appropriate rights to perform the operation.

    • Unpack the variables stored in the packet.

    • Perform the requested operation.

    • Package the results in pre-determined variables and complete the RPC request.

  6. The client will check for success or failure of the request (as specified in section 3.1.4.2 and 3.2).

  7. Unpack the variables from the reply packet and process the results.

The following diagram shows a client making a request to the WDS Server:

Client to server request

Figure 1: Client to server request