Timer Affinity in Session-Based Server Deployment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current telecommunications infrastructure faces challenges in optimizing the processing of time-sensitive telephony protocols, leading to high latency and performance issues, especially in distributed and scalable VoIP deployments, due to the rigidity of existing IT and network infrastructures.

Innovation Solution

Implementing a SIP server with a two-tier architecture, where the engine tier processes communications with minimal latency and maintains a near-cache for state information, and the state tier handles state management, while providing timer affinity to ensure that timers are processed on the engine node that last handled a session, reducing the need for network bandwidth and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional circuit-switched PSTN infrastructure is used, then telephony services are provided with established reliability, but the system is rigid and cannot support next-generation converged voice, data and video services

Engineering Contradiction:
Improveability to support converged voice, data and video servicesVSAvoidrigidity of existing IT and network infrastructure
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The system segments telephony functionality into specialized application servers that can be independently deployed and managed. These servers handle specific telephony protocols and functions, allowing the infrastructure to be composed of modular, adaptable components rather than a monolithic rigid system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from static circuit-switched infrastructure to dynamic packet-switched networks with session-based servers that can dynamically allocate resources, manage sessions, and adapt to varying service requirements for voice, data, and video convergence.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If session-based servers are deployed to enable flexible telephony services, then adaptability improves, but latency increases due to network bandwidth constraints and distributed architecture

Engineering Contradiction:
Improveflexibility in processing telephony protocolsVSAvoidlatency in processing time-sensitive telephony protocols
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system pre-allocates and pre-configures session state information in distributed servers before telephony sessions are established. Timer affinity mechanisms pre-associate timer operations with specific engine nodes, so when sessions are initiated, the infrastructure is already prepared to process time-sensitive protocols without additional network bandwidth constraints or delays.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If distributed cluster network deployment is used, then scalability and service availability improve, but performance decreases due to network bandwidth requirements and complexity of managing state information across nodes

Engineering Contradiction:
Improvescalability and service availabilityVSAvoidcomplexity of managing state information in distributed deployment
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system introduces a specialized state management layer that acts as an intermediary between distributed engine nodes and storage resources. This state tier manages timer affinity by maintaining associations between timers and engine nodes, handling state information distribution and retrieval, thereby reducing the complexity burden on individual nodes while preserving scalability and availability.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If timers are distributed across multiple engine nodes, then load balancing improves, but performance deteriorates because state information must be retrieved from network storage for each timer event

Engineering Contradiction:
Improveload distribution across engine nodesVSAvoidtime to retrieve state information from network storage
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system pre-associates timers with specific engine nodes using timer affinity mechanisms before timer events occur. When timers are distributed across engine nodes, each node maintains local state information for its affiliated timers, eliminating the need for real-time network storage retrieval and reducing latency while preserving load balancing benefits.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements local state information caching at each engine node for timers with affinity to that node. This creates local quality in the distributed system where each node has immediate access to its own timer state without requiring network bandwidth, while the overall system maintains distributed load balancing across multiple nodes.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9723048B2System and method for providing timer affinity through notifications within a session-based server deployment
Publication Date: 2017.08.01 ORACLE INT CORP
  • US9723048B2 patent drawing
  • US9723048B2 patent drawing
  • US9723048B2 patent drawing

AI summary

The session-based server deployment can be comprised of an engine tier that is designed for high throughput processing of communications and a state tier that maintains state information for access by the engine tier. The engine tier can include a plurality of engine nodes that process incoming messages. The state nodes can contain call state, including various timers. When processing a call, an engine can set various timers in the state tier. Upon expiration of a timer, the state node can transmit a notification assigning the timer to the corresponding engine node which handled previous communications for the call. This affinity between the timer and its respective engine can provide numerous benefits, such as reduced latency and more localized data access.