IP Library Granted Patent US 11,375,035
Granted Patent B2
US 11,375,035 · App. 16/662,432 · Granted Jun 28, 2022

Proxying session initiation protocol (SIP) communications

Inventors: Andy Tylee (Enfield, GB); Max Dymond (Enfield, GB)
Assignee: METASWITCH NETWORKS LTD
H04L67/2823H04L67/1029H04L12/50H04L65/1006H04L67/1027
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,375,035
App. No.
16/662,432
Granted
Jun 28, 2022
Kind
B2
Abstract

Proxying Session Initiation Protocol (SIP) communications in a load balancing device. An outgoing SIP message is received from a session border controller device. The received outgoing SIP message comprises a routing control parameter in the form of a Uniform Resource Identifier (URI). The received outgoing message comprises one or more additional outgoing routing control parameters different to the URI. The one or more additional outgoing routing control parameters have been originated at the session border controller device to control one or more outgoing routing characteristics at the load balancing device. The one or more additional outgoing routing control parameters are extracted from the received outgoing SIP message. The outgoing SIP message is forwarded to a peer device using the one or more outgoing routing characteristics on the basis of the one or more extracted outgoing routing control parameters.

Claims (49)

1. A method for proxying Session Initiation Protocol (SIP) communications in a communication network at a load balancing device, the method comprising:

receiving, by the load balancing device, an outgoing SIP message from a session border controller device, wherein the received outgoing SIP message has a total number of Via headers wherein a topmost Via header comprises a received branch tag including first branch tag information;

selecting, by the load balancing device, a peer device to which the outgoing SIP message should be forwarded;

maintaining the total number of Via headers in the received outgoing SIP message;

adding, by the load balancing device to the received outgoing SIP message, second branch tag information comprising an identifier of the session border controller device; and

forwarding, by the load balancing device, the outgoing SIP message to the selected peer device with the received total number of Via headers,

wherein the forwarded outgoing SIP message does not include an additional Via header added by the load balancing device, and

removing, by the load balancing device, the identifier of the session border controller device from second branch tag information of an incoming SIP message when the incoming SIP message is received from the peer device.

2. The method of claim 1 , wherein the topmost Via header, when sent from the session border controller to the load balancing device, includes an IP address of the load balancing device.

3. The method of claim 1 , wherein the first branch tag information comprises an RFC 2361 magic cookie.

4. The method of claim 1 , wherein the first branch tag information comprises a hash value.

5. The method of claim 1 , wherein the first branch tag information comprises an internal uniqueness identifier.

6. The method of claim 1 , wherein the first branch tag information comprises a unique incrementing counter value.

7. The method of claim 1 , wherein the identifier indicative of the session border controller device is an encoded IP address of the session border controller device.

8. The method of claim 1 , wherein the incoming SIP message comprises an incoming Via header, the incoming Via header including the first branch tag information and the second branch tag information;

identifying the session border controller device from the second branch tag information; and

forwarding the incoming SIP message to the session border controller device, the forwarded incoming SIP message comprising the incoming Via header as a topmost Via header when being forwarded and, when being forwarded including the first branch tag information.

9. The method of claim 8 , wherein the load balancing device does not reduce a number of Via headers in the incoming SIP message when forwarding the incoming SIP message to the session border controller device.

10. A communications system comprising at least one of a processor and memory storing computer-executable instructions that, when executed, configure the communications system to instantiate:

a load balancer device; and

a session border controller device adapted to conduct SIP communication with a peer device via the load balancer device, the load balancer device configured to:

receive an outgoing SIP message from the session border controller, wherein the received outgoing SIP message has a total number of Via headers wherein a topmost Via header comprises a received branch tag including first branch tag information; and

maintain the total number of Via headers in the received outgoing SIP message;

add, to the received outgoing SIP message, second branch tag information comprising an identifier of the session border controller device; and

forward the outgoing SIP message to the peer device with the received total number of Via headers,

wherein the forwarded outgoing SIP message does not include an additional Via header added by the load balancer device, and

remove the identifier of the session border controller device from second branch tag information of an incoming SIP message when the incoming SIP message is received from the peer device.

11. The system of claim 10 , wherein the topmost Via header, when sent from the session border controller to the load balancing device, includes an IP address of the load balancing device.

12. The system of claim 10 , wherein the first branch tag information comprises one or more of an RFC 2361 magic cookie, a hash value, an internal uniqueness identifier, or a unique incrementing counter value.

13. The system of claim 10 , wherein the identifier indicative of the session border controller device is an encoded IP address of the session border controller device.

14. The system of claim 10 , wherein the incoming SIP message comprises an incoming Via header, the incoming Via header including the first branch tag information and the second branch tag information;

wherein the load balancer device is further configured to:

identify the session border controller device from the second branch tag information; and

forward the incoming SIP message to the session border controller device, the forwarded incoming SIP message comprising the incoming Via header as a topmost Via header when being forwarded and, when being forwarded including the first branch tag information.

15. The system of claim 14 , wherein the load balancing device does not reduce a number of Via headers in the incoming SIP message when forwarding the incoming SIP message to the session border controller device.

16. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by one or more processors of a load balancer device in a communication network, cause the load balancer device to:

receive an outgoing SIP message from a session border controller device, wherein the received outgoing SIP message has a total number of Via headers wherein a topmost Via header comprises a received branch tag including first branch tag information; and

maintain the total number of Via headers in the received outgoing SIP message;

add, to the received outgoing SIP message, second branch tag information comprising an identifier of the session border controller device; and

forward the outgoing SIP message to a peer device with the received total number of Via headers,

wherein the forwarded outgoing SIP message does not include an additional Via header added by the load balancing device, and

remove the identifier of the session border controller device from second branch tag information of an incoming SIP message when the incoming SIP message is received from the peer device.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the topmost Via header, when sent from the session border controller to the load balancing device, includes an IP address of the load balancing device.

18. The non-transitory computer-readable storage medium of claim 16 , wherein the first branch tag information comprises one or more of an RFC 2361 magic cookie, a hash value, an internal uniqueness identifier, or a unique incrementing counter value.

19. The non-transitory computer-readable storage medium of claim 16 , wherein the identifier indicative of the session border controller device is an encoded IP address of the session border controller device.

20. The non-transitory computer-readable storage medium of claim 16 , wherein the incoming SIP message comprises an incoming Via header, the incoming Via header including the first branch tag information and the second branch tag information;

wherein the load balancer device is further configured to:

identify the session border controller device from the second branch tag information; and

forward the incoming SIP message to the session border controller device, the forwarded incoming SIP message comprising the incoming Via header as a topmost Via header when being forwarded and, when being forwarded including the first branch tag information.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2026
From: MICROSOFT TECHNOLOGY LICENSING, LLC
To: ALIANZA, INC.
Reel/Frame 075645/0892 →
CHANGE OF NAME Recorded May 13, 2026
From: ALIANZA, INC.
To: ALIANZA, LLC
Reel/Frame 075646/0037 →
SECURITY INTEREST Recorded May 6, 2025
From: ALIANZA, INC.; METASWITCH NETWORKS LTD
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 071191/0228 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2019
From: TYLEE, ANDY; DYMOND, MAX
To: METASWITCH NETWORKS LTD
Reel/Frame 050814/0496 →