This layout is specially configured for AliasName update messages. For additional detail on PubSub and header layouts see OPC 10000-14.

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 D.2.

image016.png

Figure D.2 – UADP NetworkMessage header layout

Table D.5 shows the configuration for the NetworkMessage header.

Table D.5 – 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 = 0

Bit 7: ExtendedFlags1 enabled = 1

ExtendedFlags1

Byte

Bit range 0-2: PublisherId Type

011 The PublisherId is of DataType UInt64

Bit 3: DataSetClassId enabled = 1

Bit 4: SecurityHeader enabled configurable (default=1)

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.

DataSetClassId

Guid

The DataSetClassId associated with the DataSets in the NetworkMessage. All DataSetMessages in the NetworkMessage shall have the same DataSetClassId. – It shall be 65880051-7e5b-4a96-ae47-e0ef4704b924

UADP messages may be signed to ensure integrity. In this case a security header and a signature have to be added to the message.

This header layout is basically the same as the header layout defined in D.3.2 but with additional security level ‘Signing but no encryption’. The NetworkMessage header layout with signing is shown in Figure D.3

image017.png

Figure D.3 – UADP NetworkMessage header layout with integrity (signing)

Table D.6 shows the configuration for the NetworkMessage header with signing. The table contains only the added or modified rows from Table D.5.

Table D.6 – UADP NetworkMessage header layout with integrity (signing)

Name

Type

Restrictions

ExtendedFlags1

Byte

Bit 4: SecurityHeader enabled = 1

SecurityHeader

SecurityFlags

Byte

Bit 0: NetworkMessage Signed enabled = 1

Bit 1: NetworkMessage Encryption enabled = 0

Bit 2: SecurityFooter enabled = 0

Bit 3: Force key reset enabled = 0

Bit range 4-7: Reserved

SecurityTokenId

IntegerId

The ID of the security token that identifies the security key in a SecurityGroup.

NonceLength

Byte

The length of the Nonce used to initialize the encryption algorithm.

MessageNonce

Byte[NonceLength]

A number used exactly once for a given security key.

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

Additional remarks:

  • Field is encoded as a Variant
  • The following types of DataSetMessages (Data Key Frame, Data Delta Frame, Keep Alive, etc.) are supported

The DataSetMessage header layout is shown in Figure D.4.

image018.png

Figure D.4 – UADP DataSetMessage header layout

Table D.7 shows the configuration for the DataSetMessage header.

Table D.7 – UADP DataSetMessage header layout

Name

Type

Description

DataSetFlags1

Byte

Bit 0: Indicates whether this DataSetMessage is valid

Bit range 1-2: Field Encoding

00 - VariantBit 3: DataSetMessageSequenceNumber enabled = 1

Bit 4: Status enabled = 0

Bit 5: ConfigurationVersionMajorVersion enabled = 0

Bit 6: ConfigurationVersionMinorVersion enabled = 0

Bit 7: DataSetFlags2 enabled = 1

DataSetFlags2

Byte

Bit range 0-3: UADP DataSetMessage type

Shall be 0000 for a Data Key Frame

Shall be 0001 for a Data Delta Frame

Shall be 0011 for a Keep Alive

Bit 4: Timestamp enabled = 0

Bit 5: PicoSeconds enabled = 0 (not included in the DataSetMessage header)

For a description of Data KeyFrame, Data Delta Frames and Keep Alive see OPC 10000-14.

Bibliography

ANSI/ISA-S5.1-1984 (R 1992), Instrumentation Symbols and Identification

https://webstore.ansi.org/standards/isa/isa1984r1992

__________