3.1 Common Details

The following state diagram illustrates the state transitions that both the client and the server go through.

Client and server state transitions

Figure 5: Client and server state transitions

Channel-connected event: This event signifies that the underlying transport channel is connected, as specified in section 2.1.

Capability-exchange state: The client and the server are exchanging capabilities, as described in section 1.3.1.1.

Exchange-completed event: Signifies that the capability exchange is completed, that is, the client has sent a Channel Created message (see section 2.2.5.1).

Ready state:  The protocol is ready to redirect new devices.

Add virtual channel event: As described in section 1.3.1.2, a new device has arrived on the client and the protocol is ready to redirect it.

Add device event: This event signifies that the device is ready for I/O, as described in section 1.3.1.2.

Device I/O state: As described by section 1.3.1.3, the device is ready to exchange I/O.