A UADP NetworkMessage header shall consist of the following fields according to this header layout:

Additional restrictions:

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.

image057.png

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 = 1

Bit 5: GroupHeader enabled = 0

Bit 6: PayloadHeader enabled = 1

Bit 7: ExtendedFlags1 enabled = 1

ExtendedFlags1

Byte

Bit range 0-2: PublisherId Type

011 The PublisherId is of DataType UInt64

Bit 3: DataSetClassId enabled = 0

Bit 4: SecurityHeader enabled = 0

Bit 5: Timestamp enabled = 0

Bit 6: PicoSeconds enabled = 0

Bit 7: ExtendedFlags2 enabled = 0

PublisherId

UInt64

Configured value for the PubSubConnection.

The datatype shall be UInt64.

PayloadHeader

Byte[*]

Defined by Table 143.

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 enabled = 1

Bit 6: PayloadHeader enabled = 1

When a PubSubConnection is created by using the Method AddConnection() the element PublisherId contained in the argument PubSubConnectionDataType shall be of the DataType UInt64.