Multi-Core SIP Proxy Server Hashing for Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current communication networks, particularly VoIP systems, face limitations in processing speed due to reliance on single core CPUs, where maximizing CPU frequency is no longer effective, and using multiple cores results in incomplete network topologies when running multiple instances of PBX software.

Innovation Solution

A multi-core processing system is implemented, where a receiving core hashes protocol signals to direct them to specific processing cores, allowing parallel processing of SIP messages with a single copy of the control software process, maintaining a complete network topology and optimizing processing capacity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple instances of PBX software are run on multiple cores, then processing speed is improved, but network topology completeness deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoidnetwork topology completeness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments the processing workload by dividing SIP message handling across multiple cores, with each core instance processing a subset of messages. The receiving core distributes messages to appropriate processing cores based on hashing, enabling parallel processing while maintaining individual instance integrity for network topology completeness.

Inventive Principle:
Principle #1Segmentation

2Productivity

If CPU frequency is maximized, then processing speed is improved, but scalability deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoidscalability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system dynamically adapts to different hardware configurations by allowing the number of core instances to scale with available CPU cores. Rather than being fixed to a single configuration, the system can adjust the number of processing instances based on the underlying hardware, providing both high performance on single-core systems and scalability on multi-core systems.

Inventive Principle:
Principle #15Dynamics

3Reliability

If a single core processes multiple SIP messages, then network topology completeness is maintained, but processing speed deteriorates

Engineering Contradiction:
Improvenetwork topology completenessVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The receiving core acts as an intermediary that receives all SIP messages and distributes them to appropriate processing cores based on hashing of message parameters. This intermediary layer enables parallel processing across multiple cores while maintaining the integrity of individual processing instances, resolving the conflict between speed and topology completeness.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8601139B2Multiple core session initiation protocol (SIP)
Publication Date: 2013.12.03 MARVELL ASIA PTE LTD
  • US8601139B2 patent drawing
  • US8601139B2 patent drawing
  • US8601139B2 patent drawing

AI summary

A Session Initiation Protocol (SIP) proxy server including a multi-core central processing unit (CPU) is presented. The multi-core CPU includes a receiving core dedicated to pre-SIP message processing. The pre-SIP message processing may include message retrieval, header and payload parsing, and Call-ID hashing. The Call-ID hashing is used to determine a post-SIP processing core designated to process messages between particular user pair. The pre-SIP and post-SIP configuration allows for the use of multiple processing cores to utilize a single control plane, thereby providing an accurate topology of the network for each processing core.