dotnet add package UAOOI.Networking.UDPMessageHandler --version 4.0.2
NuGet\Install-Package UAOOI.Networking.UDPMessageHandler -Version 4.0.2
<PackageReference Include="UAOOI.Networking.UDPMessageHandler" Version="4.0.2" />
paket add UAOOI.Networking.UDPMessageHandler --version 4.0.2
#r "nuget: UAOOI.Networking.UDPMessageHandler, 4.0.2"
// Install UAOOI.Networking.UDPMessageHandler as a Cake Addin #addin nuget:?package=UAOOI.Networking.UDPMessageHandler&version=4.0.2 // Install UAOOI.Networking.UDPMessageHandler as a Cake Tool #tool nuget:?package=UAOOI.Networking.UDPMessageHandler&version=4.0.2
Reactive Networking of Semantic-Data Underlying Transport over UDP
The main goal of this document is to provide instruction on how to expand the transport layer for OOI Networking of the
Semantic-Data over the User Datagram Protocol (UDP) to be compliant with the specifications mentioned in the section Normative references. Detailed description of this concept is covered by the document: Reactive Networking of Semantic-Data Library
A reference implementation of the
Transport over UDP is provided by the project Networking.UDPMessageHandler. Because intentionally the SDK is designed to use any transport protocol, a custom external component implementing UDP connectivity can be seamlessly integrated with this SDK using dependency injection concept.
The following documents, in whole or in part, are normatively referenced in this document and are indispensable for its application.
- Internet Standard RFC 768: User Datagram Protocol (UDP)l
- Internet Standard RFC: 791 Internet Protocol (IP)
- Internet Standard RFC 1112 Host Extensions for IP Multicasting
- OPC Unified Architecture Specification Part 14: PubSub Release 1.04 February 06, 2018
Notices for Implementer
The article Reactive Networking of Semantic-Data Library contains a description covering instruction for the external UDP handling components. An example of how to implement the
Transport layer for the UDP protocol is illustrated by the project UA Data Example Application. This library implements the
IMessageHandlerFactory in the class
MessageHandlerFactory used to create communication infrastructure for the
Producer role as well.
JoinMulticastGroup method subscribes the
UdpClient to a multicast group using the specified
IPAddress. After calling the
JoinMulticastGroup method, the underlying
Socket sends an Internet Group Management Protocol (IGMP) packet to the router requesting membership to the multicast group. The multicast address range is
126.96.36.199. If you specify an address outside this range or if the router to which the request is made is not multicast enabled,
UdpClient will throw a
SocketException. Once the
UdpClient is listed with the router as a member of the multicast group, it will be able to receive multicasted datagrams sent to the specified
Publisher do not need to belong to a multicast group to send datagrams to a multicast IP address. To get more details visit the MSDN online documentation.
|Product||Versions Compatible and additional computed target framework versions.|
|.NET||net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed.|
|.NET Core||netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed.|
|.NET Standard||netstandard2.0 is compatible. netstandard2.1 was computed.|
|.NET Framework||net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed.|
|MonoAndroid||monoandroid was computed.|
|MonoMac||monomac was computed.|
|MonoTouch||monotouch was computed.|
|Tizen||tizen40 was computed. tizen60 was computed.|
|Xamarin.iOS||xamarinios was computed.|
|Xamarin.Mac||xamarinmac was computed.|
|Xamarin.TVOS||xamarintvos was computed.|
|Xamarin.WatchOS||xamarinwatchos was computed.|
- System.ComponentModel.Composition (>= 4.7.0)
- UAOOI.Networking.Core (>= 4.0.2)
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
Maintenance release - unimportant changes.