2.2.22 TRANS_USERDATA_KEEPALIVE

The TRANS_USERDATA_KEEPALIVE packet is used by DXDiag to calculate an RTT. This packet begins with a TRANS_USERDATA_HEADER packet header.

In the packet header, the PACKET_COMMAND_RELIABLE, PACKET_COMMAND_SEQUENTIAL, and PACKET_COMMAND_END_MSG flags MUST be set in the bCommand field. All other bCommand flags are optional. The bControl field MUST be set to PACKET_CONTROL_KEEPALIVE_OR_CORRELATE (0x02) to indicate that the frame is a keep-alive frame (DirectX version 9.0 and later), or that the sender requests a dedicated acknowledgment from the receiver (DirectX 8.0 and earlier). For information about DirectX versions, see section 1.7.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

dwSessID

dwSessID (4 bytes): A 32-bit integer present only in TRANS_USERDATA_KEEPALIVE messages sent to version 0x00010006 recipients. This value MUST be set to the same dwSessID value specified in the TRANS_COMMAND_CONNECT (section 2.2.7) message associated with the connection; otherwise, the packet SHOULD be ignored.