Avatar

Please consider registering
guest

sp_LogInOut Log In sp_Registration Register

Register | Lost password?
Advanced Search

— Forum Scope —




— Match —





— Forum Options —





Minimum search word length is 3 characters - maximum search word length is 84 characters

sp_Feed Topic RSS sp_TopicIcon
Is it possible for a client in reverse connect mode to accept multiple server connections?
May 17, 2019
21:45, EEST
Avatar
THX
Member
Members
Forum Posts: 3
Member Since:
May 17, 2019
sp_UserOfflineSmall Offline

Hi,

can someone please tell me if a client in reverse mode (listening like a server) is able to accept multiple incoming connections at the same time? If this is not possible, how can we support hundrets of opc-ua servers located behind firewalls? Will starting a “master-client” that will accept reverse connections and creates “child-clients” for each server be an option? I didn’t see a class or method that accepts a connection or socket object in order to establish a secure channel.

Thank’s in advance!
Best regards,
Thomas

May 20, 2019
10:27, EEST
Avatar
Bjarne Boström
Moderator
Moderators
Forum Posts: 983
Member Since:
April 3, 2012
sp_UserOfflineSmall Offline

Hi,

Currently not possible. We could maybe add that in the future, if needed. I wont go into details here, but the implementation could be non-trivial due to legacy of the stack layer, so it could take some time. How important would this be for you?

Typically in these scenarios people having multiple servers have used https://www.prosysopc.com/products/opc-ua-gateway/ to aggregate the servers through a single server thus requiring opening of a single port in the server side.

P.S.
Do all these servers support reverse connections?

May 21, 2019
7:37, EEST
Avatar
THX
Member
Members
Forum Posts: 3
Member Since:
May 17, 2019
sp_UserOfflineSmall Offline

Hi Bjarne,

Thank you for your answer. At the moment I am on a fact-finding mission. A customer of ours wants to run hundreds to thousands of machines that should be able to put their telemetry data into a cloud-based system. Since the customer also wants to run an industry standard on his machines they came up with OPC-UA.
I do not have any experience with OPC-UA but after reading parts of the specification and after your answer I think OPC-UA might not be the best fit for this use case.

Thomas

May 21, 2019
7:57, EEST
Avatar
THX
Member
Members
Forum Posts: 3
Member Since:
May 17, 2019
sp_UserOfflineSmall Offline

Bjarne,

This might be too technical but in a reverse connect scenario a tcp service (that needs to be written) has to listen for incoming connections. Whenever a OPC server connects this service could create an OPC client and inject the socket. After that the communication between OPC server and client could flow as designed.

Did I miss something.

Thanks,
Thomas

May 21, 2019
10:15, EEST
Avatar
Bjarne Boström
Moderator
Moderators
Forum Posts: 983
Member Since:
April 3, 2012
sp_UserOfflineSmall Offline

Note that the reverse connections were added in UA 1.04, so it is quite new thing. Usually previously we have suggested changing the control flow such as that the UA Server would be in the cloud and UA Client would be used behind firewalls. We did so in the case: https://www.prosysopc.com/cases/kruger/. It might make sense here as well.

Your description of the reverse connect scenario is correct (though simplified). That is basically how it goes even now for the reverse connections that were added in SDK version 4.0.0, with the limitation that we can only accept one incoming connection per UaClient. We have to do this currently quite deep in the internals due to the current design (UA has more transport protocols than opc.tcp, but that is the only one that can have reverse connections; the design is quite layered). We would probably need to do some “UaClientServer” which would push out UaClients as we get incoming connections. However that could get very confusing with the API so it would need some careful thought. Therefore it is currently not a very high priority, unless someone needs it.

Forum Timezone: Europe/Helsinki

Most Users Ever Online: 518

Currently Online:
27 Guest(s)

Currently Browsing this Page:
1 Guest(s)

Top Posters:

hbrackel: 135

pramanj: 86

Francesco Zambon: 81

rocket science: 77

Ibrahim: 76

Sabari: 62

kapsl: 57

gjevremovic: 49

Xavier: 43

fred: 41

Member Stats:

Guest Posters: 0

Members: 681

Moderators: 16

Admins: 1

Forum Stats:

Groups: 3

Forums: 15

Topics: 1467

Posts: 6261

Newest Members:

graciela2073, sagarchau, elviralangwell4, Donnavek, Eddiefauth, DonaldPooma, fidelduke938316, Jan-Pfizer, DavidROunc, fen.pang@woodside.com

Moderators: Jouni Aro: 1010, Otso Palonen: 32, Tuomas Hiltunen: 5, Pyry: 1, Petri: 0, Bjarne Boström: 983, Heikki Tahvanainen: 402, Jukka Asikainen: 1, moldzh08: 0, Jimmy Ni: 26, Teppo Uimonen: 21, Markus Johansson: 42, Niklas Nurminen: 0, Matti Siponen: 321, Lusetti: 0, Ari-Pekka Soikkeli: 5

Administrators: admin: 1