The major difference between OPC UA and its predecessors lies in that the machine data can now not only be transported but also interpreted in a way understood by machines.
OPC UA enables a common communication architecture for a variety of objectives like data access, historical data access and security. To enable such variety in objectives, OPC UA follows a two-layer approach. The base layer consists of code for common services across applications over which code for specific applications can be built.
Ideally, two mechanisms are used for exchanging data – client-server model and subscriber-publisher model. It is noteworthy that both these mechanisms are detached from the actual protocol. Let us briefly look at the functioning and implications of each of these mechanisms and the respective protocols involved.
The TCP and hyper-text transfer protocol secure (HTTPS) represent the client-server mechanism, which can facilitate peer-to-peer transmission for secure, and validated transport with limited number of connections.
The user datagram protocol (UDP) along with advanced message queuing protocol (AMQP) and MQ telemetry transport (MQTT) represent the subscriber model. This is mostly preferred for a large number of connections with minimalistic security features – under the category of “fire and forget”.
Since OPC UA combines the features of both, it eliminates the dilemma of choosing between OPC UA or AMQP or MQTT.