2.2.1.4.4 Server Network Data (TS_UD_SC_NET)

The TS_UD_SC_NET data block is a reply to the static virtual channel list presented in the Client Network Data structure (section 2.2.1.3.4).


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

header

MCSChannelId

channelCount

channelIdArray (variable)

...

Pad (optional)

header (4 bytes): A GCC user data block header, as specified in section User Data Header (section 2.2.1.3.1). The User Data Header type field MUST be set to SC_NET (0x0C03).

MCSChannelId (2 bytes): A 16-bit, unsigned integer. The MCS channel identifier of the I/O channel.

channelCount (2 bytes): A 16-bit, unsigned integer. The number of 16-bit, unsigned integer MCS channel IDs in the channelIdArray field.

channelIdArray (variable): A variable-length array of MCS channel IDs (each channel ID is a 16-bit, unsigned integer) which have been allocated (the number is given by the channelCount field). Each MCS channel ID corresponds in position to the channels requested in the Client Network Data structure.

Pad (2 bytes): A 16-bit, unsigned integer. Optional padding. Values in this field MUST be ignored. The size in bytes of the Server Network Data structure MUST be a multiple of 4. If the channelCount field contains an odd value, then the size of the channelIdArray (and by implication the entire Server Network Data structure) will not be a multiple of 4. In this scenario, the Pad field MUST be present and it is used to add an additional 2 bytes to the size of the Server Network Data structure. If the channelCount field contains an even value, then the Pad field is not required and MUST NOT be present.