Understanding Inter-System Publish/Subscribe (ISPS)
- Last UpdatedNov 02, 2023
- 2 minute read
The Inter-System Publish/Subscribe (ISPS) architecture enables subscribers to access data owned and published by other AVEVA Enterprise SCADA systems, with the restriction that only topics published under the other system’s name (as the root topic) are available.
For example, consider a group of two systems named west and north. The subscribers on the west system subscribe to the north.x.y.z topic. When a north publisher publishes on the topic, it is delivered from the north system to the west system through the ISPS communication layer. If a subscriber on the west system attempts to subscribe to the east.x.y.z topic, it would never receive a publication, because no east system exists.
The ISPS communication layer is based on the Transmission Control Protocol (TCP)/Internet Protocol (IP) communications protocol, which is a connection-oriented protocol that guarantees message delivery and order. Connections between systems are established using secure sockets that are authenticated by Active Directory, and all communications are encrypted.
When the AVEVA Enterprise SCADA ISPS Service goes Hot, the Hot PubSub system agent connects to each of the other system’s Hot PubSub system agents. After connecting, it registers itself as the local persistence store for the other system’s topic space using the other system’s name as the register persistence store topic. The agent then assumes responsibility for forwarding subscriptions to, and relaying publications from, the connected agents on the other systems.
When the ISPS service fails over, the formerly Hot service de-registers itself as the local persistence store for all other systems, and then the newly Hot service registers itself as the new persistence store for all other systems. This behavior ensures that only one publisher exists on the local system for publications from the remote system.
When a subscriber subscribes to a topic from another system, the connected PubSub system agents forward the subscription requests and return the published responses between the two systems.
The following diagram outlines an example of subscribing to a topic from another system.
