OPC UA UDP is a simple UDP based protocol that is used to transport UADP NetworkMessages.
The syntax of the UDP transporting protocol URL used in the Address parameter defined in 18.104.22.168 has the following form:
The host is either an IP address or a registered name like a hostname or domain name. IP addresses can be unicast, multicast or broadcast addresses. It is the destination of the UDP datagram.
The IANA registered OPC UA port for UDP communication is 4840. This is the default and recommended port for broadcast, multicast and unicast communication. Alternative ports may be used.
The transport of a UADP NetworkMessage in a UDP packet is defined in Table 94.
Table 94 – UADP message transported over UDP
|Frame Header||The frame header.|
|IP Header||The IP header for the frame contains information like source IP address and destination IP address. The size of the IP header depends on the used version.|
|UDP Header||The UDP header for the frame contains the source port, destination port, length and checksum. Each field is two byte long. The total size of the UDP header is 8 byte.|
|UADP NetworkMessage||The UADP NetworkMessage is sent as UDP data.|
|Frame Footer||The frame footer.|
For OPC UA UDP it is recommended to limit the MaxNetworkMessageSize plus additional headers to a MTU size. The number of frames used for a UADP NetworkMessage influences the probability that UADP NetworkMessages get lost.
For OPC UA UDP the MaxNetworkMessageSize plus additional headers shall be limited to 65535 Byte.
It is recommended to use switches with IGMP support to limit the distribution of multicast traffic to the interested participants. OPC UA Applications shall issue an IGMP membership report.
Note: The Internet Group Management Protocol (IGMP) is a standard protocol used by hosts to report their IP multicast group memberships and must be implemented by any host that wishes to receive IP multicast datagrams. IGMP messages are used by multicast routers to learn which multicast groups have members on their attached networks. IGMP messages are also used by switches capable of supporting “IGMP snooping” whereby the switch listens to IGMP messages and only sends the multicast NetworkMessages to ports that have joined the multicast group. There are three versions of IGMP: - IGMP V1 is defined in RFC1112. - IGMP V2 is defined in RFC2236. - IGMP V3 is defined in RFC3376. RFC2236 and RFC3376 discuss host and router requirements for interoperation with older IGMP versions. Since OPC UA devices make extensive use of IP multicast for UDP transport, consistent IGMP usage by OPC UA devices is essential in order to create well-functioning OPC UA Application networks.
IGMP Membership Report Messages OPC UA devices shall issue a Membership Report message (V1, V2 or V3 as appropriate) when opening a UDP connection on which they will receive multicast NetworkMessages.