OPC UA enables Servers, Clients and networks to be redundant. OPC UA provides the data structures and Services by which Redundancy may be achieved in a standardized manner.
Generally speaking, we can apply redundancy to: servers/clients, communication paths and signals. Although the specification limits redundancy support to client/server redundancy, product vendors can incorporate other kinds of redundancy into the framework proposed by the specification. For example, a server can establish wireless connection as the means of recovery from cable connection failure or a server can use many data sources bound to a variable to provide continuous updating of the variable value even if one of the sensors has been damaged.
Note – Redundancy is defined in OPC UA Part 4, the Information Model is specified in OPC UA Part 5.
Server Transparent Failover
Server failover is transparent to the Client: the Client does not care or even know that failover has occurred.
- No Client code required to keep connection operational.
- Clients able to determine
- which Servers are in the redundant set
- the service level of each server
- which Server is currently responsible for the client session
- Client-Server connection information is synchronized across servers
Nothing needed in the Client.
Server Non-Transparent Failover
Client is aware that Server failover has occurred. When a Server fails, the number of actions required by Client depends on the failover mode supported by the Server.
There are four failover modes: Cold, Warm, Hot and HotAndMirrored. Failover for this type of redundancy requires the Client to monitor Server status and to switch to a backup Server if it detects a failure. The failover method tells the Client what it must do when connecting to a Server and when a failure occurs. Cold redundancy requires a Client to reconnect to a backup Server after the initial Server has failed. Warm redundancy allows a Client to connect to multiple Servers, but only one Server will be providing values. In hot redundancy multiple Servers are able to provide data and a Client can connect to multiple Servers for the data.
Client must use failover mode to determine required actions to take when Server fails.
Enables backup clients to monitor the active client’s session with the server. Backup clients are able to instruct the server to transfer subscriptions if the active client has failed.
- Client failover requires server capabilities.
- Possible to achieve no data loss upon recovery from client failover
Multiple Network Paths
Enables access to the same Server via different network paths.
- If transparent, then handled by the network infrastructure
- If non-transparent, then a Server exposes different endpoints for each path.