Annex A (normative) UADP Header Layouts

A.3 Message headers for Events and Data with dynamic layout

A.3.4 Header layout for NetworkMessages

A UADP NetworkMessage header shall consist of the following fields according to this header layout:
- Version/Flags
- ExtendedFlags1
- PublisherId
-
PayloadHeader Additional restrictions:
- The datatype for the PublisherId shall be UInt64 Note: For the PublisherId the DataType UInt64 was selected because it allows a simple way for a Publisher to generate unique PublisherIds by using the local MAC address (48 Bit) as part of the PublisherId.
The NetworkMessage header layout is shown in Figure A.7.
Figure A.7 – UADP NetworkMessage header layout
Table A.7 shows the configuration for the NetworkMessage header.
Table A.7 – UADP NetworkMessage header layout
Name | Type | Restrictions |
---|---|---|
UADPVersion | Bit[0-3] | The version shall be 1 |
UADPFlags | Bit[4-7] | Bit 4: PublisherId enabled Bit 5: GroupHeader disabled Bit 6: PayloadHeader enabledBit 7: ExtendedFlags1 enabled |
ExtendedFlags1 | Byte | Bit range 0-2: PublisherId Type 011 The PublisherId is of DataType UInt64 Bit 3: DataSetClassId disabled Bit 4: Security disabled Bit 5: Timestamp disabled Bit 6: PicoSeconds disabledBit 7: ExtendedFlags2 disabled |
PublisherId | UInt64 | Configured value for the PubSubConnection.The datatype shall be UInt64. |
PayloadHeader | Byte[*] | Defined by Table 140. |
Table A.8 defines the values for the configuration parameters representing this layout.
Table A.8 – Values for configuration parameters
Parameter | Value |
---|---|
UadpNetworkMessageContentMask | 0x00000041 This value results of the following options: Bit 0: PublisherId enabledBit 6: PayloadHeader enabled |
When a PubSubConnection is created by using the Method AddConnection() the element PublisherId contained in the argument PubSubConnectionDataType shall be of the DataType UInt64.