2.2.3.1 EstablishConnectionHeader

The EstablishConnectionHeader contains queue manager GUIDs ([MS-DTYP] section 2.3.4.1) that identify the initiator and acceptor, a time stamp set by the initiator, and flags.


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

ClientGuid (16 bytes)

...

...

ServerGuid (16 bytes)

...

...

TimeStamp

OperatingSystem

Reserved

Padding (512 bytes)

...

...

ClientGuid (16 bytes): The GUID for the queue manager of the initiator that is requesting the connection. In a connection request, the initiator sets this field. In a connection response, the acceptor sets this field to the queue manager GUID provided in the connection request.

ServerGuid (16 bytes): The GUID that identifies the queue manager of the acceptor responding to the connection request. In a connection request, the initiator MUST specify the acceptor queue manager GUID or MUST zero fill this field if a direct format name is used. In a connection response, the acceptor MUST set this field to the GUID provided in the connection request or to the acceptor queue manager GUID if a direct format name is used.

TimeStamp (4 bytes): A 32-bit unsigned integer that identifies when the connection request was made. This value represents the number of milliseconds since the operating system was started. In a connection request, the initiator sets this field. In a connection response, the acceptor sets this field to the time stamp provided in the connection request.

OperatingSystem (2 bytes): A 16-bit unsigned integer field containing flags related to the connection request. The field MUST be set to a combination of the following values.


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

RE

A

B

C

D

E

F

G

H

RE (1 byte): This field is reserved. MUST be set to 0x10.

A - SE (1 bit): Session flag. If a Ping Request, as specified in Ping Message (section 2.1.2), is sent when the session is being created (section 3.1.5.2.2), the sender MUST set this bit to 0; otherwise, the sender MUST set it to 1. The receiver MUST send the same value back to the sender in the Response Packet (section 3.1.5.3.2).

Value

Meaning

0

A Ping Request packet is sent when the session is being created.

1

A Ping Request packet is not sent when the session is being created.

B - OS (1 bit): Indicates the type of the initiator operating system. The acceptor MAY use this parameter to impose a limit on the number of unique callers.<13> This field MUST be set to a value specified following:<14>

Value

Meaning

0

Initiator operating system is not a server-class operating system.

1

Initiator operating system is a server-class operating system.

C - QS (1 bit): Quality of Service (QOS) flag. This field SHOULD be set to a value specified following:<15>

Value

Meaning

0

None.

1

Indicates that the underlying transport supports Guaranteed Quality of Service (GQoS). Details are as specified in [RFC2212].

D - X11 (1 bit): Unused bit field. SHOULD NOT be set when sent and MUST be ignored on receipt.

E - X12 (1 bit): Unused bit field. SHOULD NOT be set when sent and MUST be ignored on receipt.

F - X13 (1 bit): Unused bit field. SHOULD NOT be set when sent and MUST be ignored on receipt.

G - X14 (1 bit): Unused bit field. SHOULD NOT be set when sent and MUST be ignored on receipt.

H - X15 (1 bit): Unused bit field. SHOULD NOT be set when sent and MUST be ignored on receipt.

Reserved (2 bytes): A 16-bit unsigned integer field reserved for future use. MUST be set to zero when sent and MUST be ignored on receipt.

Padding (512 bytes): A fixed-length array of 512 bytes of padding to fill the remainder of the EstablishConnectionHeader packet. When the EstablishConnectionHeader is part of a response packet from a server, each byte of this array MUST be filled with the value 0x5A. When the EstablishConnectionHeader is not part of a response packet from a server, each byte in this field contains an uninitialized value.