The following tables describe ConformanceUnitsfor the Servicesspecified in OPC 10000-4. The tables correlate with the Service Sets.

A single ConformanceUnitcan reference several Services(e.g. CreateSession, ActivateSession and CloseSession) but can also refer to individual aspects of Services(e.g. the use of ActivateSession to impersonate a new user).

Each table includes a listing of the Profile Categoryto which a ConformanceUnitbelongs, the title and description of the ConformanceUnit. In some cases, a ConformanceUnitwill be derived from another ConformanceUnit. This parent unit will then be specified in the description of each derived unit. In such cases the derived units inherit all of the tests of its parent plus one or more additional TestCases. These TestCases can only further restrict the existing TestCases. An example would be one in which the number of connections is tested, where the TestCase of the parent required at least one connection and the derived ConformanceUnitwould require a TestCasefor at least five connections.

The Discovery ServiceSet is composed of multiple ConformanceUnits(see Table 3). All Serversprovide some aspects of this functionality; see Profilescategorized as Server Profilesfor details. Clientsmay support some aspects of this functionality; see Profilescategorized as Client Profilesfor details.

Table 3– Discovery Services

Category

Title

Description

Server

DiscoveryGet Endpoints

Support the GetEndpoints Serviceto obtain all Endpoints of the Server.

This includes filtering based on Profiles.

Server

DiscoveryGet Endpoints SessionLess

Support at least one endpoint for issueing SessionLess Services. Support obtaining such endpoints by accepting the Transport URI as a filter to the GetEndpoints Service with the query string "SL" appended to the Transport URI. E.g. "http://opcfoundation.org/UA-Profile/Transport/https-uajson?SL"

Server

DiscoveryFind ServersSelf

Support the FindServers Serviceonly for itself.

Server

DiscoveryRegister

Call the RegisterServer Serviceto register itself (OPC UA Server) with an external Discovery Servicevia a secure channel with a SecurityMode other than NONE.

Server

DiscoveryRegister2

Call the RegisterServer2 Serviceto register with an external Discovery Servicevia a Secure Channel with a SecurityMode other than "None". This includes passing a list of short capability identifiers.

The identifiers and their use are specified in Part 12.

Server

Discovery ServerAnnouncement using mDNS

Provide mDNS functionality to announce a Serverwith its capabilities. The capability identifiers and the use of mDNS records for the purpose of OPC UA Discoveryis specified in Part 12.

Note that this functionality is only required for Serversthat do not register with an LDS.

The capability identifiers and their use in mDNS records are specified in Part 12.

Server

DiscoveryConfiguration

Allow configuration of the Discovery ServerURL where the Serverwill register itself.

Allow complete disabling of registration with a Discovery Server.

Client

Discovery ClientFind ServersBasic

Uses the FindServers Serviceto obtain all Serversinstalled on a given platform.

Client

Discovery ClientFind Serverswith URI

Use FindServers Serviceto obtain URLs for specific ServerURIs.

Client

Discovery ClientFind ServersDynamic

Detect new Serversafter an initial FindServers Servicecall.

Client

Discovery ClientFind Serverson Network

Support one of the options to locate Serverson the network.

Client

Discovery ClientFind Serverson Network using LDS-ME

Use FindServersOnNetwork Serviceto obtain URLs for specific ServerURIs. Note that this Serviceis available via the Local Discovery Serverwith multicast extension (LDS-ME).

Client

Discovery ClientFind Serverson Network using mDNS

Use mDNS based Service Discoveryto locate Serverson the same multicast network. The contents of mDNS records for OPC UA Discoveryare described in Part 12.

Note that this functionality is only required for Clientswhen there is no Local Discovery Serverwith multicast extension (LDS-ME).

The capability identifiers and their use in mDNS records are specified in Part 12.

Client

Discovery ClientFind Serversin GDS

Use the QueryServers Methodon the GDS Directory Objectto locate Serversthat meet filter criteria specified in the request. This Methodis specified in Part 12.

Client

Discovery ClientFind Applications in GDS

Use the QueryApplications Methodon the GDS Directory Objectto locate Applications that meet filter criteria specified in the request. This Methodis specified in Part 12.

Client

Discovery ClientGet Endpoints Basic

Uses the GetEndpoints Serviceto obtain all Endpoints for a given ServerURI.

Client

Discovery ClientGet Endpoints SessionLess

Uses the GetEndpoints Servicewith a filter to obtain Endpoints that can be used for SessionLess Serviceinvocation. The filter is the Transport URI extended with the query string "SL". E.g. http://opcfoundation.org/UA-Profile/Transport/https-uajson?SL.

Client

Discovery ClientGet Endpoints Dynamic

Detect changes to the Endpoints after an initial GetEndpoints Servicecall.

Client

Discovery ClientConfigure Endpoint

Allow specification of an Endpoint without going through the Discovery ServiceSet.

The Session ServiceSet is composed of multiple ConformanceUnits(see Table 4). The CreateSession, ActivateSession, and CloseSession services are supported as a single unit. All Serversand Clientsprovide this functionality.

Table 4– Session Services

Category

Title

Description

Server

SessionGeneral ServiceBehaviour

Implement basic Servicebehaviour. This includes in particular:

– checking the authentication token

– returning the requestHandle in responses

– returning available diagnostic information as requested with the 'returnDiagnostics' parameter

– respecting a timeoutHint

Server

SessionBase

Support the Session ServiceSet (CreateSession, ActivateSession, CloseSession) except the use of ActivateSession to change the Sessionuser. This includes correct handling of all parameters that are provided.

Note that for the CreateSession and ActivateSession services, if the SecurityMode = None then:

1) The Application Certificateand Nonce are optional.

2) The signatures are null/empty.

The details of this are described in Part 4.

Server

SessionChange User

Support the use of ActivateSession to change the Sessionuser.

Server

SessionCancel

Support the Cancel Serviceto cancel outstanding requests.

Server

SessionMinimum 1

Support minimum 1 Session(total).

Server

SessionMinimum 2 Parallel

Support minimum 2 parallel Sessions (total for all Clients).

Server

SessionMinimum 50 Parallel

Support minimum 50 parallel Sessions (total for all Clients).

Server

Session Sessionless Invocation

Defines the support of the SessionlessInvoke Service defined in UA Part 4 to process any of the Services (like Read/Write, Browse, or Call) that are designated for Session-less invocation.

Client

Session ClientGeneral ServiceBehaviour

Implement basic Servicebehaviour. This includes in particular:

– including the proper authentication token of the Session

– creating a requestHandle if needed

– requesting diagnostic information with the 'returnDiagnostics' parameter

– evaluate the serviceResult and operational results

Client

Session ClientBase

Use the Session ServiceSet (CreateSession, ActivateSession, and CloseSession) except the use of ActivateSession to change the Sessionuser. This includes correct handling of all parameters that are provided

Note that for the CreateSession and ActivateSession services, if the SecurityMode = None then:

1) The Application Certificateand Nonce are optional.

2) The signatures are null/empty.

Client

Session ClientMultiple Connections

Support unlimited connections (client side) with multiple Servers. Any limit on numbers of connections is from server side. May have a memory based limit, but not a software constraint limit.

Client

Session ClientRenew NodeIds

This ConformanceUnitapplies to Clientsthat allow persisting NodeIds.

Verify that the Namespace Table has not changed for NodeIds that the Clienthas persisted and is going to re-use beyond a Sessionlifetime. If changes occurred the Clienthas to recalculate the Namespace Indices of the respective NodeIds.

Client

Session ClientImpersonate

Uses ActivateSession to change the Session user (impersonation).

Client

Session ClientKeepAlive

Make periodic requests to keep the Sessionalive.

Client

Session ClientDetect Shutdown

Read or monitor the ServerStatus/State Variable to recognize a potential shutdown of the Server and clean up resources.

Client

Session ClientCancel

Use the Cancel Serviceto cancel outstanding requests.

Client

Session ClientAuto Reconnect

Automatic Clientreconnect including:

– ActivateSession with new SecureChannel if SecureChannel is no longer valid but Sessionis still valid

– Creation of a new Sessiononly if Sessionis no longer valid

Client

Session ClientSingle Session

The Clientshall interoperate with Serversthat only support one Session.

Client

Session ClientSessionLess ServiceCalls

Defines the use of the SessionlessInvoke Servicedefined in UA Part 4 to request one of the Services(like Read or Browse) that are allowed for sessionless invocation. UA Part 6 specifies which transports may be used and how.

The NodeManagement ServiceSet is composed of multiple ConformanceUnits(see Table 5). Serversmay provide some aspects of this functionality; see Profilescategorized as Server Profilesfor details. Clientsmay support some aspects of this functionality; see Profilescategorized as Client Profilesfor details.

Table 5– Node Management Services

Category

Title

Description

Server

NodeManagement Add Node

Support the AddNodes Serviceto add one or more Nodesinto the OPC UA AddressSpace.

Server

NodeManagement Delete Node

Support the DeleteNodes Serviceto delete one or more Nodesfrom the OPC UA AddressSpace.

Server

NodeManagement Add Ref

Support the AddReferences Serviceto add one or more Referencesto one or more Nodesin the OPC UA AddressSpace.

Server

NodeManagement Delete Ref

Support the DeleteReferences Serviceto delete one or more Referencesof a Nodein the OPC UA AddressSpace.

Client

NodeManagement Client

Uses NodeManagement Servicesto add or delete Nodesand to add or delete Referencesin Server's OPC UA AddressSpace.

The View ServiceSet is composed of a multiple ConformanceUnits(see Table 6). All Serverssupport some aspects of this conformance group. Clientsmay support some aspects of this functionality; see Profilescategorized as Client Profilesfor details.

Table 6– View Services

Category

Title

Description

Server

View Basic

Support the View ServiceSet (Browse, BrowseNext).

Server

View TranslateBrowsePath

Support TranslateBrowsePathsToNodeIds Service.

Server

View RegisterNodes

Support the RegisterNodes and UnregisterNodes Servicesas a way to optimize access to repeatedly used Nodesin the Server's OPC UA AddressSpace.

Server

View Minimum Continuation Point 01

Support minimum 1 continuation point per Session.

Server

View Minimum Continuation Point 05

Support minimum 5 continuation points per Session.

This number has to be supported for at least half of the minimum required sessions.

Client

View ClientBasic Browse

Uses Browse and BrowseNext Servicesto navigate through the Server's OPC UA AddressSpace. Make use of the referenceTypeId and the nodeClassMask to specify the needed References.

Client

View ClientRemote NodesBrowse

The Clientcan browse to nodes that have an extended NodeID that reference a Serverdifferent than the originating Server. This includes automatic connection to the remote Server. It is acceptable that the Serverconfiguration information be pre-configured on the Clientand / or that the user is prompted to connect.

Client

View ClientBasic ResultSet Filtering

Makes use of the resultMask parameter to optimize the result set to be returned by the Server.

Client

View ClientTranslateBrowsePath

Uses the TranslateBrowsePathsToNodeIds Serviceto identify the NodeIds for Nodeswhere a starting Nodeand a BrowsePath is known. Makes use of bulk operations rather than multiple calls whenever possible.

Client

View ClientRemote NodesTranslate Browse

The Clientcan translate browse paths that include nodes with extended NodeID that reference a Serverdifferent than the originating Serverand return them as part of the TranslateBrowsePathsToNodeIds Service. It is acceptable that the Serverconfiguration information be pre-configured on the Client.

Client

View ClientRegisterNodes

Uses the RegisterNodes Serviceto optimize access for Nodesthat are used repeatedly. Use UnregisterNodes when Nodesare not used anymore.

The Attribute ServiceSet is composed of multiple ConformanceUnits(see Table 7). The majority of the Attributeservice set is a core functionality of OPC UA and as such is supported by most Servers. Most Clientswill also support some aspects of the Attribute ServiceSet.

Table 7– Attribute Services

Category

Title

Description

Server

AttributeRead

Supports the Read Serviceto read one or more Attributesof one or more Nodes. This includes support of the IndexRange parameter to read a single element or a range of elements when the Attributevalue is an array.

Server

AttributeRead Complex

Supports reading and encoding Values with structured DataTypes.

Server

AttributeWrite Values

Supports writing to values to one or more Attributesof one or more Nodes.

Server

AttributeWrite Complex

Supports writing and decoding Values with structured DataTypes.

Server

AttributeWrite StatusCode & Timestamp

Supports writing of StatusCode and Timestamps along with the Value.

Server

AttributeWrite Index

Supports the IndexRange to write a single element or a range of elements when the Attributevalue is an array and partial updates is allowed for this array.

Server

AttributeAlternate Encoding

Supports alternate Data Encoding when reading value Attributes.

By default, every Serverhas to support the Data Encoding of the currently used Stack Profile(i.e. binary with UA Binary Encoding and XML with XML Encoding). This ConformanceUnit- when supported - specifies that the other Data Encoding is supported in addition.

Server

AttributeHistorical Read

Supports the HistoryRead Service. The details of what aspects of this service are used are listed in additional ConformanceUnits, but at least one of ReadRaw, ReadProcessed, ReadModified, ReadAtTime or ReadEvents must be supported.

Server

AttributeHistorical Update

Supports the HistoryUpdate service. The details of the supported features of this service are described by additional ConformanceUnits, but at least one of the following must be supported: InsertData, InsertEvents, ReplaceData, ReplaceEvents, UpdateData, UpdateEvents, DeleteData, DeleteEvents or DeleteAtTime.

Client

Attribute ClientRead Base

Use the Read Serviceto read one or more Attributesof one or more Nodes. This includes use of an IndexRange to select a single element or a range of elements when the Attributevalue is an array.

Clientsshall use bulk operations whenever possible to reduce the number of Serviceinvocations.

Client

Attribute ClientRemote Nodes AttributeAccess

The Clientcan retrieve attributes of nodes that have an extended NodeID that reference a Serverdifferent than the originating Server. This requires a connection to the remote Serverfor access (not necessarily displayed as a connection). It is acceptable that the Serverconfiguration information be pre-configured on the Client.

Client

Attribute ClientRead with proper Encoding

This ConformanceUnitrefers to the ability of a Clientto discover the available encodings and choose a specific one when calling the Read Service.

Client

Attribute ClientRead Complex

Read and decode Values with structured DataTypes.

Client

Attribute ClientWrite Base

Use the Write Serviceto write values to one or more Attributesof one or more Nodes. This includes use of an IndexRange to select a single element or a range of elements when the Attributevalue is an array.

Clientsshall use bulk operations whenever possible to reduce the number of Serviceinvocations.

Client

Attribute ClientWrite Complex

Write and Encode Values with structured DataTypes.

Client

Attribute ClientWrite Quality & Timestamp

Use the Write Serviceto also write StatusCode and/or Timestamps along with a Value.

Client

Attribute ClientHistorical Read

The Clientmakes use of the HistoryRead service. The details of which aspect of this service are used are provided by additional ConformanceUnits, but at least one or more of the following is used ReadRaw, ReadAtTime, ReadProcessed, ReadModified or ReadEvents.

Client

Attribute ClientHistorical Updates

The Clientmakes use of the HistoryUpdate service. The details of this usage are provided by additional ConformanceUnits, but at least one or more of the following must be provided InsertData, InsertEvents, ReplaceData, ReplaceEvents, UpdateData, UpdateEvents, DeleteData or DeleteEvents or DeleteAtTime.

The Method ServiceSet is composed of ConformanceUnits (see Table 8). The primary ConformanceUnits provide support for the call functionality. Serversmay provide some aspects of this functionality; see Profilescategorized as Server Profilesfor details. Clientsmay support some aspects of this functionality; see Profilescategorized as Client Profilesfor details.

Table 8– Method Services

Category

Title

Description

Server

MethodCall

Support the Call Serviceto call (invoke) a Methodwhich includes support for MethodParameters.

Client

Method ClientCall

Use the Call Serviceto call one or several Methods.

The MonitoredItem ServiceSet is composed of multiple ConformanceUnits(see Table 9). Serversmay provide some aspects of this functionality; see Profilescategorized as Server Profilesfor details. Clientsmay support some aspects of this functionality; see Profilescategorized as Client Profilesfor details.

Table 9– Monitored Item Services

Category

Title

Description

Server

Monitor Basic

Support the following MonitoredItem Services: CreateMonitoredItems, ModifyMonitoredItems, DeleteMonitoredItems and SetMonitoringMode.

Server

Monitor Value Change

Support creation of MonitoredItemsfor Attributevalue changes. This includes support of the IndexRange to select a single element or a range of elements when the Attributevalue is an array.

Server

Monitor Complex Value

Supports monitoring and encoding Values with structured DataTypes.

Server

Monitored Items Deadband Filter

Supports an absolute Deadband filter as a DataChangeFilter for numeric data types.

Server

Monitor Aggregate Filter

Support for Aggregate filters for MonitoredItems. The result of this ConformanceUnitincludes a list of Aggregates that are supported as part of the Profile Certificate.

Server

Monitor Alternate Encoding

Support alternate encoding when monitoring value Attributes.

By default, every Serverhas to support the encoding of the currently used Stack Profile(i.e. binary with UA Binary Encoding and XML with XML Encoding). This ConformanceUnit- when supported - specifies that the other encoding is supported in addition.

Server

Monitor Items 2

Support at least 2 MonitoredItemsper Subscriptionwhere the size of each MonitoredItemis at least equal to size of Double.

Server

Monitor Items 10

Support at least 10 MonitoredItemsper Subscriptionwhere the size of each MonitoredItemis at least equal to size of Double.

Server

Monitor Items 100

Support at least 100 MonitoredItemsper Subscription.

This number has to be supported for at least half of the required Subscriptions for half of the required Sessions.

Server

Monitor Items 500

Support at least 500 MonitoredItemsper Subscription.

This number has to be supported for at least half of the required Subscriptions for half of the required Sessions.

Server

Monitor QueueSize_1

This ConformanceUnitdoes not require queuing when multiple value changes occur during a "publish period".

I.e. the latest change will be sent in the Notification.

Server

Monitor MinQueueSize_02

Support at least 2 queue entries for MonitoredItems.

Serversoften will adapt the queue size to the number of currently MonitoredItems. However, it is expected that Serverssupport this minimum queue size for at least one third of the supported MonitoredItems.

Server

Monitor MinQueueSize_05

Support at least 5 queue entries for MonitoredItems.

Serversoften will adapt the queue size to the number of currently MonitoredItems. However, it is expected that Serverssupport this minimum queue size for at least one third of the supported MonitoredItems.

Server

Monitor QueueSize_ServerMax

This ConformanceUnitis for events. When the Clientrequests queuesize=MAXUInt32 the Serveris to return the maximum queue size that it can support for event notifications as the revisedQueueSize.

Server

Monitor Triggering

Support the SetTriggering Serviceto create and/or delete triggering links for a triggering item.

Server

Monitor Events

Support creation of MonitoredItemsfor an "EventNotifier Attribute" for the purpose of Event Notification. The subscription includes supporting a filter that includes SimpleAttribute Operands and a select list of Operators. The list of Operators includes: Equals, IsNull, GreaterThan, LessThan, GreaterThanorEqual, LessThatorEqual, Like, Not, Between, InList, And, Or, Cast, BitwiseAnd, BitwiseOr.

Server

Monitor Complex EventFilter

Support for the 'TypeOf' complex Eventfilter operator.

Client

Monitor ClientValue Change

Use the MonitoredItem ServiceSet to register items for changes in Attributevalue.

Use CreateMonitoredItems to register the Node/Attributetuple. Set proper sampling interval, Deadband filter and queuing mode.

Use disabling / enabling instead of deleting and re-creating a MonitoredItem.

Use bulk operations rather than individual service requests to reduce communication overhead.

Client

Monitor ClientComplex Value

Monitor and decode Values with structured DataTypes.

Client

Monitor ClientDeadband Filter

Uses Absolute Deadband filters for subscriptions.

Client

Monitor Clientby Index

Use the IndexRange to select a single element or a range of elements when the Attributevalue is an array.

Client

Monitor ClientAggregate Filter

Uses Aggregate filters for Subscriptions.

Client

Monitor ClientEvents

Use the MonitoredItem ServiceSet to create MonitoredItemsfor Eventnotifications.

Client

Monitor Client EventFilter

Use the Eventfilter when calling CreateMonitoredItems to filter the desired Events and to select the columns to be provided for each Event Notification.

Client

Monitor ClientComplex EventFilter

Use of the 'TypeOf' complex Eventfilter operator.

Client

Monitor ClientModify

Use ModifyMonitoredItems Serviceto change the configuration setting.

Use SetMonitoringMode Serviceto disable / enable sampling and / or publishing.

Client

Monitor ClientTrigger

Use the Triggering Model if certain items are to be reported only if some other item triggers.

Use proper monitoring mode for these items.

Use SetTriggering Serviceto link these items to the trigger item.

The Subscription ServiceSet is composed of multiple ConformanceUnits(see Table 10). Serversmay provide some aspects of this functionality; see Profilescategorized as Server Profilesfor details. Clientsmay support some aspects of this functionality; see Profilescategorized as Client Profilesfor details.

Table 10– Subscription Services

Category

Title

Description

Server

SubscriptionBasic

Support the following Subscription Services: CreateSubscription, ModifySubscription, DeleteSubscriptions, Publish, Republish and SetPublishingMode.

Server

SubscriptionMinimum 1

Support at least 1 Subscriptionper Session.

This number has to be supported for all of the minimum required sessions.

Server

SubscriptionMinimum 02

Support at least 2 Subscriptions per Session.

This number has to be supported for at least half of the minimum required sessions.

Server

SubscriptionMinimum 05

Support at least 5 Subscriptions per Session.

This number has to be supported for at least half of the minimum required sessions.

Server

SubscriptionPublish Min 02

Support at least 2 Publish Servicerequests per Session.

This number has to be supported for all of the minimum required sessions. Support of a NotificationMessage retransmission queue is not required; if not available the Republish Servicereturns Bad_MessageNotAvailable.

Server

SubscriptionPublish Min 05

Support at least 5 Publish Servicerequests per Session.

This number has to be supported for at least half of the minimum required sessions. Support, as a minimum, the number of Publish requests per session as the size of the NotificationMessage retransmission queue for Republish.

Server

SubscriptionPublish Min 10

Support at least 10 Publish Servicerequests per Session.

This number has to be supported for at least half of the minimum required sessions. Support, as a minimum, the number of Publish requests per session as the size of the NotificationMessage retransmission queue for Republish.

Server

SubscriptionPublish Discard Policy

Respect the specified policy for discarding Publish Servicerequests. If the maximum number of Publish Servicerequests has been queued and a new Publish Servicerequest arrives, the "oldest" Publish request has to be discarded by returning the proper error.

Server

SubscriptionTransfer

Support TransferSubscriptions Serviceto transfer a Subscriptionfrom one Sessionto another.

Server

SubscriptionDurable

Support setting Subscriptions in durable mode. This mode requires that collected data and events are stored and delivered even if a Clientwas disconnected for a longer time or the Serverwas restarted.

Support one of the “SubscriptionDurable StorageLevel nnn” ConformanceUnits.

Server

SubscriptionDurable StorageLevel Small

Support at least 20 monitored items with a queue size of 10000 for each item and where the size of each MonitoredItemis at least equal to size of Double. This requires storage capacity for 200 thousand values of DataType Double.

Server

SubscriptionDurable StorageLevel Medium

Support at least 100 monitored items with a queue size of 50000 for each item and where the size of each MonitoredItemis at least equal to size of Double. This requires storage capacity for 5 million values of DataType Double.

Server

SubscriptionDurable StorageLevel High

Support at least 2000 monitored items with a queue size of 200000 for each item and where the size of each MonitoredItemis at least equal to size of Double. This requires storage capacity for 400 million values of DataType Double.

Client

Subscription ClientBasic

Use the Subscriptionand MonitoredItem ServiceSet as an efficient means to detect changes of Attributevalues and / or to receive Eventoccurrences.

Set appropriate intervals for publishing, keep alive notifications and total Subscriptionlifetime.

Supply a sufficient number of Publish requests to the Serverso that Notificationscan be sent whenever a publish timer expires.

Acknowledge received Notificationswith subsequent Publish requests.

Client

Subscription ClientFallback

The Clientshall interoperate with Serversthat do not support Subscriptions, or have exhausted Subscriptionlimits, for Monitoring by using Read Service.

Client

Subscription ClientRepublish

Evaluate the sequence number in Notificationsto detect lost Notifications.

Use Republish to request missing Notifications.

Client

Subscription ClientModify

Allow modification of the Subscriptionconfiguration using the ModifySubscription Service.

Client

Subscription ClientTransferSubscriptions

The Clientsupports transferring Subscriptionfrom other Clients. This ConformanceUnitis used as part of redundant Clients.

Client

Subscription ClientMultiple

Use multiple Subscriptions to reduce the payload of individual Notifications.

Client

Subscription ClientPublish Configurable

Send multiple Publish Servicerequests to assure that the Serveris always able to send Notifications.

The number of parallel Publish Servicerequests per Sessionshall be configurable.

Client

Subscription ClientDurable

Use durable Subscriptions.