The ConnectionManager uses the information in the ConnectionConfigurationSet to establish all contained Connections. The configuration information required as input to call EstablishConnections on a particular AutomationComponent can be retrieved by following the References starting at each of the AutomationComponents listed in the ConnectionConfigurationSet.
The ConnectionManager iterates through the AutomationComponentConfigurations. The ConnectionManager establishes a secure Session based on the information contained in the ServerAddress (see 13.3.2) for each AutomationComponent. The ConnectionManager must resolve all PortableNodeIdentifiers contained in the configuration information (see 13.3.3).
If a PubSubCommunicationConfigurationModel was generated by the engineering tool generating the ConnectionConfigurationSet, the ConnectionManager must resolve the NodeIds contained in it (see 184.108.40.206). The ConnectionManager must ensure that the PubSubCommunicationFlowConfigurations and SubscriberConfigurations are reflected in the PubSubCommunicationModelConfiguration.
If the PubSubCommunicationConfigurationModel was not supplied by the engineering tool, the ConnectionManager must create one based on the information contained in the PubSubCommunicationFlowConfigurations.
- which is targeted for the AutomationComponent (PublishedDataSets, Connections, SubscribedDataSets, ConfigurationProperties and defaultSecurityKeyServices), illustrated in Figure E.6 as red boxes with straight lines,
- which is targeted for the SKS (SecurityGroups, and PubSubKeyPushTargets), illustrated in Figure E.6 as green boxes with dashed lines,
- and information which is ignored, illustrated in Figure E.6 as grey boxes with dashed double dotted lines (see CloseAndUpdate in OPC 10000-14).
The ConnectionManager establishes all Connections by calling EstablishConnections on each AutomationComponent (see 220.127.116.11). This includes the communication model information targeted for the AutomationComponent (i.e., SecurityGroups and PubSubKeyPushTargets are omitted). If using PubSub, a specific sequence of calls may be required (see E.2.1).