The OPC UA server in the process gateway shall implement a maximum limit of the number of subscriptions per session that an OPC UA client is able to create
Summary
The OPC UA server in the process gateway does not limit the number of subscriptions per session that an OPC UA client can create. A malfunctioning or malicious OPC UA client may create a high number of subscriptions, exhausting the resources of the system running the zenon runtime and OPC UA server in the process gateway
Description
The OPC UA server in the process gateway does not limit the number of subscriptions per session that an OPC UA client can create. A malfunctioning or malicious OPC UA client may create a high number of subscriptions, exhausting the resources of the system running the zenon runtime and OPC UA server in the process gateway
Solution
A limit has been implemented in the OPC UA server in the process gateway for the maximum number of subscriptions that an OPC UA client can create per session. By default, an OPC UA client can create 10 subscriptions per session. This limit can be decreased to minimum 1 subscription and increased to at most 100 subscriptions per session. When an OPC UA client attempts to create a subscription in a session, exceeding the maximum number of subscriptions, the OPC UA server replies with an error 0x80770000 BadTooManySubscriptions The limit can be configured through an entry in the ini file for the process gateway: [OPCUA] MAX_COUNT_OF_SUBSCRIPTIONS_PER_SESSION=
Information
Under normal circumstances an OPC UA client would only create a single or a few subscriptions per session. The OPC UA specification for the UA Server standard profile requires that a minimum of 5 subscriptions are supported by at least half the amount of max. sessions, totalling 225 subscriptions. This minimum requirement is met by the OPC UA server in the process gateway through multiple sessions per client and mulitple client connections (up to a maximum of 100)
Issue Number: 37354
Fixed on Date: 11.11.2016
Versions: 7.50 0 BUILD 33300