IPC Routing Behavior
The routing function that occurs within a multi-point session is only used to route an outgoing message from the application to peer applications, based on the subscriptions of the peer applications. A multi-point session does not route between peer applications. For example, in the figure Applications Communicating Through an IPC Multi-point Session, the multi-point session used by Application A cannot route a message received from Application B to Applications C or D. If Application B wants to communicate to Applications C or D over IPC, a direct channel must be established between those applications.
If a message is sent without a topic, there is no topic to match subscriptions against. Therefore, it is assumed that all peer applications want the message, and it is sent to all of them. This is a fundamental difference between the IPC model and the service that an application receives by connecting to a Solace PubSub+ event broker.
Another difference is that when an application connects to an event broker, it can then publish messages to and receive messages from any other application connected to the same Message VPN. With IPC, an application can only publish messages to and receive messages from other applications to which it has a direct connection. Therefore, in a scenario where every application is required to publish messages to and receive messages from every other application over IPC, a full mesh of connections must be established among the applications. This scenario is shown in the following figure.
IPC Routing Connections