WO2011002629A1 - Linking inner and outer mpls labels - Google Patents

Linking inner and outer mpls labels Download PDF

Info

Publication number
WO2011002629A1
WO2011002629A1 PCT/US2010/039402 US2010039402W WO2011002629A1 WO 2011002629 A1 WO2011002629 A1 WO 2011002629A1 US 2010039402 W US2010039402 W US 2010039402W WO 2011002629 A1 WO2011002629 A1 WO 2011002629A1
Authority
WO
WIPO (PCT)
Prior art keywords
label
database
key
entry
network equipment
Prior art date
Application number
PCT/US2010/039402
Other languages
French (fr)
Inventor
Gregory Page
Original Assignee
Alcatel-Lucent Usa Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel-Lucent Usa Inc. filed Critical Alcatel-Lucent Usa Inc.
Priority to EP10727629.7A priority Critical patent/EP2449733B1/en
Priority to JP2012518549A priority patent/JP5426024B2/en
Priority to KR1020117031582A priority patent/KR101318001B1/en
Priority to CN201080029204.8A priority patent/CN102474451B/en
Publication of WO2011002629A1 publication Critical patent/WO2011002629A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/40User authentication by quorum, i.e. whereby two or more security principals are required
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques

Definitions

  • This invention relates to linking inner and outer MPLS labels, and more particularly but not exclusively, to a method of linking inner and outer MPLS labels in a database for the purpose of excluding malicious packets.
  • Multi-Protocol Label Switching refers to a system and method for carrying data between telecom network equipment elements in a network.
  • network equipment elements include, among other examples, routers and switches and in particular network equipment which performs the function of Label Edge Routing and Label Switch Routing.
  • Multi-Protocol Label Switching functionality is described comprehensively in the IETF technical documents RFC-3031 and RFC-3032.
  • Multi-Protocol Label Switching can be conceived to operate as a protocol that lies between the OSI Model layers of Layer 2 (Data Link Layer) and Layer 3 (Network Layer). As such it acts to provide a unified data-carrying service that can carry many different kinds of traffic, including native ATM (Asynchronous Transfer Mode), SONET, and Ethernet frames, as well as IP packets.
  • Data packets in an MPLS network are prefixed with an MPLS header which contains one or more labels. This is called a label stack and is used to switch the associated data packet as it traverses the MPLS network instead of, for example, a lookup into an Internet Protocol (IP) routing table.
  • IP Internet Protocol
  • Packet entry and exit from an MPLS network occurs via Label Edge Routers (LERs) which push an MPLS label onto an incoming packet upon entry to the network, and pop the MPLS label off of the outgoing packet as it exits the network.
  • LERs Label Edge Routers
  • LSRs Label Switched Routers
  • the packet arriving at the LER may already possess an MPLS label, and in this case the LER may push a second label onto the packet.
  • Two examples of services which use a second label are Virtual Private LAN Services (VPLS) and Layer-3 Virtual Private Networks (L3- VPNs). As may be readily seen from the description that follows, other services may use a second label on the packet.
  • VPLS Virtual Private LAN Services
  • L3- VPNs Layer-3 Virtual Private Networks
  • L3-VPNs use a two-level MPLS label wherein the inner label carries VPN-specific information from LERs to LERs.
  • the outer label carries the hop- by-hop MPLS forwarding information.
  • the LSRs in the MPLS network only read and swap the outer label as the packet passes through the network. They do not read or act upon the inner VPN label and that information is tunneled across the network.
  • the LER and LSR routers are IP routing peers.
  • the LER router provides the LSR router with the routing information for the customer's private network behind it.
  • the LSR router stores this private routing information in a Virtual Routing and Forwarding (VRF) table; each VRF is essentially a private IP network.
  • VRF Virtual Routing and Forwarding
  • the LSR router maintains a separate VRF table for each VPN, thereby providing appropriate isolation and security. VPN users have access only to sites or hosts within the same VPN.
  • the LSR router also stores the normal routing information it needs to send traffic over the public Internet.
  • Virtual private LAN service is a way to provide Ethernet based multipoint to multipoint communication over IP/MPLS networks. It allows geographically dispersed sites to share an Ethernet broadcast domain by connecting sites through pseudo-wires.
  • the local area network (LAN) at each site is extended to the edge of the provider network.
  • the provider network then emulates a switch or bridge to connect all of the customer LANs to create a single bridged LAN.
  • each LSR router in the provider network must be configured to participate in a given VPLS, and, in addition, be given the addresses of other LSRs participating in the same VPLS. A full mesh of LDP sessions is then established between these LSRs. LDP is then used to create an equivalent mesh of pseudo-wires between those LSRs.
  • VPLS MPLS packets have a two-label stack.
  • the outer label is used for normal MPLS forwarding in the service provider's network.
  • Border Gateway Protocol BGP
  • LDP LDP is used to establish the VPLS
  • the inner label is allocated by a LSR as part of a label block.
  • LDP is a virtual circuit ID assigned by LDP when it first established a mesh between the participating LSRs. Every LSR keeps track of assigned inner label, and associates these with the VPLS instance.
  • an LER receiving a L3-VPN or VPLS packet processes the outer label and the inner label without regard for whether they are associated.
  • the outer label is removed and the inner label is processed independently of the outer label.
  • malicious packets can be sent into remote VLANs by selection of the appropriate outer label.
  • An object of the present invention is to provide a method for linking outer and inner labels within the processing of MPLS packets.
  • a method executed within a network equipment element to cause the network equipment element to process an MPLS packet having an outer label and an inner label including the steps of: establishing a first database containing entries corresponding to valid outer labels; associating a key with each entry in the first database; establishing a second database containing entries corresponding to a combination of the key with valid inner labels and the appropriate actions associated with the valid inner labels; retrieving the associated key when the MPLS packet's outer label has a corresponding entry in the first database; and combining the associated key with the MPLS packet's inner label to generate a lookup entry value for the second database.
  • the method could further include using the lookup entry value to check for a corresponding entry in the second database; and if no match is found then to drop the MPLS packet. Further, upon dropping the packet a security alarm may be flagged.
  • the combining step could consist of appending the associated key to the MPLS packet's inner label.
  • the combining step could consist of hashing the associated key to the MPLS packet's inner label.
  • the said network equipment element would be one of either a Label Switched Router or a Label Edge Router.
  • Advantages of the present invention include dropping malicious packets arriving with valid outer labels.
  • an article of manufacture for use in programming a network equipment element to cause the network equipment element to process an MPLS packet having an outer label and an inner label
  • the article of manufacture comprising computer useable media accessible to the network equipment element, wherein the computer useable media includes at least one computer program that is capable of causing the network equipment element to perform the steps of: establishing a first database containing entries corresponding to valid outer labels; associating a key with each entry in the first database; establishing a second database containing entries corresponding to a combination of the key with valid inner labels and the appropriate actions associated with the valid inner labels; retrieving the associated key when the MPLS packet's outer label has a corresponding entry in the first database; and combining the associated key with the MPLS packet's inner label to generate a lookup entry value for the second database.
  • the network equipment element may be a Label Switched Router, and in other embodiments a Label Edge Router.
  • Fig. 1 illustrates a method for handling the two labels in an L3-VPN in accordance with the prior art
  • Fig. 2 illustrates a method for handling the two labels in an L3-VPN in accordance with an embodiment of the present invention.
  • Multi-Protocol Label Switching (MPLS) protocol assigns labels to packets for transport across a network.
  • the labels are contained in an MPLS header inserted into the data packet
  • MPLS relies on traditional IP routing protocols to advertise and establish the network topology. MPLS is then overlaid on top of this topology. Since route planning occurs ahead of time and at the edge of the network (where the customer and service provider network meet), MPLS-labeled data requires less router horsepower to traverse the core of the MPLS network.
  • LSPs Label-Switched Paths
  • An LSP is defined by a sequence of labels assigned to nodes on the packet's path from source to destination.
  • LSPs direct packets in one of two ways: hop-by-hop routing or explicit routing.
  • hop-by-hop routing each MPLS router independently selects the next hop for a given Forwarding Equivalency Class (FEC).
  • FEC Forwarding Equivalency Class
  • a FEC describes a group of packets of the same type; all packets assigned to a FEC receive the same routing treatment.
  • FEC Forwarding Equivalency Class
  • a FEC describes a group of packets of the same type; all packets assigned to a FEC receive the same routing treatment.
  • explicit routing the entire list of network equipment elements traversed by the LSP is specified in advance. The path specified could be optimal or not, but is based on the overall view of the network topology and, potentially, on additional constraints, and is referred to as Constraint-Based Routing.
  • each MPLS network equipment element builds a Label Information Base (LIB), a table that specifies how to forward a packet. This table associates each label with its corresponding FEC and the outbound port to forward the packet to.
  • LIB is typically established in addition to the routing table and Forwarding Information Base (FIB) that traditional routers maintain.
  • Connections are signaled and labels are distributed among network equipment elements in an MPLS network using one of several signaling protocols, including Label Distribution Protocol (LDP) and Resource reservation Protocol with Tunneling Extensions (RSVP TE).
  • LDP Label Distribution Protocol
  • RSVP TE Resource reservation Protocol with Tunneling Extensions
  • label assignment can be piggybacked onto existing IP routing protocols such as BGP.
  • LDP The most commonly used MPLS signaling protocol is LDP.
  • LDP defines a set of procedures used by MPLS network equipment elements to exchange label and stream mapping information. It is used to establish LSPs, mapping routing information directly to Layer 2 switched paths. It is also commonly used to signal at the edge of the MPLS network the critical point where non-MPLS traffic enters. Such signaling is required for establishing MPLS VPNs.
  • MPLS allows multiple labels (called a label stack) to be carried on a packet.
  • Label stacking enables MPLS network equipment elements to differentiate between types of data flows, and to set up and distribute LSPs accordingly.
  • a common use of label stacking is for establishing tunnels through MPLS networks for VPN applications.
  • FIG. 1 there may be seen a flowchart depicting the normal steps for handling a multiple label packet arriving at an network equipment element. The method commences at 100.
  • the outer label is retrieved from the MPLS packet.
  • the LIB is consulted as to whether it has an entry corresponding to the outer label. If no entry corresponds then the method ends at 106. [039] If there is an entry for the outer label it is checked as to whether it is a POP action at 108. If the entry is not a POP action, then control passes to 110 to proceed with the appropriate action.
  • the entry is for a POP action, then the Virtual Routing Instance (VRI) is retrieved from entry corresponding to the label and the packet is routed accordingly at 124.
  • VRI Virtual Routing Instance
  • an embodiment according to the present invention adds an additional step in order to preclude malicious packet forwarding.
  • the software or hardware processing the ingressing MPLS packets is provided with a database containing the labels and their respective actions.
  • This label database is augmented so that entries for outer labels have an attribute that is used as a key when looking up the inner label.
  • the software or hardware takes the key associated with the outer label and hashes it to the inner label creating a new key. This hashing may be a simple appending or a more complex operation.
  • the resulting new key is referenced in the table to resolve the inner label action. If no match is found, the packet is dropped (or used to detect a security issue).
  • FIG. 2 there may be seen a flowchart depicting a method for handling the two labels in an L3-VPN in accordance with an embodiment of the present invention.
  • the method commences at 200. (Note: for ease of reference corresponding steps between Fig. 1 and Fig. 2 carry corresponding reference numbers.) [046]
  • the outer label is retrieved from the MPLS packet.
  • the label database is consulted as to whether it has an entry corresponding to the outer label. If no entry corresponds then the method ends at 206.
  • the outer label is POPPED and the inner label is retrieved at step 212.
  • the outer label is used to retrieve a key from the database corresponding to the outer label.
  • the entry is for a POP action, then the Virtual Routing Instance (VRI) is retrieved from entry corresponding to the label and the packet is routed accordingly at 224.
  • VRI Virtual Routing Instance

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

A method of linking inner and outer MPLS labels to provide enhanced security is disclosed. The method of linking inner and outer MPLS labels to provide enhanced security includes provisioning both an outer label database with reference keys. The outer label database entry provides a key that must be used in conjunction with the inner label database lookup to realize appropriate actions. As the provided key is not publically accessible an additional increment of security is provided. The method of linking inner and outer MPLS labels to provide enhance security is particularly useful blocking malicious packets from being sent into a remote VLAN or VFI.

Description

LINKING INNER AND OUTER MPLS LABELS
Field of the invention
[001] This invention relates to linking inner and outer MPLS labels, and more particularly but not exclusively, to a method of linking inner and outer MPLS labels in a database for the purpose of excluding malicious packets.
Background of the Invention
[002] This section introduces aspects that may be helpful in facilitating a better understanding of the invention. Accordingly, the statements of this section are to be read in this light and are not to be understood as admissions about what is in the prior art or what is not in the prior art.
[003] In telecommunications Multi-Protocol Label Switching (MPLS) refers to a system and method for carrying data between telecom network equipment elements in a network. Such network equipment elements include, among other examples, routers and switches and in particular network equipment which performs the function of Label Edge Routing and Label Switch Routing.
[004] Multi-Protocol Label Switching functionality is described comprehensively in the IETF technical documents RFC-3031 and RFC-3032. Multi-Protocol Label Switching can be conceived to operate as a protocol that lies between the OSI Model layers of Layer 2 (Data Link Layer) and Layer 3 (Network Layer). As such it acts to provide a unified data-carrying service that can carry many different kinds of traffic, including native ATM (Asynchronous Transfer Mode), SONET, and Ethernet frames, as well as IP packets.
[005] Data packets in an MPLS network are prefixed with an MPLS header which contains one or more labels. This is called a label stack and is used to switch the associated data packet as it traverses the MPLS network instead of, for example, a lookup into an Internet Protocol (IP) routing table. [006] Packet entry and exit from an MPLS network occurs via Label Edge Routers (LERs) which push an MPLS label onto an incoming packet upon entry to the network, and pop the MPLS label off of the outgoing packet as it exits the network.
[007] Within the MPLS network are routers which perform routing based only upon the MPLS label, and are denoted Label Switched Routers (LSRs). In some applications, the packet arriving at the LER may already possess an MPLS label, and in this case the LER may push a second label onto the packet. Two examples of services which use a second label are Virtual Private LAN Services (VPLS) and Layer-3 Virtual Private Networks (L3- VPNs). As may be readily seen from the description that follows, other services may use a second label on the packet.
[008] L3-VPNs use a two-level MPLS label wherein the inner label carries VPN-specific information from LERs to LERs. The outer label carries the hop- by-hop MPLS forwarding information. The LSRs in the MPLS network only read and swap the outer label as the packet passes through the network. They do not read or act upon the inner VPN label and that information is tunneled across the network.
[009] In an L3-VPN, the LER and LSR routers are IP routing peers. The LER router provides the LSR router with the routing information for the customer's private network behind it. The LSR router stores this private routing information in a Virtual Routing and Forwarding (VRF) table; each VRF is essentially a private IP network. The LSR router maintains a separate VRF table for each VPN, thereby providing appropriate isolation and security. VPN users have access only to sites or hosts within the same VPN. In addition to the VRF tables, the LSR router also stores the normal routing information it needs to send traffic over the public Internet.
[010] Virtual private LAN service (VPLS) is a way to provide Ethernet based multipoint to multipoint communication over IP/MPLS networks. It allows geographically dispersed sites to share an Ethernet broadcast domain by connecting sites through pseudo-wires.
[011] In a VPLS, the local area network (LAN) at each site is extended to the edge of the provider network. The provider network then emulates a switch or bridge to connect all of the customer LANs to create a single bridged LAN.
[012] With LDP, each LSR router in the provider network must be configured to participate in a given VPLS, and, in addition, be given the addresses of other LSRs participating in the same VPLS. A full mesh of LDP sessions is then established between these LSRs. LDP is then used to create an equivalent mesh of pseudo-wires between those LSRs.
[013] VPLS MPLS packets have a two-label stack. The outer label is used for normal MPLS forwarding in the service provider's network. If Border Gateway Protocol (BGP) is used to establish the VPLS, the inner label is allocated by a LSR as part of a label block. If LDP is used, the inner label is a virtual circuit ID assigned by LDP when it first established a mesh between the participating LSRs. Every LSR keeps track of assigned inner label, and associates these with the VPLS instance.
[014] Proper security (and proper function if support is provided for an inner label on one VPN which matches an inner label on another VPN) requires that the inner label should only be handled when arriving at the LER with the appropriate outer label.
[015] Currently, an LER receiving a L3-VPN or VPLS packet processes the outer label and the inner label without regard for whether they are associated. The outer label is removed and the inner label is processed independently of the outer label. As a result of this handling, malicious packets can be sent into remote VLANs by selection of the appropriate outer label.
[016] As is evident, allowing labels malicious packets entry into remote VLANs is an undesirable aspect of these protocols. Summary of the Invention
[017] An object of the present invention is to provide a method for linking outer and inner labels within the processing of MPLS packets.
[018] According to an aspect of the present invention there is provided a method executed within a network equipment element to cause the network equipment element to process an MPLS packet having an outer label and an inner label, the method including the steps of: establishing a first database containing entries corresponding to valid outer labels; associating a key with each entry in the first database; establishing a second database containing entries corresponding to a combination of the key with valid inner labels and the appropriate actions associated with the valid inner labels; retrieving the associated key when the MPLS packet's outer label has a corresponding entry in the first database; and combining the associated key with the MPLS packet's inner label to generate a lookup entry value for the second database.
[019] The method could further include using the lookup entry value to check for a corresponding entry in the second database; and if no match is found then to drop the MPLS packet. Further, upon dropping the packet a security alarm may be flagged.
[020] Additionally, in some embodiments, the combining step could consist of appending the associated key to the MPLS packet's inner label. Alternatively, in other embodiments the combining step could consist of hashing the associated key to the MPLS packet's inner label.
[021] In some embodiments of the invention the said network equipment element would be one of either a Label Switched Router or a Label Edge Router.
[022] Advantages of the present invention include dropping malicious packets arriving with valid outer labels.
[023] In accordance with another aspect of the present invention there is provided an article of manufacture for use in programming a network equipment element to cause the network equipment element to process an MPLS packet having an outer label and an inner label, the article of manufacture comprising computer useable media accessible to the network equipment element, wherein the computer useable media includes at least one computer program that is capable of causing the network equipment element to perform the steps of: establishing a first database containing entries corresponding to valid outer labels; associating a key with each entry in the first database; establishing a second database containing entries corresponding to a combination of the key with valid inner labels and the appropriate actions associated with the valid inner labels; retrieving the associated key when the MPLS packet's outer label has a corresponding entry in the first database; and combining the associated key with the MPLS packet's inner label to generate a lookup entry value for the second database.
[024] Under some embodiments, the network equipment element may be a Label Switched Router, and in other embodiments a Label Edge Router.
Brief Description of the drawings
[025] The present invention will be further understood from the following detailed description of embodiments of the invention, with reference to the drawings in which:
[026] Fig. 1 illustrates a method for handling the two labels in an L3-VPN in accordance with the prior art; and
[027] Fig. 2 illustrates a method for handling the two labels in an L3-VPN in accordance with an embodiment of the present invention.
[028] To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures.
Detailed Description [029] Multi-Protocol Label Switching (MPLS) protocol assigns labels to packets for transport across a network. The labels are contained in an MPLS header inserted into the data packet
[030] These short, fixed-length labels carry the information that tells each network equipment element, for example an LER or LSR, how to process and forward the packets, from source to destination. They have significance only on a local network equipment element to network equipment element connection. As each network equipment element forwards the packet, it swaps the current label for the appropriate label to route the packet to the next network equipment element. This method enables very-high-speed switching of the packets through the core MPLS network.
[031] MPLS relies on traditional IP routing protocols to advertise and establish the network topology. MPLS is then overlaid on top of this topology. Since route planning occurs ahead of time and at the edge of the network (where the customer and service provider network meet), MPLS-labeled data requires less router horsepower to traverse the core of the MPLS network.
[032] MPLS networks establish Label-Switched Paths (LSPs) for data crossing the network. An LSP is defined by a sequence of labels assigned to nodes on the packet's path from source to destination. LSPs direct packets in one of two ways: hop-by-hop routing or explicit routing. In hop-by-hop routing, each MPLS router independently selects the next hop for a given Forwarding Equivalency Class (FEC). A FEC describes a group of packets of the same type; all packets assigned to a FEC receive the same routing treatment. In explicit routing, the entire list of network equipment elements traversed by the LSP is specified in advance. The path specified could be optimal or not, but is based on the overall view of the network topology and, potentially, on additional constraints, and is referred to as Constraint-Based Routing.
[033] As the network is established and signaled, each MPLS network equipment element builds a Label Information Base (LIB), a table that specifies how to forward a packet. This table associates each label with its corresponding FEC and the outbound port to forward the packet to. This LIB is typically established in addition to the routing table and Forwarding Information Base (FIB) that traditional routers maintain.
[034] Connections are signaled and labels are distributed among network equipment elements in an MPLS network using one of several signaling protocols, including Label Distribution Protocol (LDP) and Resource reservation Protocol with Tunneling Extensions (RSVP TE). Alternatively, label assignment can be piggybacked onto existing IP routing protocols such as BGP.
[035] The most commonly used MPLS signaling protocol is LDP. LDP defines a set of procedures used by MPLS network equipment elements to exchange label and stream mapping information. It is used to establish LSPs, mapping routing information directly to Layer 2 switched paths. It is also commonly used to signal at the edge of the MPLS network the critical point where non-MPLS traffic enters. Such signaling is required for establishing MPLS VPNs.
[036] MPLS allows multiple labels (called a label stack) to be carried on a packet. Label stacking enables MPLS network equipment elements to differentiate between types of data flows, and to set up and distribute LSPs accordingly. Relevant to embodiments of the present invention, a common use of label stacking is for establishing tunnels through MPLS networks for VPN applications.
[037] Referring now to Fig. 1 , there may be seen a flowchart depicting the normal steps for handling a multiple label packet arriving at an network equipment element. The method commences at 100.
[038] At 102 the outer label is retrieved from the MPLS packet. At 104 the LIB is consulted as to whether it has an entry corresponding to the outer label. If no entry corresponds then the method ends at 106. [039] If there is an entry for the outer label it is checked as to whether it is a POP action at 108. If the entry is not a POP action, then control passes to 110 to proceed with the appropriate action.
[040] If the entry is for a POP action, then the outer label is POPPED and the inner label is retrieved at step 112.
[041] At 114 the LIB is consulted as to whether there is an entry for the inner label. If no entry corresponds then the method ends at 116.
[042] If there is an entry for the inner label it is checked as to whether it is a POP action at 120. If the entry is not a POP action, then control passes to 122 to proceed with the proper action.
[043] If the entry is for a POP action, then the Virtual Routing Instance (VRI) is retrieved from entry corresponding to the label and the packet is routed accordingly at 124.
[044] By way of contrast, an embodiment according to the present invention adds an additional step in order to preclude malicious packet forwarding. As per normal operation of the protocol, the software or hardware processing the ingressing MPLS packets is provided with a database containing the labels and their respective actions. This label database is augmented so that entries for outer labels have an attribute that is used as a key when looking up the inner label. Having matched the outer label, the software or hardware takes the key associated with the outer label and hashes it to the inner label creating a new key. This hashing may be a simple appending or a more complex operation. The resulting new key is referenced in the table to resolve the inner label action. If no match is found, the packet is dropped (or used to detect a security issue).
[045] Referring to Fig. 2 there may be seen a flowchart depicting a method for handling the two labels in an L3-VPN in accordance with an embodiment of the present invention. The method commences at 200. (Note: for ease of reference corresponding steps between Fig. 1 and Fig. 2 carry corresponding reference numbers.) [046] At 202 the outer label is retrieved from the MPLS packet. At 204 the label database is consulted as to whether it has an entry corresponding to the outer label. If no entry corresponds then the method ends at 206.
[047] If there is an entry for the outer label it is checked as to whether it is a POP action at 208. If the entry is not a POP action, then control passes to 210 to proceed with the appropriate action.
[048] If the entry is for a POP action, then the outer label is POPPED and the inner label is retrieved at step 212. At 213 the outer label is used to retrieve a key from the database corresponding to the outer label.
[049] At 214 the key and inner label are combined and the database is consulted as to whether there is an entry for the combination of key and inner label. If no entry corresponds then the method ends at 216.
[050] If there is an entry for the combination of key and inner label it is checked as to whether it is a POP action at 220. If the entry is not a POP action, then control passes to 222 to proceed with the proper action.
[051] If the entry is for a POP action, then the Virtual Routing Instance (VRI) is retrieved from entry corresponding to the label and the packet is routed accordingly at 224.
[052] While the foregoing is directed to various embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof. As such, the appropriate scope of the invention is to be determined according to the claims, which follow.

Claims

Claims:
1. A method executed within a network equipment element to cause the network equipment element to process an MPLS packet having an outer label and an inner label, said method comprising:
establishing a first database containing entries corresponding to valid outer labels;
associating a key with each entry in said first database;
establishing a second database containing entries corresponding to a combination of said key with valid inner labels and appropriate actions associated with said valid inner labels;
retrieving said associated key when said outer label has a corresponding entry in said first database; and
combining said associated key with said inner label to generate a lookup entry value for said second database.
2. The method of claim 1 , further comprising:
using said lookup entry value to check for the corresponding entry in said second database; and
if no match is found, dropping said MPLS packet and flagging a security alarm.
if the match is found, retrieving and executing the associated action.
3. The method of claim 1 , wherein said combining step further comprises:
appending said associated key to said inner label.
4. A method as claimed in claim 1 wherein said combining step further comprises:
hashing said associated key to said inner label.
5. A method as claimed in claim 1 wherein said network equipment element comprises either a Label Switched Router or a Label Edge Router.
6. An article of manufacture for use in programming a network equipment element to cause the network equipment element to process an MPLS packet having an outer label and an inner label, the article of manufacture comprising computer useable media accessible to the network equipment element, wherein the computer useable media include at least one computer program that is capable of causing the network equipment element to perform:
establishing a first database containing entries corresponding to valid outer labels;
associating a key with each entry in said first database;
establishing a second database containing entries corresponding to a combination of said key with valid inner labels and appropriate actions associated with said valid inner labels;
retrieving said associated key when said outer label has a corresponding entry in said first database; and
combining said associated key with said inner label to generate a lookup entry value for said second database.
7. The article of manufacture of claim 6 further comprising:
using said lookup entry value to check for a corresponding entry in said second database; and
if no match is found, dropping said MPLS packet and flagging a security alarm.
if the match is found, retrieving and executing the associated action.
8. The article of manufacture of claim 6, wherein said combining step further comprises:
appending said associated key to said inner label.
9. The article of manufacture of claim 6, wherein said combining step further comprises:
hashing said associated key to said inner label.
10. The article of manufacture of claim 6, wherein said network equipment element comprises either a Label Switched Router or a Label Edge Router.
PCT/US2010/039402 2009-06-30 2010-06-22 Linking inner and outer mpls labels WO2011002629A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP10727629.7A EP2449733B1 (en) 2009-06-30 2010-06-22 Linking inner and outer mpls labels
JP2012518549A JP5426024B2 (en) 2009-06-30 2010-06-22 Connecting the inner MPLS label and the outer MPLS label
KR1020117031582A KR101318001B1 (en) 2009-06-30 2010-06-22 Linking inner and outer mpls labels
CN201080029204.8A CN102474451B (en) 2009-06-30 2010-06-22 Connecting inner and outer MPLS labels

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/495,423 US20100332516A1 (en) 2009-06-30 2009-06-30 Linking inner and outer mpls labels
US12/495,423 2009-06-30

Publications (1)

Publication Number Publication Date
WO2011002629A1 true WO2011002629A1 (en) 2011-01-06

Family

ID=42674580

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2010/039402 WO2011002629A1 (en) 2009-06-30 2010-06-22 Linking inner and outer mpls labels

Country Status (6)

Country Link
US (1) US20100332516A1 (en)
EP (1) EP2449733B1 (en)
JP (1) JP5426024B2 (en)
KR (1) KR101318001B1 (en)
CN (1) CN102474451B (en)
WO (1) WO2011002629A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013097231A1 (en) * 2011-12-31 2013-07-04 华为技术有限公司 File access method and system
JP2014512714A (en) * 2011-02-19 2014-05-22 ドイッチェ テレコム アーゲー MPLS path looping at the transfer level of connectionless MPLS networks

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8612626B2 (en) 2010-12-21 2013-12-17 Cisco Technology, Inc. Group member detection among nodes of a network
US8559431B2 (en) * 2010-12-22 2013-10-15 Cisco Technology, Inc. Multiple label based processing of frames
CN103051499B (en) * 2012-12-31 2015-11-25 华为技术有限公司 A kind of method and apparatus of detection messages
CN108259346B (en) 2017-01-25 2020-08-04 新华三技术有限公司 Equivalent routing table item establishing method and device
CN112787903B (en) * 2020-12-24 2022-03-11 郑州信大捷安信息技术股份有限公司 Multi-protocol VPN gateway fusion system and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1775908A1 (en) * 2005-10-12 2007-04-18 Juniper Networks, Inc. Checking for spoofed labels within a label switching computer network
US20080084881A1 (en) * 2006-10-10 2008-04-10 Pranav Dharwadkar Techniques for virtual private network fast convergence

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4110671B2 (en) * 1999-05-27 2008-07-02 株式会社日立製作所 Data transfer device
JP3779914B2 (en) * 2001-11-22 2006-05-31 アンリツ株式会社 Gateway apparatus and access method using the apparatus
US7941605B1 (en) * 2002-11-01 2011-05-10 Cisco Technology, Inc Methods and apparatus for generating a result based on a lookup result from a lookup operation using an associative memory and processing based on a discriminator portion of a lookup word
WO2004068314A2 (en) * 2003-01-27 2004-08-12 Raza Microelectronics, Inc. Method and device for the classification and redirection of data packets in a heterogeneous network
US7283529B2 (en) * 2003-03-07 2007-10-16 International Business Machines Corporation Method and system for supporting a dedicated label switched path for a virtual private network over a label switched communication network
JP2005080271A (en) * 2003-08-28 2005-03-24 Takeshi Aoki Method for configuring vpn making transmission destination vpn identification code into capsuled header for the purpose of connecting multiple vpns
KR20070064844A (en) * 2005-12-19 2007-06-22 엘지노텔 주식회사 Constraint based label switched path packet forwarding method in the mpls network
US8065393B2 (en) * 2006-02-24 2011-11-22 Cisco Technology, Inc. Method and system for obviating redundant actions in a network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1775908A1 (en) * 2005-10-12 2007-04-18 Juniper Networks, Inc. Checking for spoofed labels within a label switching computer network
US20080084881A1 (en) * 2006-10-10 2008-04-10 Pranav Dharwadkar Techniques for virtual private network fast convergence

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014512714A (en) * 2011-02-19 2014-05-22 ドイッチェ テレコム アーゲー MPLS path looping at the transfer level of connectionless MPLS networks
US9344346B2 (en) 2011-02-19 2016-05-17 Deutsche Telekom Ag Looping MPLS paths at forwarding level for connectionless MPLS networks
WO2013097231A1 (en) * 2011-12-31 2013-07-04 华为技术有限公司 File access method and system

Also Published As

Publication number Publication date
CN102474451A (en) 2012-05-23
CN102474451B (en) 2016-01-13
EP2449733A1 (en) 2012-05-09
US20100332516A1 (en) 2010-12-30
KR20120020188A (en) 2012-03-07
KR101318001B1 (en) 2013-11-21
EP2449733B1 (en) 2014-09-24
JP5426024B2 (en) 2014-02-26
JP2012532528A (en) 2012-12-13

Similar Documents

Publication Publication Date Title
CN110635935B (en) Using multiple EVPN routes for respective service interfaces of a user interface
Kompella et al. Virtual private LAN service (VPLS) using BGP for auto-discovery and signaling
US7710970B2 (en) Source identifier for MAC address learning
US6789121B2 (en) Method of providing a virtual private network service through a shared network, and provider edge device for such network
EP2351299B1 (en) Ethernet frame broadcast emulation
US7136374B1 (en) Transport networks supporting virtual private networks, and configuring such networks
JP3654168B2 (en) Interface identification device, interface identification method, and MPLS-VPN service network
US8713185B2 (en) Methods of establishing virtual circuits and of providing a virtual private network service through a shared network, and provider edge device for such network
EP2449733B1 (en) Linking inner and outer mpls labels
US20050265308A1 (en) Selection techniques for logical grouping of VPN tunnels
US20040177157A1 (en) Logical grouping of VPN tunnels
CN100442770C (en) Method for realizing muti-casting in BGP/MPLS VPN
US11575541B1 (en) Mapping of virtual routing and forwarding (VRF) instances using ethernet virtual private network (EVPN) instances
Kaur et al. MPLS technology on IP backbone network
Shawl et al. A Review: Multi Protocol Label Switching (Mpls)
Joseph et al. Network convergence: Ethernet applications and next generation packet transport architectures
Brittain et al. MPLS virtual private networks
He et al. Pure mpls technology
CN112737951B (en) End-to-end SR control method, system and readable storage medium in public and private network mixed scene
Kaur et al. Comparative analysis of WAN technologies
Bagalkot MULTI-PROTOCOL LABEL SWITCHING: ENHANCING NETWORK
Kompella et al. RFC 4761: Virtual Private LAN Service (VPLS) using BGP for auto-discovery and signaling
Farrel et al. MPLS VIRTUAL PRIVATE NETWORKS
Güngör Multi-Protocol Label Switching and MPLS VPN Solutions
Tanwer et al. Scaling service provider backbone using BGP confederations for next generation networks

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080029204.8

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10727629

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2012518549

Country of ref document: JP

ENP Entry into the national phase

Ref document number: 20117031582

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2010727629

Country of ref document: EP