IP Library Granted Patent US 8,107,363
Granted Patent B1
US 8,107,363 · App. 10/851,032 · Granted Jan 31, 2012

Method and apparatus for accelerating failover of VPN traffic in an MPLS provider network

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,107,363
App. No.
10/851,032
Granted
Jan 31, 2012
Kind
B1
Abstract

Failover of VPN traffic between MPLS tunnels may be accelerated by determining a main and a standby MPLS tunnel for each VPN and passing both the main and standby MPLS tunnel information to the forwarding plane of a network element configured to implement the VPN. In the event of failover of a main MPLS tunnel interface, the forwarding plane may be instructed to use the standby MPLS tunnel instead of the main MPLS tunnel. Since the standby MPLS tunnel has already been determined, and information associated with the standby MPLS tunnel has already been provided to the forwarding plane, it is not necessary to recompute a new MPLS tunnel or reprogram the forwarding plane using the new MPLS tunnel information. By removing control plane operations and control plane-forwarding plane interaction from the handling of failovers, the failover recovery time may be accelerated to under 50 ms, to thereby enable VPN connections to handle time sensitive traffic.

Claims (26)

1. A method of accelerating failover of Virtual Private Network (VPN) traffic between Multiprotocol Label Switching (MPLS) tunnels in a service provider MPLS network, the method comprising the steps of:

determining a first label associated with a main MPLS tunnel designated to handle traffic for a VPN, the main MPLS tunnel extending on a first Label Switched Path from a source label edge router to a destination label edge router through at least a first intermediate label switch router on the service provider MPLS network;

determining a second label associated with a standby MPLS tunnel designated to handle the traffic for the VPN in the event of failure associated with the main MPLS tunnel, the standby MPLS tunnel extending on a second Label Switched Path from the source label edge router to the destination label edge router through at least a second intermediate label switch router on the service provider MPLS network, the second intermediate label switch router being a different network element than the first intermediate label switch router; and

passing VPN information from a control plane of a network element to a forwarding plane of the network element prior to occurrence of a failure associated with the main MPLS tunnel, the VPN information including VPN identification information and the first and second labels to be used to place the traffic for the VPN on the main and standby MPLS tunnels, the forwarding plane of the network element being configured to handle forwarding of traffic for the network element.

2. The method of claim 1 , wherein the step of determining the first label associated with the main MPLS tunnel is performed by the control plane of the network element.

3. The method of claim 1 , wherein the step of determining the second label associated with the standby MPLS tunnel is performed by the control plane of the network element.

4. The method of claim 1 , further comprising the step of causing the forwarding plane to forward the traffic according to the first label associated with the main MPLS tunnel.

5. The method of claim 4 , further comprising the step of causing the forwarding plane to forward the traffic according to the second label associated with the standby MPLS tunnel.

6. The method of claim 5 , wherein the step of causing the forwarding plane to forward the traffic according to the second label associated with the standby MPLS tunnel occurs upon determination that a failover from the main MPLS tunnel is warranted.

7. A network element, comprising:

a forwarding plane configured to handle packets of data on a packet network, said forwarding plane containing ports, at least one switch fabric interconnecting the ports and configured to pass the packets of data between the ports, and control logic configured to control how the packets of data should be handled by the forwarding plane;

a control plane configured to interface with the forwarding plane and to program the control logic of the forwarding plane to control how the forwarding plane handles packets of data associated with a Virtual Private Network (VPN), the control plane being configured to program the control logic of the forwarding plane with a VPN identifier associated with the VPN, a first Multiprotocol Label Switching (MPLS) label to be used to forward the packets of data associated with the VPN on a main MPLS tunnel over a first path to a destination network element through at least a first intermediate label switch router on an MPLS network, and a second MPLS label to be used to forward the packets of data associated with the VPN on a standby MPLS tunnel over a second path through at least a second intermediate label switch router that is different from the first intermediate label switch router to the destination network element through the MPLS network upon failure of the main MPLS tunnel, the control plane configured to program the control logic of the forwarding plane prior to any failure of the main MPLS tunnel, the control plane further configured to determine a failure associated with the main MPLS tunnel and, in response to the failure, to signal the forwarding plane; and

the forwarding plane configured, in response to receipt of the signal, to use the standby MPLS tunnel in lieu of the main MPLS tunnel to forward the packets of data associated with the VPN to the destination network element.

8. The method of claim 1 , further comprising:

determining, by the control plane, a failure associated with the main MPLS tunnel;

signaling, by the control plane, the forwarding plane to use the standby MPLS tunnel as a new main MPLS tunnel;

determining, by the control plane, a new standby MPLS tunnel while the new main MPLS tunnel is being used by the forwarding plane; and

passing, by the control plane, information identifying the new standby MPLS tunnel to the forwarding plane for use in the event of failure associated with the new main MPLS tunnel.

9. The network element of claim 7 , wherein the control plane is configured to create MPLS tunnels on the MPLS network, and select from the created MPLS tunnels the main MPLS tunnel and the standby MPLS tunnel for the VPN.

10. The network element of claim 7 , wherein the forwarding plane is configured to implement forwarding decisions, but is not configured to perform selection of MPLS tunnels on the MPLS network.

11. A method of performing fast failover of Virtual Private Network (VPN) traffic between Multiprotocol Label Switching (MPLS) tunnels on a network, the method comprising the steps of:

establishing a first MPLS tunnel and a second MPLS tunnel from a first provider edge network element to a second provider edge network element, the first provider edge network element having a control plane and a forwarding plane, the first MPLS tunnel traversing a first intermediate label switch router and the second MPLS tunnel traversing a second intermediate label switch router that is different from the first intermediate label switch router;

selecting, by the first provider edge network element, the first MPLS tunnel to be a main MPLS tunnel for a VPN;

selecting, by the first provider edge network element, the second MPLS tunnel to be a standby MPLS tunnel for the VPN; and

prior to a failure on the main MPLS tunnel, establishing forwarding information for the VPN in the forwarding plane of the first provider edge network element, the forwarding information for the VPN including a first outgoing port and MPLS label to be used to forward traffic on the main MPLS tunnel and a second outgoing port and MPLS label to be used to forward the traffic on the standby MPLS tunnel upon occurrence of a failure on the main MPLS tunnel.

12. The method of claim 11 , wherein the forwarding plane contains a forwarding information base, said forwarding information base containing information associating VPN identifiers with main MPLS tunnel information and standby MPLS tunnel information.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 054305/0505 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CLEARINGHOUSE LLC
To: JEFFERIES FINANCE LLC
Reel/Frame 046485/0644 →
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2015
From: ROCKSTAR CONSORTIUM US LP; ROCKSTAR CONSORTIUM LLC; BOCKSTAR TECHNOLOGIES LLC; CONSTELLATION TECHNOLOGIES LLC; MOBILESTAR TECHNOLOGIES LLC; NETSTAR TECHNOLOGIES LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 034924/0779 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2014
From: ROCKSTAR CONSORTIUM US LP
To: BOCKSTAR TECHNOLOGIES LLC
Reel/Frame 032399/0116 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2013
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 029811/0167 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2011
From: NORTEL NETWORKS LIMITED
To: ROCKSTAR BIDCO, LP
Reel/Frame 027143/0717 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2004
From: SALUJA, RAJESH
To: NORTEL NETWORKS LIMITED
Reel/Frame 015380/0065 →