SIP Message Routing Framework Using Stochastic Keys

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing SIP-based Call Session Servers face inefficiencies and complexity in message routing due to the need for call-session-awareness, leading to high overhead, latency, and increased costs, especially under high call volumes and when handling variants and extensions of the RFC3261 standard.

Innovation Solution

The implementation of an algorithmic SIP message routing framework that uses a stochastically generated 'Routing-Key' based on common SIP headers like Call-ID, From-Tag, and To-Tag, eliminating the need for call-session awareness and reducing the reliance on distributed databases for fault tolerance and resiliency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If call-session-aware routing framework is implemented to correlate SIP messages with B2BUA instances, then message routing accuracy is improved, but system complexity and overhead increase significantly

Engineering Contradiction:
Improvemessage routing accuracyVSAvoidrouting framework complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

A distributed database is introduced as an intermediary between the routing framework and B2BUA instances. The database stores call session information and enables the routing framework to correlate incoming SIP messages with the correct B2BUA instance without requiring the routing framework itself to maintain complex call session state, thus improving routing accuracy while managing complexity through externalization of state management

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The routing framework is segmented into multiple independent routing process instances that can be distributed across different processor elements. Each routing process instance can independently query the distributed database for call session information, allowing the system to handle high call volumes through parallel processing while maintaining accurate message correlation through the shared database

Inventive Principle:
Principle #1Segmentation

2Reliability

If distributed database is used for call session information sharing, then fault tolerance and load balancing are improved, but processing overhead and latency increase

Engineering Contradiction:
Improvefault toleranceVSAvoidmessage processing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Call session information is pre-established and stored in the distributed database when a call is initially set up. This preliminary action ensures that when subsequent SIP messages arrive during the call, the routing framework can quickly retrieve pre-stored call session information from the database without performing complex real-time correlation, thus improving fault tolerance through redundancy while minimizing processing latency through efficient lookup

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The distributed database replicates call session information across multiple processor elements and storage locations. This copying mechanism provides fault tolerance through redundancy while enabling fast local access to call session data, reducing the need for centralized database queries and thereby minimizing message processing latency

Inventive Principle:
Principle #26Copying

3Productivity

If multiple B2BUA instances are created on multiple processor elements, then call handling capacity is improved, but message correlation and routing complexity increases

Engineering Contradiction:
Improvecall handling capacityVSAvoidmessage correlation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The distributed database serves as a universal information repository that all routing process instances and B2BUA instances can access. This multi-functional component enables any routing process instance to correlate messages with any B2BUA instance across different processor elements through a common interface, thereby supporting high call handling capacity through parallel processing while simplifying message correlation through standardized access mechanisms

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP2594049B1Sip-based call session server and message-routing method
Publication Date: 2014.04.02 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • EP2594049B1 patent drawingFigure 1
  • EP2594049B1 patent drawingFigure 2
  • EP2594049B1 patent drawingFigure 3

AI summary

A method and SIP-based Call Session Server (50) for routing SIP messages. A Network and Transport layer (53) receives an incoming SIP message and forwards it to one of a plurality of SIP message routing process instances (56a-56n) in a SIP Message Routing Framework (52). The receiving SIP message routing process instance determines a Routing-Key based upon at least one header field in the incoming message, and based upon the Routing-Key, forwards the incoming message to a selected one of a plurality of Back-to-Back User Agent (B2BUA) instances (54a~54n) in a Call Session Control Framework (51). The selected B2BUA instance creates an outgoing SIP message utilizing the Routing-Key to generate a From-Tag in an outgoing request message, or to generate a To-Tag in an outgoing response message, and then forwards the outgoing message to the Network and Transport layer (53), which transmits the outgoing message.