Subscription Hierarchy for Presence Server Load Distribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional presence systems face high messaging loads on presence servers due to factors like request rates, number of presentities, filter document sizes, and composition policies, leading to inefficiencies and increased costs, with existing solutions like load balancing being cost-ineffective and non-scalable.
Innovation Solution
Implementing autonomic subscription hierarchies within presence systems, where presence servers and subscribers dynamically create and manage hierarchies, redistributing load and allowing configurable policies for subscription management, with presence servers maintaining bookkeeping and subscribers handling notifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If load balancing with multiple physical servers is used to handle presence server load, then the system can distribute messaging load, but the cost increases and scalability is limited
Solution Approach 1:
The patent segments the subscription management functionality by introducing hierarchical subscription agents that operate at different levels. Instead of a single centralized presence server handling all subscriptions, the system divides subscription management into multiple hierarchical levels, where each level handles a portion of the subscription load, thereby distributing the messaging load without requiring proportional increases in physical server infrastructure.
Solution Approach 2:
The patent introduces a hierarchical dimension to subscription management by organizing subscription agents in multiple levels. This hierarchical structure adds a dimensional organization to the subscription handling process, allowing the system to manage load more efficiently by routing subscriptions through appropriate hierarchical levels rather than relying solely on horizontal scaling of physical servers.
2Adaptability or versatility
If the number of watchers for each presentity increases, then more presence information can be distributed, but the number of SUBSCRIBE and NOTIFY messages increases server load
Solution Approach 1:
The patent segments the watcher subscription management by introducing hierarchical subscription agents that group and manage subscriptions in a tree-like structure. This segmentation allows the system to handle a larger number of watchers by organizing them into hierarchical groups, where each subscription agent manages a subset of watchers, thereby reducing the processing burden on individual servers even as the total number of watchers increases.
3Measurement precision
If filter document size and number of rules increase, then more precise presence information filtering is achieved, but notification processing time increases
Solution Approach 1:
The patent applies preliminary action by having hierarchical subscription agents pre-process and evaluate filter rules before notifications are generated. The subscription agents at higher hierarchical levels perform initial filtering and rule evaluation, preparing the subscription data in advance so that when notifications need to be processed, the filtering has already been partially completed, thereby reducing the real-time processing time while maintaining filtering accuracy.
4Loss of energy
If partial notification mechanism is used to send only changes, then bandwidth is conserved, but the server must compare updated documents with old documents
Solution Approach 1:
The patent extracts the document comparison and change detection functionality from the main presence server and assigns it to hierarchical subscription agents. By taking out this processing task and distributing it to specialized agents at appropriate hierarchical levels, the system can implement partial notifications with reduced bandwidth consumption while the complexity of document comparison is handled by distributed agents rather than concentrating it on the main server.
Data Source
AI summary
A method, an apparatus and an article of manufacture for managing a subscription hierarchy in a presence system. The method includes receiving a presence information request within a presence server, wherein the request is one of a subscription request and an un-subscribe request, determining if the request corresponds to an existing subscriber in the presence server, and if so, sending a redirect message to the existing subscriber, and if not, processing the request within the presence server, and enhancing functionality of subscribers to accept and handle subscription and un-subscribe requests.


