3.2.3.1 DVC Client Manager Initialization

The Remote Desktop Protocol: Dynamic Virtual Channel Extension encompasses three version levels. The server specifies priority charges in Version 2 or 3 (as described in section 2.2.1.1.2); no such priority charges are specified in Version 1. If the client supports channel priorities, it MUST set the Version field of DYNVC_CAPS_RSP (section 2.2.1.2) to at least 2. The server specifies support for compressed dynamic virtual channel data as well as channel priorities by using the Version 3 PDU. If the client supports compressed dynamic virtual channel data as well as channel priorities, it MUST set the Version field of DYNVC_CAPS_RSP to 3.

Capabilities PDUs are exchanged to negotiate the version level of the Remote Desktop Protocol: Dynamic Virtual Channel Extension that is supported. Three different Capabilities PDUs are used to negotiate version level support.

  • DYNVC_CAPS_VERSION1 (section 2.2.1.1.1) PDU is sent by a server to indicate it supports version 1 of this protocol.

  • DYNVC_CAPS_VERSION2 (section 2.2.1.1.2) PDU is sent by a server to indicate it supports version 2 of this protocol.

  • DYNVC_CAPS_VERSION3 (section 2.2.1.1.3) PDU is sent by a server to indicate it supports version 3 of this protocol.

  • DYNVC_CAPS_RSP (section 2.2.1.2) PDU is sent by a client to acknowledge the version level it supports.

A Capabilities PDU has the Cmd field set to 0x05.

When a DVC client manager receives a Capabilities Request, it checks the Version field to determine what protocol version level the DVC server manager is requesting support for. The client MUST respond with a DYNVC_CAPS_RSP (section 2.2.1.2) PDU indicating the highest version level supported by the client.