US2014059241A1PendingUtilityA1

Multiple Core Session Initiation Protocol (SIP)

Assignee: CAVIUM INCPriority: Nov 26, 2008Filed: Oct 30, 2013Published: Feb 27, 2014
Est. expiryNov 26, 2028(~2.3 yrs left)· nominal 20-yr term from priority
H04L 65/1045H04L 69/22H04L 67/146H04L 67/14H04L 67/561H04L 65/1104H04L 65/1006
44
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

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.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for processing protocol messages, the method comprising:
 given a plurality of different media sessions between users, for each of the media sessions, analyzing protocol messages at a receiving processor unit in order to determine an associated call identifier, wherein the call identifier uniquely identifies protocol messages associated with one of the media sessions, wherein for each media session, corresponding protocol messages are identified by a single respective call identifier;   directing the protocol messages, based on the call identifier, to respective processing units from a plurality of processing units, the processing units configured to perform processing of the protocol messages.   
     
     
         2 . The method of  claim 1  further comprising processing the protocol messages in respective processing units in a parallel manner, wherein for each media session, all the corresponding protocol messages are directed to a single respective processing unit. 
     
     
         3 . The method of  claim 2  wherein each processing unit operates within a single control plane. 
     
     
         4 . The method of  claim 3  wherein the single control plane is a private branch exchange (PBX), a SIP Media Gateway processor, or a SIP Proxy server. 
     
     
         5 . The method of  claim 1  further comprising hashing the call identifier with a hash function at the receiving processor unit in order to determine a processing unit from the plurality of processing units. 
     
     
         6 . A hardware processing system comprising:
 a receiving processor unit configured to receive a protocol message, the receiving processor unit further configured to direct the protocol message for processing based on a call identifier associated with the protocol message, wherein given a plurality of different media sessions between users, for each of the media sessions, the call identifier uniquely identifies protocol messages associated with one of the media sessions, wherein for each media session, corresponding protocol messages are identified by a single respective call identifier; and   a plurality of processing units configured to perform processing of the protocol messages, a processing unit of the plurality of processing units configured to receive the protocol message based on the call identifier.   
     
     
         7 . The system of  claim 6  wherein the processing units are configured to process incoming protocol messages in parallel, and wherein for each media session, all the corresponding protocol messages are received by a single respective processing unit. 
     
     
         8 . The system of  claim 7  wherein each processing unit operates within a single control plane. 
     
     
         9 . The system of  claim 8  wherein the single control plane is a private branch exchange, a SIP Media Gateway processor, or a SIP Proxy server. 
     
     
         10 . The system of  claim 6  wherein the receiving processor unit includes a hash function configured to hash the call identifier to determine which processing unit of the plurality of processing units to send the protocol message. 
     
     
         11 . A non-transitory computer-readable medium storing instructions for processing a protocol message that, when executed by a computer, cause the computer to:
 given a plurality of different media sessions between users, for each of the media sessions, analyze a protocol message sent to a receiving processor unit in order to determine an associated call identifier, wherein the call identifier uniquely identifies protocol messages associated with one of the media sessions, wherein for each media session, corresponding protocol messages are identified by a single respective call identifier; and   direct the protocol messages, based on the call identifier, to respective processing units from a plurality of processing units configured to perform processing of the protocol messages.   
     
     
         12 . The non-transitory computer-readable medium of  claim 11  further storing instructions that cause the computer to hash the call identifier with a hash function at the receiving processor unit in order to determine a processing unit from the plurality of processing units. 
     
     
         13 . The non-transitory computer-readable medium of  claim 11  further storing instructions that cause the computer to process the protocol messages in respective processing units in a parallel manner, wherein for each media session, all the corresponding protocol messages are directed to a single respective processing unit. 
     
     
         14 . The non-transitory computer-readable medium of  claim 13  wherein each processing unit operates within a single control plane. 
     
     
         15 . The non-transitory computer-readable medium of  claim 14  wherein the single control plane is a private branch exchange, a SIP Media Gateway processor, or a SIP Proxy server.

Join the waitlist — get patent alerts

Track US2014059241A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.