Publish-Subscribe Broker Subscription Propagation via Spanning Tree
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current publish/subscribe systems face challenges in providing guaranteed in-order, gapless content-based routing while achieving high performance, scalability, and high availability, especially in the presence of dynamic subscription changes and network failures, and they do not efficiently exploit redundancy in overlay networks for timely recovery.
Innovation Solution
A publish/subscribe system with a redundant overlay network that propagates subscriptions and routes messages using a spanning tree topology, where each broker maintains subscription information and uses virtual start times to ensure message delivery is aligned with active subscriptions, allowing for asynchronous operation and efficient load sharing without consensus among routing members.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If subscription information is propagated throughout the system to enable content-based routing and filtering, then message routing accuracy is improved, but the volume of subscription information maintained at each broker grows, adversely affecting system performance
Solution Approach 1:
The patent segments the overlay network into a spanning tree topology with hierarchical levels. Subscription information is propagated selectively along tree edges rather than maintaining complete subscription sets at every broker. Each broker maintains subscription information only for the portion of the tree downstream from its position, dividing the overall subscription management task into manageable segments distributed across the hierarchy.
Solution Approach 2:
The patent introduces a temporal dimension by associating virtual start times with subscriptions. Instead of maintaining all subscription information statically, the system tracks subscriptions dynamically through time, allowing brokers to determine which subscriptions are active at any given moment. This temporal organization enables efficient filtering of outdated subscription data and reduces the amount of information each broker must process.
2Reliability
If redundant overlay network paths are used to provide fault tolerance and high availability, then system reliability is improved, but the complexity of managing multiple paths and ensuring consistent message delivery increases
Solution Approach 1:
The patent inverts the traditional approach to reliable delivery. Instead of requiring consensus or coordination among redundant path members to ensure consistent delivery, the system allows independent parallel delivery along multiple tree paths. The inversion lies in accepting that different paths may deliver messages at different times without requiring synchronization, thereby eliminating the complexity of consensus protocols while maintaining reliability through the redundant tree structure.
Solution Approach 2:
Each broker in the spanning tree independently manages its own subscription information and message forwarding decisions without requiring coordination with other brokers. The hierarchical structure enables each node to autonomously determine which messages to forward based on its position in the tree and the subscriptions it maintains, eliminating the need for complex inter-broker consensus mechanisms.
3Productivity
If subscription aggregation is used to reduce the volume of subscription information, then the amount of information maintained at brokers is reduced, but the ability to provide guaranteed in-order delivery may be compromised
Solution Approach 1:
The patent applies preliminary action by assigning virtual start times to subscriptions in advance and propagating these temporal markers along with subscription information through the spanning tree. This preliminary temporal organization enables brokers to pre-determine the correct delivery order of messages based on subscription start times, ensuring in-order delivery is maintained even as subscription information is aggregated and propagated efficiently through the hierarchical structure.
Data Source
AI summary
The present invention is directed to a publish/subscribe system containing a plurality of brokers, a plurality of subscribers and plurality of brokers including publisher connecting brokers, intermediate brokers and subscriber connecting brokers. Subscriptions are introduced into the system by the subscribers through associated subscription brokers. New subscriptions are aggregated, assigned a virtual start time and propagated through the system toward the publishers. Each broker maintains subscription information in the form of a directed acyclic graph and a broker vector. Messages are published through the system by the publishers through their associated publisher connecting brokers. Each message is assigned a message vector associating subscriptions to that message. The published messages are routed through the brokers toward the subscribers in accordance with comparisons of message brokers and vector brokers conducted at each broker.


