IP Library Granted Patent US 7,568,047
Granted Patent B1
US 7,568,047 · App. 10/889,484 · Granted Jul 28, 2009

Method and apparatus for adaptive service label management

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 7,568,047
App. No.
10/889,484
Granted
Jul 28, 2009
Kind
B1
Abstract

Multiple service label types may be used in a given network element to optimize scalability of the data plane, minimize overhead associated with service label management, and allow new services to be offered. Service label management may be done in a dynamic manner so that service labels may be selected for routes in a dynamic fashion as the network changes. VPNs handled by the network element may have different types of service labels, and different routes within a particular VPN may be allocated different service label types. Service label requests may be stored on the data plane to allow a service label request database to be restored from the data plane upon a control plane failure, so that new service labels are not required to be allocated after a control plane failure.

Claims (64)

1. A method for adaptive service label management in a MultiProtocol Label Switching (MPLS) network, the method comprising the computer implemented steps of:

adaptively allocating first MPLS service labels of a first MPLS service label type to a first class of traffic, the first MPLS service label type being selected from a set of defined plurality of MPLS service label types; and

adaptively allocating second MPLS service labels of a second MPLS service label type to a second class of traffic, the second MPLS service label type being different from the first MPLS service label type and selected from the set of defined plurality of MPLS service label types;

wherein the MPLS service labels are assigned by network elements maintaining VPN routing and forwarding (VRF) tables which exchange routing information associated with MPLS-based VPN tunnels using border gateway protocol (BGP), and

wherein each MPLS service label is configured to be prepended to a packet as an inner label in an MPLS label stack to specify how VPN traffic should be handled at a tunnel endpoint.

2. The method of claim 1 , wherein the MPLS service labels of the first MPLS service label type are allocated on a per VRF basis; and

wherein the MPLS service labels of the second MPLS service label type are allocated on a per route basis.

3. The method of claim 1 , wherein the defined plurality of MPLS service label types include at least two MPLS service label types selected from:

service labels per loopback address;

service labels per interface group;

service labels per discard route;

service labels per flow distribution;

service labels per VRF;

service labels per next hop;

service labels per attached subnet;

service labels per ECMP route; and

service labels per aggregate route.

4. The method of claim 1 , wherein the method is for use by a network element to enable the network element to handle the first class of traffic in a manner different from the second class of traffic.

5. The method of claim 1 , wherein the MPLS service labels are allocated by a network element configured to handle traffic on a network, and wherein the types of MPLS service labels adaptively allocated by the network element are determined based on a tunnel exit mode of the network element.

6. The method of claim 5 , wherein the tunnel exit mode is based on a method of processing the traffic on a data plane of the network element.

7. The method of claim 5 , wherein the MPLS service labels include an indication of a VRF associated with the MPLS service label and a MPLS service label type attribute, such that performance of a MPLS service label lookup will return an indication of the associated VRF and the MPLS service label type.

8. The method of claim 7 , wherein the MPLS service labels are allocated by a network element, and wherein the MPLS service label type indicates to the network element how the network element should handle a packet associated with the MPLS service label.

9. An apparatus for adaptive MultiProtocol Label Switching (MPLS) service label management, comprising:

control logic configured to adaptively allocate first MPLS service labels of a first MPLS service label type to a first class of traffic, the first MPLS service label type being selected from a set of defined plurality of MPLS service label types; and

control logic configured to adaptively allocate second MPLS service labels of a second MPLS service label type to a second class of traffic, the second MPLS service label type being different from the first MPLS service label type and selected from the set of defined plurality of MPLS service label types;

wherein the MPLS service labels are assigned by network elements maintaining VPN routing and forwarding (VRF) tables which exchange routing information associated with MPLS-based VPN tunnels using border gateway protocol (BGP), and

wherein each MPLS service label is configured to be prepended to a packet as an inner label in an MPLS label stack to specify how VPN traffic should be handled at a tunnel endpoint.

10. The apparatus of claim 9 , wherein the MPLS service labels of the first MPLS service label type are allocated on a per VRF basis; and

wherein the MPLS service labels of the second MPLS service label type are allocated on a per route basis.

11. The apparatus of claim 9 , wherein the defined plurality of MPLS service label types include at least two MPLS service label types selected from:

service labels per loopback address;

service labels per interface group;

service labels per discard route;

service labels per flow distribution;

service labels per VRF;

service labels per next hop;

service labels per attached subnet;

service labels per ECMP route; and

service labels per aggregate route.

12. The apparatus of claim 9 , further comprising a data plane, said data plane being configured to handle the first class of traffic by performing first operations associated with the first of the MPLS service label types, and to handle the second class of traffic by performing second operations associated with the second of the MPLS service label types.

13. The apparatus of claim 12 , further comprising control logic configured to specify a tunnel exit mode for the apparatus.

14. The apparatus of claim 13 , wherein the tunnel exit mode is specified on a per VRF basis.

15. The apparatus of claim 14 , wherein the types of MPLS service labels adaptively allocated by the apparatus are determined based on a tunnel exit mode of the data plane for that VRF.

16. A network element, comprising:

means for forwarding data; and

means for adaptively allocating MultiProtocol Label Switching (MPLS) service labels to instruct the means for forwarding data, the means for allocating MPLS service labels, comprising:

means for adaptively allocating first MPLS service labels of a first MPLS service label type to a first class of traffic, the first MPLS service label type being selected from a set of defined plurality of MPLS service label types; and

means for adaptively allocating second MPLS service labels of a second MPLS service label type to a second class of traffic, the second MPLS service label type being different from the first MPLS service label type and selected from the set of defined plurality of MPLS service label types;

wherein the MPLS service labels are assigned by network elements maintaining VPN routing and forwarding (VRF) tables which exchange routing information associated with MPLS-based VPN tunnels using border gateway protocol (BGP), and

wherein each MPLS service label is configured to be prepended to a packet as an inner label in an MPLS label stack to specify how VPN traffic should be handled at a tunnel endpoint.

17. The network element of claim 16 , wherein the defined plurality of MPLS service label types include at least two MPLS service label types selected from

service labels per loopback address;

service labels per interface group;

service labels per discard route;

service labels per flow distribution;

service labels per VRF;

service labels per next hop;

service labels per attached subnet;

service labels per ECMP route; and

service labels per aggregate route.

18. The network element of claim 16 , wherein said means for forwarding data is configured to handle the first class of traffic by performing first operations associated with the first of the MPLS service label types, and to handle the second class of traffic by performing second operations associated with the second of the MPLS service label types.

19. The network element of claim 16 , further comprising means for specifying a tunnel exit mode for the network element on a per-VRF basis, and wherein the types of MPLS service labels adaptively allocated by the network element are determined based on a tunnel exit mode of the means for forwarding data for that VRF.

20. The apparatus of claim 16 , wherein the MPLS service labels include an indication of a VRF associated with the MPLS service label and a MPLS service label type attribute, such that performance of a MPLS service label lookup by the means for forwarding data will return an indication of the associated VRF and the MPLS service label type.

21. The apparatus of claim 9 , wherein the MPLS service labels include an indication of a VRF associated with the MPLS service label and a MPLS service label type attribute, such that performance of a MPLS service label lookup will return an indication of the associated VRF and the MPLS service label type.

Assignments (6)
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 7, 2014
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 032168/0750 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2011
From: NORTEL NETWORKS LIMITED
To: ROCKSTAR BIDCO, LP
Reel/Frame 027164/0356 →