Scalable Publish/Subscribe Broker Network Using Active Load Balancing
First Claim
1. A method for balancing network workload in a publish/subscribe service network, the network comprising a plurality of nodes that utilize a protocol where the plurality of nodes and publish/subscribe messages are mapped by the protocol onto a unified one-dimensional overlay key space, where each node is assigned an ID and range of the key space and where each node maintains a finger table for overlay routing between the plurality of nodes, and where event and subscription messages are hashed onto the key space based on event attributes contained in the messages, such that an aggregation tree is formed between a root node and child nodes among the plurality of nodes in the aggregation tree associated with an attribute A that send messages that are aggregated at the root node, comprising:
- receiving aggregated messages at the root node for processing of the aggregated messages; and
upon detecting excessive processing of the aggregated messages at the root node, rebalancing network workload by pushing a portion of the processing of the aggregated messages at the root node back to a child node in the aggregation tree.
1 Assignment
0 Petitions
Accused Products
Abstract
A scalable broker publish/subscribe broker network using a suite of active load balancing schemes is disclosed. In a Distributed Hashing Table (DHT) network, a workload management mechanism, consisting of two load balancing schemes on events and subscriptions respectively and one load-balancing scheduling scheme, is implemented over an aggregation tree rooted on a data sink when the data has a uniform distribution over all nodes in the network. An active load balancing method and one of two alternative DHT node joining/leaving schemes are employed to achieve the uniform traffic distribution for any potential aggregation tree and any potential input traffic distribution in the network.
70 Citations
16 Claims
-
1. A method for balancing network workload in a publish/subscribe service network, the network comprising a plurality of nodes that utilize a protocol where the plurality of nodes and publish/subscribe messages are mapped by the protocol onto a unified one-dimensional overlay key space, where each node is assigned an ID and range of the key space and where each node maintains a finger table for overlay routing between the plurality of nodes, and where event and subscription messages are hashed onto the key space based on event attributes contained in the messages, such that an aggregation tree is formed between a root node and child nodes among the plurality of nodes in the aggregation tree associated with an attribute A that send messages that are aggregated at the root node, comprising:
-
receiving aggregated messages at the root node for processing of the aggregated messages; and
upon detecting excessive processing of the aggregated messages at the root node, rebalancing network workload by pushing a portion of the processing of the aggregated messages at the root node back to a child node in the aggregation tree. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
Specification