Why reverse connect needs 2 socket?|OPC UA Standard|Forum|OPC Foundation

Avatar
Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
sp_Feed sp_PrintTopic sp_TopicIcon
Why reverse connect needs 2 socket?
Avatar
Alexander Sobetskiy
Member
Members
Forum Posts: 6
Member Since:
07/15/2024
sp_UserOfflineSmall Offline
1
10/09/2025 - 19:04
sp_Permalink sp_Print

UA Part 6: Mappings - 7.1.2.3 Hello Message

Servers shall maintain at least one open socket without an active Session with each Client it is configured to connect to.

Once a SecureChannel is established, the Server shall create a new socket if there is not already one without an active SecureChannel.

If the SecureChannel is closed, the Server shall create a new socket if there is not already one without an active SecureChannel.

Why does the server need second socket without an active secure channel?

Wen connection is lost, the client closes the first socket, then switches to the second but if connection is still lost the client can close the second socket and wait for the reverse hello message on a new socket.

When connection is back again the server has no clue that 2 sockets has been closed cause it is not a tcp event.

Avatar
Randy Armstrong
Admin
Forum Posts: 1656
Member Since:
05/30/2017
sp_UserOfflineSmall Offline
2
10/10/2025 - 13:36
sp_Permalink sp_Print

When using reverse connect, a client can only establish a session if the server has created a socket.

This is a chicken and egg problem where a client would like to connect to the server but has to wait for it to create a socket and the client has no way to tell the server to create socket.

So the server always has one idle socket just in case a client needs to connect.

Forum Timezone: America/Phoenix
Most Users Ever Online: 510
Currently Online:
Guest(s) 26
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Forum Stats:
Groups: 2
Forums: 10
Topics: 1508
Posts: 5103