Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The fact that communication between the OPC UA server and the OPC UA client can now be encrypted is a feature that also has disadvantages.

This affects establishing connections as well as power requirements during operation.

It was tested with a weaker device – the Raspberry Pi 3 – in which the results can be seen more clearly.

 

UaExpert was used as the OPC UA client.

The measurements were performed manually and the variables changed their value in cycles (worst case scenario).

Establishing communication

When creating a server certificate for a CODESYS controller, you can determine the length of the encryption:

Image Added

Info

A temporal difference can already be noticed when the certificate is created.



Depending on the length of the key, the following times may result when establishing communication:


Variable count / Key lengthunencrypted204830724096
1000 variables~ 1 Sek.~ 6 Sek.~ 16 Sek.~ 25 Sek.
2000 variables ~ 2 Sek.~ 8 Sek~ 18 Sek.~ 26 Sek.



Note

Depending on the client, it may not be possible to establish a connection to the controller.
The "ConnectionTimeout" in UaExpert has to be edited (default setting: 10 seconds):

Image Added



Warning

The device is running at full capacity when the connection is established. => CPU load: ~ 100%

Image Added

Info

To illustrate how strongly the influence depends on the device, here is a connection from an OPC UA client to a CODESYS Control Win V3.
With 1000 variables and a key length of 3072 bits, this takes approximately 1 second:

Image Added


Normal operation

Even during normal operation, the encryption requires a little more computing power, as the following table shows:

Variable count / Key lengthunencrypted204830724096
1000 variables~ 23 %~25 %~ 25 %~ 25 %
2000 variables~ 35 %~ 39 %~ 40 %~ 40 %