IP Library Granted Patent US 8,995,252
Granted Patent B2
US 8,995,252 · App. 11/680,593 · Granted Mar 31, 2015

VoIP multiline failover

Inventors: Sanchaita Datta (Salt Lake City, UT); Bhaskar Ragula (Salt Lake City, UT); Padmanaban Balasubramaniam (Salt Lake City, UT)
Assignee: FatPipe Networks
H04L65/1069H04L12/2602H04L12/4633H04L43/00H04L43/0829H04L43/0852H04L43/087H04L65/1006H04L65/80
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 8,995,252
App. No.
11/680,593
Granted
Mar 31, 2015
Kind
B2
Abstract

Tools and techniques are provided to provide Voice-over-IP (VoIP) communications. On receiving a user request to initiate a telephonic connection from a local site, at which the user is using a VoIP telecommunication device which has no link failover functionality, a system establishes over wide area network links at least two tunnels between a controller at the local site and another controller. Then the system transmits VoIP traffic over at least one of the tunnels from the controller at the local site to the other controller. The system also detects failure of the primary tunnel during the call and performs failover by changing a data path during the call to transmit packets over at least one non-failed tunnel.

Claims (32)

1. A communications method, comprising:

receiving a user request to initiate a telephonic connection from a local site, using a VoIP telecommunication device which has by itself no functionality to failover to transfer traffic onto at least one backup tunnel in the event of a link failure;

establishing over wide area network links at least two VPN tunnels between a controller at the local site and another controller; and

transmitting VoIP traffic over at least one of the VPN tunnels from the controller at the local site to the other controller;

wherein the establishing step includes an inviting location initiating an SIP/SDP INVITE at least in part by sending to an invited location an SIP/SDP INVITE packet and includes sending to the invited location a primary IP address of the inviting location and a backup IP address of the inviting location in a request packet, and includes the inviting location receiving from the invited location in a response packet a primary IP address of the invited location and a backup IP address of the invited location.

2. The method of claim 1 , wherein the method dynamically establishes at least one of the VPN tunnels in response to receiving the user request.

3. The method of claim 2 , wherein the step of dynamically establishing a VPN tunnel comprises the controller at the local site sending, transparently to the user, at least the following to the other controller: a VoIP call initiation message, a primary channel IP address, at least one backup channel IP address.

4. The method of claim 2 , further comprising the controller at the local site sending the other controller a VoIP call termination message, and then tearing down the dynamically established VPN tunnel.

5. The method of claim 1 , wherein the method establishes at least one of the VPN tunnels as a static tunnel before receiving the user request.

6. The method of claim 1 , wherein the method establishes at least one of the VPN tunnels as a call-specific tunnel, namely, a tunnel that is dedicated to VoIP traffic.

7. The method of claim 1 , wherein the method establishes at least two physically separate VPN tunnels of the same type (static versus dynamic).

8. The method of claim 1 , further comprising detecting failure of the VPN tunnel during a call and changing a data path during the call to transmit packets over at least one non-failed tunnel.

9. The method of claim 8 , wherein detecting failure of the VPN tunnel during a call occurs within a previously defined time period of the physical failure of the VPN tunnel.

10. The method of claim 1 , wherein transmitting packets comprises identifying VoIP connection control packets and sending them into the VPN tunnel.

11. The method of claim 1 , wherein transmitting packets comprises identifying VoIP packets and sending them into a dynamically established call-specific VPN tunnel while excluding non-VoIP packets from the VPN tunnel.

12. The method of claim 1 , wherein transmitting packets comprises identifying VoIP packets and sending them into a dynamically established VPN tunnel while committing minimum latency, jitter and packet loss as previously specified for improved quality of call.

13. The method of claim 1 , wherein transmitting packets comprises identifying VoIP packets and sending them into a call-specific VPN tunnel while committing minimum latency, jitter and packet loss as previously specified for improved quality of call.

14. The method of claim 1 , wherein transmitting packets comprises performing network address translation (NAT) on packets before the controller at the local site sends them over the VPN tunnel, such that the intermediate site sees a public IP address for the local site in the packets instead of seeing a private IP address of the local site.

15. The method of claim 1 , further comprising a PBX/soft-switch at an intermediate site terminating the call on a VoIP device.

16. The method of claim 1 , further comprising a PBX/soft-switch at an intermediate site terminating the call on a PSTN device.

17. A communications method, comprising:

receiving a user request to initiate a telephonic connection from a local site, using a VoIP telecommunication device which has by itself no functionality to failover to transfer traffic onto at least one backup tunnel in the event of a link failure;

dynamically establishing at least two tunnels over wide area network links between a controller at the local site and another controller, in response to receiving the user request; and

transmitting VoIP traffic over at least one of the tunnels from the controller at the local site to the other controller;

wherein the establishing step includes an inviting location initiating an SIP/SDP INVITE at least in part by sending to an invited location an SIP/SDP INVITE packet and includes sending to the invited location a primary IP address of the inviting location and a backup IP address of the inviting location in a request packet, and includes the inviting location receiving from the invited location in a response packet a primary IP address of the invited location and a backup IP address of the invited location.

18. The method of claim 17 , wherein the method also encrypts and/or compresses VoIP traffic.

19. A communications method, comprising:

receiving a user request to initiate a telephonic connection from a local site, using a VoIP telecommunication device which has by itself no functionality to failover to transfer traffic onto at least one backup tunnel in the event of a link failure;

establishing at least two call-specific tunnels over wide area network links between a controller at the local site and another controller, in response to receiving the user request; and

transmitting VoIP traffic over at least one of the tunnels from the controller at the local site to the other controller;

wherein the establishing step includes an inviting location initiating an SIP/SDP INVITE at least in part by sending to an invited location an SIP/SDP INVITE packet and includes sending to the invited location a primary IP address of the inviting location and a backup IP address of the inviting location in a request packet, and includes the inviting location receiving from the invited location in a response packet a primary IP address of the invited location and a backup IP address of the invited location.

20. The method of claim 19 , wherein the method dynamically establishes the tunnels in response to receiving the user request.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Feb 25, 2025
From: CELTIC BANK CORPORATION
To: CELTIC BANK CORPORATION
Reel/Frame 070321/0022 →
SECURITY INTEREST Recorded Jan 30, 2023
From: FATPIPE NETWORKS PRIVATE LIMITED
To: CELTIC BANK CORPORATION
Reel/Frame 062525/0613 →
CHANGE OF NAME Recorded Jun 2, 2016
From: FATPIPE NETWORKS INDIA LIMITED
To: FATPIPE NETWORKS PRIVATE LIMITED
Reel/Frame 039124/0386 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2009
From: DATTA, SANCHAITA; BHASKAR, RAGULA; BALASUBRAMANIAM, PADMANABAN; RAGULA SYSTEMS D/B/A/ FATPIPE NETWORKS
To: FATPIPE NETWORKS INDIA LIMITED
Reel/Frame 022919/0727 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2007
From: DATTA, SANCHAITA; RAGULA, BHASKAR; BALASUBRAMANIAM, PADMANABAN
To: RAGULA SYSTEMS (D/B/A/ FATPIPE NETWORKS)
Reel/Frame 020250/0863 →
Continuity (4)
Provisional Application 60863378 · Oct 29, 2006
Provisional Application 60866934 · Nov 22, 2006
Provisional Application 60891920 · Feb 27, 2007
Related Publication 20080317011A1 · Dec 25, 2008