US20140286195A1 - Service Instance Applied to MPLS Network - Google Patents

Service Instance Applied to MPLS Network Download PDF

Info

Publication number
US20140286195A1
US20140286195A1 US14/296,077 US201414296077A US2014286195A1 US 20140286195 A1 US20140286195 A1 US 20140286195A1 US 201414296077 A US201414296077 A US 201414296077A US 2014286195 A1 US2014286195 A1 US 2014286195A1
Authority
US
United States
Prior art keywords
mpls network
mpls
network element
label
node
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US14/296,077
Inventor
Donald Fedyk
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RPX Clearinghouse LLC
Original Assignee
Rockstar Consortium US LP
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
Priority to US11455808P priority Critical
Priority to US12/412,589 priority patent/US8811388B2/en
Application filed by Rockstar Consortium US LP filed Critical Rockstar Consortium US LP
Priority to US14/296,077 priority patent/US20140286195A1/en
Publication of US20140286195A1 publication Critical patent/US20140286195A1/en
Assigned to RPX CLEARINGHOUSE LLC reassignment RPX CLEARINGHOUSE LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BOCKSTAR TECHNOLOGIES LLC, CONSTELLATION TECHNOLOGIES LLC, MOBILESTAR TECHNOLOGIES LLC, NETSTAR TECHNOLOGIES LLC, ROCKSTAR CONSORTIUM LLC, ROCKSTAR CONSORTIUM US LP
Application status is Abandoned legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1886Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance or administration or management of packet switching networks
    • H04L41/12Arrangements for maintenance or administration or management of packet switching networks network topology discovery or management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/026Details of "hello" or keep-alive messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/10Routing in connection-oriented networks, e.g. X.25, ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/30Special provisions for routing multiclass traffic
    • H04L45/306Route determination based on the nature of the carried application
    • 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/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • H04L45/507Label distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/68Pseudowire emulation, e.g. IETF WG PWE3

Abstract

Domain-wide unique node identifiers and domain-wide unique service identifiers are distributed within a MPLS domain using routing system LSAs. Nodes on the MPLS network compute shortest path trees for each destination and install unicast forwarding state based on the calculated trees. Nodes also install multicast connectivity between nodes advertising common interest in a common service identifier. Rather than distributing labels to be used in connection with unicast and multicast connectivity, the nodes deterministically calculate the labels. Any number of label contexts may be calculated. The labels may either be domain wide unique per unicast path or per multicast, or may be locally unique and deterministically calculated to provide forwarding context for the associated path. Multicast and unicast paths may be congruent, although this is not a requirement.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. patent application Ser. No. 12/412,589, filed Mar. 27, 2009, which claims priority to U.S. Provisional Patent Application Ser. No. 61/114,558 filed Nov. 14, 2008, the content of each of which is hereby incorporated herein by reference.
  • TECHNICAL FIELD
  • The present invention relates to communication networks and, more particularly, to a method and apparatus for enabling a notion of service instance to be applied to MPLS networks.
  • BACKGROUND
  • Data communication networks may include various switches, routers, hubs, and other devices coupled to and configured to receive data and forward the data on the network. These devices will be referred to herein as “network elements.” A network element is generally not a consumer of the data, but rather is used to receive and forward data so that the data may pass through the network. Data is communicated through a network by enabling the network elements to pass protocol data units, such as frames, packets, cells or segments, between each other over communication links. A particular protocol data unit may be handled by multiple network elements and cross multiple communication links as it travels between its source and its destination over the network.
  • The various network elements on the communication network communicate with each other using predefined sets of rules, referred to herein as protocols. Different protocols are used to govern different aspects of the communication, such as how signals should be formed for transmission between the network elements, various aspects of what the protocol data units should look like, how protocol data units should be handled or routed through the network by the network elements, and how information such as routing information should be exchanged between the network elements.
  • In Ethernet network architectures, devices connected to the network compete for the ability to use shared telecommunications paths at any given time. Where multiple bridges or nodes are used to interconnect network segments, multiple potential paths to the same destination often exist. The benefit of this architecture is that it provides path redundancy between bridges and permits capacity to be added to the network in the form of additional links. However to prevent loops from being formed, a spanning tree was generally used to restrict the manner in which traffic was broadcast on the network. Since routes were learned by broadcasting a frame and waiting for a response, and since both the request and response would follow the spanning tree, most if not all of the traffic would follow the links that were part of the spanning tree. This often led to over utilization of the links that were on the spanning tree and underutilization of the links that weren't part of the spanning tree.
  • To overcome some of the limitations inherent in Ethernet networks, a Provider Link State Bridging network (one example of a link state protocol controlled Ethernet network) was disclosed in application Ser. No. 11/537,775, filed Oct. 2, 2006, entitled “Provider Link State Bridging,” the content of which is hereby incorporated herein by reference. PLSB is further described in U.S. patent application Ser. No. 11/702,263, filed Feb. 5, 2007, entitled MULTICAST IMPLEMENTATION IN A LINK STATE PROTOCOL CONTROLLED ETHERNET NETWORK, the content of which is hereby incorporated herein by reference.
  • PLSB uses a link state protocol such as Intermediate System to Intermediate System (ISIS) to enable the network elements to exchange link state routing information. The nodes use the link state routing information to compute shortest paths through the network. Because shortest path routing is used, a shortest path tree may be computed from each source node to avoid the use of the Spanning Tree Protocol, so that link utilization may be increased on the network.
  • MPLS networks may be built on Ethernet networks or other communication networks. In an MPLS network, a signaling protocol is used to establish label switched paths through the network, so that traffic may be forwarded across the network on any desired path. In operation, an ingress node (label edge router or LER for short) will receive a packet and determine which path the packet should take through the network. The LER will apply an outer label to the packet and forward it on the Label Switched Path (LSP). Label Switch Routers (LSRs) on the LSP will receive the packet, remove the outer label, use the outer label to determine a next hop for the packet, apply a new outer label to the packet, and forward the packet on the network to the next hop. This outer label will thus be replaced at each hop as the packet passes through the network until the packet reaches its destination.
  • MPLS establishes unicast connectivity everywhere by establishing Label Switched Paths between pairs of nodes on the MPLS network. Setup of the label switched paths requires labels to be distributed to each of the nodes on the path, so that the nodes can agree on what labels will be used to enable the packet to follow the path through the network. One protocol that is commonly used to establish label switched paths through an MPLS network is commonly referred to as Label Distribution Protocol (LDP), although other signaling protocols have been developed as well. Using a signaling mechanism, labels are established along the label switched paths so that label switch routers can read a label, determine an output for the packet based on the label, and apply a new label to forward the packet along the path through the network. The signaling protocol is used to install the labels and other appropriate forwarding state for the traffic along the path. The Label Switched Paths define unicast connectivity on the MPLS network, which is generally set up in advance indiscriminately.
  • MPLS also has several different types of labels that are commonly used. Generally, an outer label will be used to define the forwarding context for a particular packet. This label is often replaced hop-by-hop as the packet traverses across the network. Once the packet has reached an area where the forwarding context is implicit, this outer label may be popped off the packet which is commonly referred to as pentultimate hop popping. Forwarding context is commonly deemed implicit at least one hop away from the final destination of the packet and, hence, the term pentultimate has been used to refer to this process. However, the outer label may be removed at any point along the network path where the route becomes implicit. The outer labels are node-specific, which means that they have meaning to a particular node on the network. The outer labels are not globally unique values, but rather may be reused at different parts of the network.
  • MPLS enables multiple labels to be stacked onto a given packet. Frequently, as mentioned above, the outer label is used to specify forwarding context for the packet. An inner label (Pseudo Wire label) is frequently used to enable the nodes to demultiplex the packet at the egress from the Label Switched Path. To do this, the destination node will assign a Pseudo Wire label for each service instance being handled by that destination node. The destination also will then instruct the other nodes on the network to apply the Pseudo Wire labels to the packets when they enter the network, so that the egress node can use the inner MPLS Pseudo Wire label to determine how to forward the packet. Thus, the egress node will assign Pseudo Wire labels to its service instances and coordinate with the ingress nodes to apply those Pseudo Wire labels to traffic entering the network. Like the outer labels, the inner Pseudo Wire labels are not network unique, but rather are only unique to the particular egress node. Use of inner labels enables many different flows of data to be multiplexed for transmission over a given LSP on the MPLS network.
  • In operation, a LER will apply both the inner Pseudo Wire label and the outer forwarding label to a packet at the ingress to the MPLS network. The outer label will be used to forward the packet across the network and the inner label may be used by the destination node to forward the packet off the MPLS network. This enables a single lookup to be performed by the ingress LER and enables label switching to be used to forward the packet across the MPLS network and, by the destination node, off of the MPLS network e.g. to a client network.
  • Once unicast connectivity has been established, through the establishment of a full set of LSPs through the network, multicast connectivity may be built on top of the MPLS network. Unfortunately, building multicast connectivity requires use of a different signaling protocol, which makes multicast slower to set up and more error prone. For example, nodes use a protocol such as Internet Group Management Protocol (IGMP) to join and leave multicast groups, which causes the nodes to add nodes and remove nodes from the multicast tree. As nodes join and leave multicast groups, multicast connectivity is built on the MPLS nodes. Destination nodes that would like to subscribe to the multicast send out a join message and the intermediate nodes use the join messages to determine whether forwarding state should be added for the particular multicast. Building multicast trees one at a time in this manner is time consuming and computationally intensive. Accordingly, it would be advantageous to provide a new way to implement multicast on an MPLS network.
  • SUMMARY OF THE INVENTION
  • Domain-wide unique node identifiers and domain-wide unique service identifiers are distributed within a MPLS domain using routing system LSAs. Nodes on the MPLS network compute a shortest path tree for each other node and install unicast forwarding state for each node based on the domain-wide unique node ID. Nodes also install multicast connectivity between nodes advertising common interest in a service identifier. Rather than distributing labels to be used in connection with unicast and multicast connectivity, the nodes deterministically create the labels. The labels may either be domain wide unique per unicast path or per multicast, or may be locally unique and deterministically calculated to provide forwarding context for the associated path. Any number of labels may be used, although in one embodiment at least two label contexts are used—one per service and one per source for multicast, and one per service and one per destination for multicast. More labels may be used as well as long as they are deterministically calculated.
  • When a packet is received at the MPLS network, the label edge router will determine the destination of the packet on the MPLS network and apply a label to the packet. Where the label is domain-wide unique, the nodes on the MPLS network will forward the packet o the destination without swapping labels at each hop on the network. Where the label is not domain-wide unique, the nodes may perform label swapping to forward the packet across the network. Multicast and unicast paths may be congruent, although this is not a requirement.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Aspects of the present invention are pointed out with particularity in the appended claims. The present invention is illustrated by way of example in the following drawings in which like references indicate similar elements. The following drawings disclose various embodiments of the present invention for purposes of illustration only and are not intended to limit the scope of the invention. For purposes of clarity, not every component may be labeled in every figure. In the figures:
  • FIG. 1 is a functional block diagram of an example MPLS communication network illustrating advertisement of domain-wide unique node identification by example MPLS node L;
  • FIG. 2 is a functional block diagram of the example MPLS communication network of FIG. 1, showing example unicast connectivity established to one of the MPLS nodes to enable all nodes on the MPLS network to forward unicast traffic to that MPLS node;
  • FIG. 3 is a functional block diagram of the example MPLS communication network of FIG. 1, showing advertisement of interest in a common service instance by several MPLS nodes;
  • FIG. 4 is a functional block diagram of the example MPLS communication network of FIG. 1, showing example multicast connectivity established between the MPLS nodes that have advertised interest in the common service instance;
  • FIG. 5 is a flow chart of a process that may be used to establish unicast connectivity on a MPLS network such as the example MPLS network shown in FIGS. 1-4;
  • FIG. 6 is a flow chart of a process that may be used to establish multicast connectivity on a MPLS network such as the example MPLS network shown in FIGS. 1-4; and
  • FIG. 7 is a functional block diagram of an example MPLS node that may be used to implement an embodiment of the invention.
  • DETAILED DESCRIPTION
  • FIG. 1 shows an example MPLS communication network that will be used to explain implementation of an embodiment of the invention. In the embodiment shown in FIG. 1, the MPLS communication network 10 has a plurality of nodes 12 interconnected by links 14. MPLS networks typically run a link state routing protocol such as Open Shortest Path First (OSPF) or Intermediate System to Intermediate System (IS-IS). The routing system enables nodes to send out advertisements to notify the other nodes of the state of the links to which they are connected. These advertisements will be referred to herein as Link State Advertisements (LSAs.). Generally, a LSA will identify not only the node but also its adjacencies. The node listens for LSAs and uses the information contained in the LSAs to build a common view of the topology of the MPLS network, which is stored in the node's Link State Data Base (LSDB). The nodes may then use the Link State Data Base to calculate routes through the MPLS network as required.
  • In one embodiment, the nodes use the LSA to transmit a domain-wide unique node identification value, referred herein as a “node identifier” or “node ID”. The node ID is unique within the domain and is deterministic. The Node ID is used for source and destination identification. In one embodiment, the node ID is a MPLS label that can be used by any other node on the network to forward unicast traffic to the node associated with that node ID. For unicast traffic, the label identifies the destination on the network and, for example, may identify the destination node. For multicast, by contrast, the label is specified by the source node and uniquely identifies the MPLS service instance on the MPLS network. Any number of labels may be used, although in one embodiment at least two label contexts are used—one per service and one per source for multicast, and one per service and one per destination for multicast. More labels may be used as well as long as they are deterministically calculated.
  • Nodes on the network distribute unique service instances which are used to compute and install forwarding state. Unicast forwarding state is based on a service instance that terminates at the destination node, whereas multicast forwarding state is based on a service instance that originates at a source node. Unicast forwarding state is installed for the unicast service instance from every node to the intended destination node along shortest path trees to the destination node. Multicast forwarding state is installed from the source node to any other node advertising a common interest in the service instance. By basing connectivity on domain-wide unique service instance values, both unicast and multicast connectivity may be established by the nodes in the same way. Additionally, since interest in service instances may be advertised using the routing system, a separate signaling protocol is not required to establish unicast or multicast connectivity on the MPLS network. Forwarding state may be computed deterministically as well, to avoid the use of a label distribution protocols for label distribution. Thus, both multicast and unicast connectivity may be established based on service instances, and the necessary forwarding state for the service instances may be computed rather than signaled. This allows the routing protocol to be used and eliminates the need for several other protocols that are commonly used on MPLS networks.
  • In one embodiment, the node ID may be used as an outer label to enable traffic to be forwarded to the destination node on the MPLS network. In this embodiment, since the node ID is domain-wide unique, the nodes on the MPLS network may install forwarding state such that any packet labeled with the Node-ID will be switched along the shortest path tree toward the destination. In this embodiment there is no reason for the nodes to switch the label as the packet traverses the network; rather the same label may be used at each hop so that coordination between nodes on the paths is not required to enable traffic to be forwarded through the MPLS network.
  • In another embodiment, rather than using a domain-wide unique label value for unicast traffic to a destination, the nodes on the network may deterministically create labels to be used to forward data toward each destination on the network. As noted above, each node on the network has a synchronized view of the network topology and will calculate shortest path tree for each node on the network. As part of this calculation, the node may calculate what label should be used to forward traffic on the shortest path tree. Likewise, the node may calculate what labels its neighbors will use when forwarding traffic on the tree to the destination. The nodes may install forwarding state for these labels so that the label space may be reused on the network. However, since the labels are computed rather than signaled, the nodes are not required to use LDP or another label signaling protocol to establish LSPs on the network.
  • For example, in FIG. 1 node L has transmitted a Link State Advertisement 16 containing a MPLS Label which will serve as Node L's Node ID on the MPLS network. As shown in FIG. 2, the nodes on the MPLS network will use the network topology from the routing system to determine a shortest path tree 18 to each node on the network. The shortest path tree is shown using darker lines in FIG. 2. When the nodes receive a Link State Advertisement containing a node ID, the nodes on the MPLS network will use the routing system to calculate a shortest path tree to the node that transmitted the advertisement. Nodes on the network will also calculate labels to be used to forward traffic along the tree to the node install forwarding state into its forwarding database to enable it to forward packets with the computed MPLS labels to the node. In one embodiment, the node ID may be the label, which may be used by all nodes on the network to forward MPLS traffic toward the node. In this embodiment the nodes will not need to perform label swapping but may simply forward traffic tagged with the Node ID MPLS label toward the destination node. This requires the MPLS label to be domain-wide unique. In another embodiment, if domain-wide unique MPLS labels are not used, the nodes may calculate the labels to be used to forward the traffic and install forwarding state based on the computed labels. In either embodiment, signaling is not required to exchange labels on the network.
  • In FIG. 1, node L has transmitted a link state advertisement containing node ID=L. The node ID is a MPLS label. Each node will determine if it is on a shortest path tree to node L and, if so, install forwarding state to cause traffic to be forwarded on the tree toward node L. The label may be domain-wide unique and consistent across the network or different labels may be calculated by the nodes and then swapped as the traffic is forward toward the destination.
  • In operation, when a packet arrives at the edge of the network, the label edge router may perform a lookup and determine that the packet should be forwarded to node L on the network. The label edge router will then attach the label for node L (Node L's node ID) to the packet and forward the packet onto the MPLS network. Each node on the MPLS network has forwarding state that will enable the node to forward the packet on the shortest path tree toward node L.
  • For example, if node A receives a packet 20, it will perform a lookup to determine how to forward the packet on the network. In this example, node A will determine that the packet should be forwarded to node L. Node A will attach a MPLS label 22 to the packet that identifies node L and forward the packet on the network. Node E will receive the packet, read the label 22, and forward the packet to node H. Note, in this example, that node E does not replace the label but rather uses the same label. Each MPLS node on the network will perform this same process of reading the label 22 and then reapplying the same label to enable the packet to use the same label at each hop on the network. Optionally the label 22 may be popped at the last node H, or elsewhere on the network where forwarding is implicit, in a manner similar to pentultimate hop popping. This embodiment provides relatively simple operation from a label calculation standpoint, since each node uses the same label to forward the traffic to the destination. The invention is not limited in this manner as other label calculation processes may be used as well that will enable the nodes to calculate the labels to be used to forward traffic on the MPLS paths.
  • Transmitting a domain-wide unique node ID in the form of an MPLS label, and then using the routing system to install forwarding state for that label/node binding, enables unicast connectivity to be established on the MPLS network without requiring separate label switched paths to be signaled on the network. Typically, the node L would need to establish separate label switched paths with each of the other nodes on the network. By using the routing system to establish unicast connectivity, traditional LSP signaling may be eliminated.
  • Multicast connectivity may also be implemented by introducing a notion of a service instance to the MPLS network. As used herein, the term “service instance” will be used to refer to a multicast or unicast group of interest. Nodes on the network may advertise interest in a service instance using a routing system link state advertisement. The service instance, like the Node ID, is a MPLS label and is a domain-wide unique value. Nodes on a service instance advertise their interest in the service instance using IS-IS LSAs. Whereas the node ID identifies the destination node, in a multicast context the service identifier identifies the source of the multicast.
  • When a node on the MPLS network receives a LSA containing a service instance, it will determine whether it is on a shortest path between a node advertising interest in the service ID and the source node associated with the service instance. Any node that is on a shortest path between the source of the multicast and another node advertising common interest in the same service instance will install forwarding state for the service instance in their forwarding database. Since the service instance is a MPLS label, installing forwarding state for the service instance will enable the node to forward any packets tagged with the service instance label on the shortest path through the MPLS network. Thus, MPLS multicast connectivity may be created simply by causing nodes to advertise interest in the service instance. The MPLS nodes on the network may then create the paths for the multicast tree deterministically, without requiring the multicast tree to be separately signaled on the network. Thus, MPLS multicast may be established at the same time as unicast and using the same mechanisms, without requiring the use of LDP or other protocol to exchange labels, and without requiring the use of a separate multicast group management protocol such as IGMP.
  • For example, in FIG. 3 assume that service instance 100 will be a multicast flow of traffic originating at node L. Node L will advertise interest in the service instance=100 so that all nodes on the network know that node L is the source of a multicast with service ID=100. The service instance ID is the multicast label that node L will use to transmit multicast traffic on to the MPLS network.
  • In the example shown in FIG. 3, assume that Node A and Node D would like to receive the multicast traffic associated with service instance=100. Each of these nodes will transmit a link state advertisement containing the service ID of the multicast that they are interested in joining. Accordingly, nodes A and D will transmit a LSA containing service ID=100. The link state advertisement will be flooded on the MPLS network. Each node that receives the link state advertisement will look to see whether it is on a shortest path between the source of the multicast and a leaf node advertising common interest in the same service instance. Node E, for example, will determine that it is on a shortest path between node A and node L and install forwarding state for the multicast label associated with the service instance into its forwarding table. Similarly, node H will determine that it is on a shortest path between node A and node L, and that it is on a shortest path between node D and node L. Accordingly, node H will install forwarding state to cause traffic received from node L to be replicated and output over two ports—one port to D and one port to A. The example multicast tree is shown using thicker lines in FIG. 4.
  • Each node on the network will calculate service labels for the multicast and install forwarding state for the multicast as appropriate. The multicast may use a domain-wide unique multicast MPLS label that uniquely identifies the multicast on the MPLS network. In this embodiment the nodes are not required to perform label swapping but may rather all install forwarding state for the domain-wide unique MPLS label. Alternatively, the nodes may calculate labels to be used for the multicast and install forwarding state for the calculated labels.
  • When node L receives a packet that is associated with the multicast, it will attach a label 24 to the packet to identify the packet as part of service instance 100. Optionally, the node may also attach a second label identifying the source node (using the source Node ID) and use that as an outer label. Once the label(s) have been applied, node L will then forward the multicast packet on the network. When node H receives the packet, it will read the label and perform a lookup to determine over which port or ports it should forward the packet. Node H will determine that it should forward the packet towards Node E and Node D, and will replicate the packet and output the packet on ports toward those nodes. If a globally unique label is being used for the service instance, node H will apply the same label to the packet as was attached to the packet when it arrived so that the packet will use the same label at each hop on the network. Otherwise, if labels have been calculated deterministically, the node will swap the original label for the new label before forwarding the packet on the network. Where forwarding state is implicit, such as on the link between node H and node D, the label may be popped. Forwarding may be performed based on the service label alone or based on the combination of service label and source label where a source label is used.
  • According to an embodiment of the invention, the service labels used to create multicast and unicast paths are computed deterministically. This enables the MPLS paths to be created without requiring the paths to be signaled using a separate signaling protocol—the routing protocol is able to be used to set up and tear down the paths. In one embodiment, MPLS multicast uses a label space for every root of the tree. When it does that it uses an upstream defined label. The source must be advertised by a unique identifier that fits in an MPLS label space of 20 or less bits. The label space is identified by a context which may be an outer label. A node can compute an outer label space per source node out of the per platform space. Each node computes a node identifier so that a node identifier is created on all destinations.
  • Multicast operation: Multicast packets include two labels: an outer label from per platform space that is the same on all nodes, and an inner label which provides source “node identifier”. The inner label is a domain-wide label. The inner label is based on a per source basis and only installed on nodes in the domain that support this multicast tree. The domain wide unique inner label is based on “service identifier”.
  • All nodes do all pairs shortest path computation creating a tree from each source. When a node lies on the shortest path between two destinations advertising interest in a particular service instance, the node installs a label space for the source node and each service identifier that goes through the node.
  • The forwarding operation includes reading the MPLS multicast context and then looking up the per source label space based on the node identifier. The outer label may be removed, but the second (inner) label determines the set of egress ports. The outer label may be added back and the packet is replicated for each outgoing port.
  • Unicast operation: Unicast packets similarly include the same two labels. The outer label is a Domain wide unique label based on destination “node identifier”. Alternatively, the labels on the unicast path may be computed deterministically. The inner label is based on a per destination basis and is only examined on egress.
  • All inner and outer labels and/or label contexts are distributed via ISIS. All nodes do all pairs shortest path computation creating a tree from each source. When a node lies on the shortest path between two destinations the node installs a destination label for the destination node provided there is a service identifier in common. Service identifiers may be identified as sources or sinks in the control plane and therefore can create unidirectional traffic. Services may combine multiple service identifiers. Service Identifiers may be associated with unique topology identifiers.
  • Optionally, in one embodiment, unicast paths will be congruent with multicast, provided all computations are uniquely deterministic. The invention is not limited in this manner, however, as different processes of determining paths through the network may be used for unicast than are used for multicast. While shortest path trees have been used, this works for all forms of trees that are deterministic. Thus, other types of deterministic trees may be used instead of shortest path trees. Additionally, multipath is available if some of the “node identifier” label bits are used to identify different paths creating identifiers for equal trees.
  • Traffic engineered MPLS could use labels similar to Multicast labels that define point to point or point to multipoint labels. The service label space must split to allow traffic engineered services. Service labels can be defined as sources and sinks and also as traffic engineered or not traffic engineered. Additional information about bandwidth and paths would have to be advertised in the link state advertisements to enable the traffic engineered paths to be set up across the network.
  • The organization of Service identifier which is for both multicast and unicast, and then mapping the services at the edge to these groups, provides a multicast enabled topology from the start, rather than as an afterthought.
  • Creating Service instances allows the multicast service to be described such that simplified signaling (i.e. using ISIS Link State Advertisements) is all that is needed. Moving all advertising of service groups to link state allows the model to move from the current model of signaling, to one of computation, enabling fast convergence with no signaling. MPLS currently uses label distribution protocols to create label switched paths. By using service instances, it is possible to eliminate label distribution signaling to provide an Ethernet-like service model, with tailorable multicast and unicast, and ensure proper connectivity of Ethernet PBB services by an MPLS core.
  • FIG. 5 shows a flowchart of a process of establishing unicast connectivity on an MPLS network according to an embodiment of the invention. As shown in FIG. 5, nodes on the MPLS network exchange link state routing advertisements (100) to enable each node to have a synchronized view of the network topology. Each node on the network is assigned a domain-wide node ID (MPLS label) that will be used to forward unicast traffic to that node (102). The nodes advertise their node ID using a link state advertisement (104) and nodes on the network compute the shortest path tree to each node (106). The nodes will then install forwarding state on the shortest path tree, to enable unicast traffic containing the destination node ID as a label to be forwarded on shortest path tree to the destination (108). The node ID may be used on the forwarding label or the node may deterministically compute the forwarding labels that will be used by the upstream node on the tree and to deterministically compute the forwarding label that it should use to forward traffic toward the destination. When a packet is received at the ingress to the MPLS network, a destination based label will be attached to the packet (110). This label will be based on the destination node ID. The ingress node will then forward the packet onto the MPLS network and the nodes on the shortest path tree will forward the packet across the MPLS network to the egress node (112).
  • FIG. 6 is a flowchart of a process of establishing multicast connectivity on an MPLS network according to an embodiment of the invention. As shown in FIG. 6, a domain-wide service identifier is assigned to each multicast to be carried on the MPLS network (120). Each node that wants to participate in a multicast advertises the service identifier using a link state routing advertisement (122). Nodes use pre-computed shortest path trees to determine whether they are on a shortest path between the multicast source and one or more of the nodes advertising interest in the multicast (124). Any node on a shortest path between two nodes advertising a common interest in the same service instance will install forwarding state for that service instance (126). When traffic arrives to be carried on the multicast tree, the ingress node will attach a multicast service label to each packet and forward the packets onto the MPLS network (128). The nodes on the MPLS network will use the forwarding state for the multicast to selectively forward the multicast traffic on the MPLS network from the source node to the other nodes interested in receiving that traffic (130).
  • FIG. 7 shows a functional block diagram of an example MPLS network element. As shown in FIG. 7, the MPLS network element includes a routing function 70 that receives link state advertisements from other nodes and uses the link state advertisements to generate a link state database 72. The link state database contains information about the network topology and is used by the network element to calculate shortest path trees rooted at each node of the network.
  • According to an embodiment of the invention, the routing function also receives label information from the link state advertisements and uses the label information to program a forwarding function 74. The label information includes node identifiers, which are labels identifying the nodes on the network, and service identifiers, which are labels identifying service instances on the network.
  • When the routing function receives a link state advertisement containing a node ID, it will install forwarding state into the forwarding function to enable traffic labeled with the node ID to be forwarded to the correct output port, so that the traffic will follow the shortest path tree to the destination node on the network. In operation, the forwarding function will read the label to determine the next hop for the traffic and forward the traffic to a queuing function 76 for the appropriate port that is connected to the determined next hop. The service label may be applied by the forwarding function or the queuing function before the packet is transmitted.
  • When the routing function receives a link state advertisement containing a service ID, it will update its link state database to include an association between the service ID and the node which issued the link state advertisement. The routing function will also search its link state database for other nodes that have also advertised interest in the same service ID. The node will then install forwarding state for the service instance into the forwarding function whenever the node is on a shortest path tree between two nodes advertising a common interest in the same service instance.
  • Where the network element 12 is a label edge router, the routing function can also maintain a label database 78 that will be used by an encapsulating function 80 to label traffic as it arrives on the network. When a packet arrives at the network element 12 from outside of the MPLS network, the packet will be classified and a label will be attached. Where the packet is a unicast packet, a destination label will be obtained for the unicast packet and added by the encapsulation function. Where the packet is a multicast packet, a source based multicast label will be obtained for the multicast packet and added by the encapsulation function. Optionally, the encapsulation function may also add one or more inner labels to the packet. The encapsulated packet will then be sent to the forwarding function to be forwarded out the appropriate port onto the MPLS network.
  • The functions described above may be implemented as a set of program instructions that are stored in a computer readable memory and executed on one or more processors on the computer platform. However, it will be apparent to a skilled artisan that all logic described herein can be embodied using discrete components, integrated circuitry such as an Application Specific Integrated Circuit (ASIC), programmable logic used in conjunction with a programmable logic device such as a Field Programmable Gate Array (FPGA) or microprocessor, a state machine, or any other device including any combination thereof. Programmable logic can be fixed temporarily or permanently in a tangible medium such as a read-only memory chip, a computer memory, a disk, or other storage medium. All such embodiments are intended to fall within the scope of the present invention.
  • It should be understood that various changes and modifications of the embodiments shown in the drawings and described in the specification may be made within the spirit and scope of the present invention. Accordingly, it is intended that all matter contained in the above description and shown in the accompanying drawings be interpreted in an illustrative and not in a limiting sense.

Claims (20)

What is claimed is:
1-19. (canceled)
20. A first Multi-Protocol Label Switching (MPLS) network element for use in an MPLS network, the MPLS network element comprising:
at least one communication interface;
at least one processor coupled to the communication interface; and
at least one storage element storing instructions for execution by the at least one processor, the instructions comprising:
instructions executable to receive routing advertisements from other network elements in the MPLS network;
instructions executable to develop a view of a topology of the MPLS network from the received routing advertisements;
instructions executable to receive from a second MPLS network element on the MPLS network, a service identifier in one of the routing advertisements; and
instructions executable to determine from the view of the topology of the MPLS network, whether the MPLS network element is on a shortest path tree rooted at the second MPLS network element;
instructions executable when the MPLS network element is on the shortest path tree rooted at the second MPLS network element to install forwarding state for the service identifier, the forwarding state comprising:
a first locally computed label to be used by the MPLS network element to forward traffic on the shortest path tree toward a destination; and
a second locally computed label to be used by a neighbor MPLS network element to forward traffic on the shortest path tree toward the destination.
21. The first MPLS network element of claim 20, wherein the service identifier is unique within a domain of the MPLS network.
22. The first MPLS network element of claim 21, wherein the service identifier is a network element node Identifier which is unique within the domain of the MPLS network.
23. The first MPLS network element of claim 21, wherein the network element node identifier is an MPLS label which is unique within the domain of the MPLS network.
24. The first MPLS network element of claim 23, configured to forward unicast traffic to the second network element on the MPLS network using the MPLS label which is unique within the domain of the MPLS network.
25. The first MPLS network element of claim 24, configured, if the first MPLS network element installs forwarding state for the service identifier, to install forwarding state for the MPLS label such that any packet received by the first MPLS network element containing the MPLS label will be forwarded toward the second MPLS network element.
26. The first MPLS network element of claim 21, configured to calculate the MPLS label by determining an MPLS label that is unique within the domain of the MPLS network and that may be used to forward traffic associated with the service instance.
27. The first MPLS network element of claim 26, wherein the MPLS label is a unicast label associated with the destination node on the MPLS network.
28. The first MPLS network element of claim 26, wherein the MPLS label is a multicast label associated with a source of a multicast.
29. The first MPLS network element of claim 20, configured to calculate MPLS labels by calculating labels to be used to forward traffic associated with the service instance in a deterministic manner.
30. The first MPLS network element of claim 20, configured to determine whether to install MPLS forwarding state for a service identifier by:
determining whether the service identifier has been advertised by both the second MPLS network element and a third MPLS network element on the MPLS network; and
if the service identifier has been advertised by both the second MPLS network element and a third MPLS network element on the MPLS network, determining whether the first MPLS network element is on a forwarding path between second MPLS network element and the third MPLS network element.
31. The first MPLS network element of claim 20, configured to send routing advertisements to neighboring network element of the MPLS network.
32. The first MPLS network element of claim 31, configured to send the routing advertisements using a link state routing protocol in use on the MPLS network.
33. The first MPLS network element of claim 20, wherein the instructions comprise:
instructions executable to receive routing advertisements from other network elements in the MPLS network indicating interest in a multicast service instance; and
instructions executable to install MPLS forwarding state for the multicast service instance when the first MPLS network element is on a shortest path between two other network elements advertising interest in the multicast service instance, the MPLS forwarding state comprising:
a first locally computed label to be used by the MPLS network element to forward traffic associated with the multicast service instance; and
a second locally computed label to be used by a neighbor MPLS network element to forward traffic associated with the multicast service instance.
34. The first MPLS network element of claim 33, wherein the forwarding state comprises a label associated with the multicast service instance, the label being unique within a domain of the MPLS network so that labels are not required to be signaled on the MPLS network to enable forwarding information to be installed by network elements on the MPLS network.
35. The first MPLS network element of claim 33, wherein the forwarding state comprises a label associated with the multicast service instance which is not unique within a domain of the MPLS network, but is deterministically calculated by each of the MPLS network elements on the MPLS network, so that labels are not required to be signaled on the MPLS network to enable forwarding information to be installed by MPLS network elements on the MPLS network.
36. A non-transitory processor readable storage medium storing instructions for execution by at least one processor of a first Multi-Protocol Label Switching (MPLS) network element in an MPLS network, the instructions comprising:
instructions executable to receive routing advertisements from other network elements in the MPLS network;
instructions executable to develop a view of a topology of the MPLS network from the received routing advertisements;
instructions executable to receive from a second MPLS network element on the MPLS network, a service identifier in one of the routing advertisements; and
instructions executable to determine from the view of the topology of the MPLS network, whether the MPLS network element is on a shortest path tree rooted at the second MPLS network element;
instructions executable when the MPLS network element is on the shortest path tree rooted at the second MPLS network element to install forwarding state for the service identifier, the forwarding state comprising:
a first locally computed label to be used by the MPLS network element to forward traffic on the shortest path tree toward a destination; and
a second locally computed label to be used by a neighbor MPLS network element to forward traffic on the shortest path tree toward the destination.
37. The medium of claim 36, wherein the instructions comprise instructions executable to determine whether to install MPLS forwarding state for a service identifier by:
determining whether the service identifier has been advertised by both the second MPLS network element and a third MPLS network element on the MPLS network; and
if the service identifier has been advertised by both the second MPLS network element and a third MPLS network element on the MPLS network, determining whether the first MPLS network element is on a forwarding path between second MPLS network element and the third MPLS network element.
38. The medium of claim 36, wherein the instructions comprise:
instructions executable to receive routing advertisements from other network elements in the MPLS network indicating interest in a multicast service instance; and
instructions executable to install MPLS forwarding state for the multicast service instance when the first MPLS network element is on a shortest path between two other network elements advertising interest in the multicast service instance, the MPLS forwarding state comprising:
a first locally computed label to be used by the MPLS network element to forward traffic associated with the multicast service instance; and
a second locally computed label to be used by a neighbor MPLS network element to forward traffic associated with the multicast service instance.
US14/296,077 2008-11-14 2014-06-04 Service Instance Applied to MPLS Network Abandoned US20140286195A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US11455808P true 2008-11-14 2008-11-14
US12/412,589 US8811388B2 (en) 2008-11-14 2009-03-27 Service instance applied to MPLS networks
US14/296,077 US20140286195A1 (en) 2008-11-14 2014-06-04 Service Instance Applied to MPLS Network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US14/296,077 US20140286195A1 (en) 2008-11-14 2014-06-04 Service Instance Applied to MPLS Network

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US12/412,589 Continuation US8811388B2 (en) 2008-11-14 2009-03-27 Service instance applied to MPLS networks

Publications (1)

Publication Number Publication Date
US20140286195A1 true US20140286195A1 (en) 2014-09-25

Family

ID=42170642

Family Applications (3)

Application Number Title Priority Date Filing Date
US12/412,589 Expired - Fee Related US8811388B2 (en) 2008-11-14 2009-03-27 Service instance applied to MPLS networks
US14/296,077 Abandoned US20140286195A1 (en) 2008-11-14 2014-06-04 Service Instance Applied to MPLS Network
US14/324,406 Abandoned US20140321323A1 (en) 2008-11-14 2014-07-07 Service Instance Applied to MPLS Network

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US12/412,589 Expired - Fee Related US8811388B2 (en) 2008-11-14 2009-03-27 Service instance applied to MPLS networks

Family Applications After (1)

Application Number Title Priority Date Filing Date
US14/324,406 Abandoned US20140321323A1 (en) 2008-11-14 2014-07-07 Service Instance Applied to MPLS Network

Country Status (9)

Country Link
US (3) US8811388B2 (en)
EP (1) EP2347547A4 (en)
JP (2) JP5635523B2 (en)
KR (1) KR20110095865A (en)
CN (2) CN102217238A (en)
BR (1) BRPI0921878A2 (en)
CA (1) CA2742735A1 (en)
RU (1) RU2541940C2 (en)
WO (1) WO2010056582A2 (en)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140269721A1 (en) * 2013-03-15 2014-09-18 Cisco Technology, Inc. Segment routing over label distribution protocol
US9319312B2 (en) 2013-05-17 2016-04-19 Cisco Technology, Inc. Segment routing mapping server for LDP/SR interoperability
US9369371B2 (en) 2012-10-05 2016-06-14 Cisco Technologies, Inc. Method and system for path monitoring using segment routing
US9401858B2 (en) 2014-06-30 2016-07-26 Cisco Technology, Inc. Loop avoidance during network convergence in switched networks
US20160234106A1 (en) * 2013-10-18 2016-08-11 Huawei Technologies Co., Ltd. Packet forwarding method, controller, forwarding device, and network system
US9537769B2 (en) 2013-03-15 2017-01-03 Cisco Technology, Inc. Opportunistic compression of routing segment identifier stacks
US9559954B2 (en) 2013-03-11 2017-01-31 Cisco Technology, Inc. Indexed segment ID
US9565160B2 (en) 2013-03-11 2017-02-07 Cisco Technology, Inc. Advertisement of adjacency segment identifiers
US9749227B2 (en) 2012-10-05 2017-08-29 Cisco Technology, Inc. MPLS segment-routing
US9762488B2 (en) 2014-03-06 2017-09-12 Cisco Technology, Inc. Segment routing extension headers
US9807001B2 (en) 2014-07-17 2017-10-31 Cisco Technology, Inc. Segment routing using a remote forwarding adjacency identifier
US10122614B2 (en) 2015-02-26 2018-11-06 Cisco Technology, Inc. Failure protection for traffic-engineered bit indexed explicit replication
US10212076B1 (en) 2012-12-27 2019-02-19 Sitting Man, Llc Routing methods, systems, and computer program products for mapping a node-scope specific identifier
US10263881B2 (en) 2016-05-26 2019-04-16 Cisco Technology, Inc. Enforcing strict shortest path forwarding using strict segment identifiers
US10367737B1 (en) 2012-12-27 2019-07-30 Sitting Man, Llc Routing methods, systems, and computer program products
US10374938B1 (en) 2012-12-27 2019-08-06 Sitting Man, Llc Routing methods, systems, and computer program products
US10397101B1 (en) 2012-12-27 2019-08-27 Sitting Man, Llc Routing methods, systems, and computer program products for mapping identifiers
US10397100B1 (en) 2012-12-27 2019-08-27 Sitting Man, Llc Routing methods, systems, and computer program products using a region scoped outside-scope identifier
US10404582B1 (en) 2012-12-27 2019-09-03 Sitting Man, Llc Routing methods, systems, and computer program products using an outside-scope indentifier
US10404583B1 (en) 2012-12-27 2019-09-03 Sitting Man, Llc Routing methods, systems, and computer program products using multiple outside-scope identifiers
US10411997B1 (en) 2012-12-27 2019-09-10 Sitting Man, Llc Routing methods, systems, and computer program products for using a region scoped node identifier
US10411998B1 (en) 2012-12-27 2019-09-10 Sitting Man, Llc Node scope-specific outside-scope identifier-equipped routing methods, systems, and computer program products
US10419335B1 (en) 2012-12-27 2019-09-17 Sitting Man, Llc Region scope-specific outside-scope indentifier-equipped routing methods, systems, and computer program products
US10419334B1 (en) 2012-12-27 2019-09-17 Sitting Man, Llc Internet protocol routing methods, systems, and computer program products

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9246801B1 (en) * 2008-12-12 2016-01-26 Juniper Networks, Inc. Transmitting packet label contexts within computer networks
JP5150551B2 (en) * 2009-04-10 2013-02-20 株式会社日立製作所 Control device
US8713160B1 (en) * 2010-06-30 2014-04-29 Emc Corporation Automated top-down multi-abstraction infrastructure performance analytics -network infrastructure-as-a-service perspective
WO2012075204A1 (en) * 2010-11-30 2012-06-07 Eastlake Donald E Systems and methods for recovery from network changes
US8908527B2 (en) * 2011-01-31 2014-12-09 Cisco Technology, Inc. Using context labels to scale MAC tables on computer network edge devices
CN102984065B (en) * 2011-09-07 2015-12-16 盛科网络(苏州)有限公司 Packet processing method and apparatus superinterface label space
US8711838B1 (en) 2011-09-23 2014-04-29 Juniper Networks, Inc. Using network labels without standard-defined syntax and semantics
US8867367B2 (en) 2012-05-10 2014-10-21 Telefonaktiebolaget L M Ericsson (Publ) 802.1aq support over IETF EVPN
CN102710522B (en) * 2012-06-08 2017-09-12 神州数码网络(北京)有限公司 Configuration method and apparatus in a multi-network links transparent rules rpf
US9088519B2 (en) * 2012-06-15 2015-07-21 Juniper Networks, Inc. Allocating and distributing labels for packet encapsulation
WO2014071538A1 (en) * 2012-11-08 2014-05-15 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for configuring multicast group
US20140177637A1 (en) * 2012-12-21 2014-06-26 Ian Hamish Duncan Reduced complexity multiprotocol label switching
US9094337B2 (en) 2012-12-21 2015-07-28 Cieno Corporation Source identification preservation in multiprotocol label switching networks
CN103581018B (en) * 2013-07-26 2017-08-11 北京华为数字技术有限公司 Packet transmission method, a router and a service switch
US9806897B2 (en) 2013-09-17 2017-10-31 Cisco Technology, Inc. Bit indexed explicit replication forwarding optimization
US20150200843A1 (en) * 2014-01-15 2015-07-16 Cisco Technology, Inc. A Corporation Of California Packet Labels For Identifying Synchronization Groups of Packets
US9832115B2 (en) * 2014-10-29 2017-11-28 Cisco Technology, Inc. Label-switched packets with device-independent labels
CN104468356B (en) * 2014-12-05 2018-08-24 东阳市阳涛电子科技有限公司 A kind of message forwarding method of more destination nodes
US10158566B2 (en) * 2015-03-20 2018-12-18 Telefonaktiebolaget Lm Ericsson (Publ) Shortest path bridge with MPLS labels
US9906442B2 (en) * 2015-04-17 2018-02-27 Dell Products Lp Systems and methods for increasing the multiprotocol label switching stack
US20180198706A1 (en) * 2015-06-16 2018-07-12 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method for segment routing
US10069639B2 (en) * 2015-07-28 2018-09-04 Ciena Corporation Multicast systems and methods for segment routing
US10164907B2 (en) 2015-11-25 2018-12-25 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for completing loosely specified MDTs
US9954765B2 (en) 2016-01-08 2018-04-24 Telefonaktiebolaget Lm Ericsson (Publ) Graph construction for computed spring multicast
CN107294859A (en) * 2016-04-13 2017-10-24 中兴通讯股份有限公司 Information transmission method, information transmission device and information transmission system
CN106027352A (en) * 2016-07-14 2016-10-12 瑞斯康达科技发展股份有限公司 Service message forwarding method and device

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6473421B1 (en) * 1999-03-29 2002-10-29 Cisco Technology, Inc. Hierarchical label switching across multiple OSPF areas
US6483833B1 (en) * 1998-06-19 2002-11-19 Nortel Networks Limited Method for transmitting label switching control information using the open shortest path first opaque link state advertisement option protocol
US20030099194A1 (en) * 2001-11-28 2003-05-29 Youngseok Lee Constrained multipath routing method
US6683874B1 (en) * 1998-10-30 2004-01-27 Kabushiki Kaisha Toshiba Router device and label switched path control method using upstream initiated aggregation
US20070217420A1 (en) * 2006-03-16 2007-09-20 Raj Alex E Method and apparatus for distributing labels in a label distribution protocol multicast network
US7283563B1 (en) * 2002-05-30 2007-10-16 Nortel Networks Limited Method for using a verification probe in an LDP MPLS network
US20090052444A1 (en) * 2007-08-24 2009-02-26 At&T Bls Intellectual Property, Inc. Methods, systems, and computer program products for providing multi-service communication networks and related core networks
US20090161583A1 (en) * 2007-12-19 2009-06-25 Cisco Technology, Inc. Creating multipoint-to-multipoint mpls trees in an inter-domain environment
US7933197B2 (en) * 2005-02-22 2011-04-26 Cisco Technology, Inc. Method and apparatus for constructing a repair path around a non-available component in a data communications network

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT372977B (en) 1982-01-19 1983-12-12 Voest Alpine Ag Method and apparatus for reducing oxide-containing fine-particle ores
US6886043B1 (en) * 2000-06-28 2005-04-26 Nortel Networks Limited Communications network
AU2244302A (en) * 2000-11-30 2002-06-11 Allot Communications Ltd Network resource allocation and monitoring system
JP3762749B2 (en) * 2001-04-19 2006-04-05 富士通株式会社 Restoration, protection method and apparatus
DE10152011A1 (en) * 2001-10-22 2003-05-08 Siemens Ag Method and apparatus for mapping of network headers to the MPLS header in architectures Bearer
DE60313306T2 (en) * 2002-03-18 2007-07-19 Nortel Networks Ltd., St. Laurent Resource allocation by means of an automatic detection method for provider-controlled layer-2 and layer-3 virtual private networks
JP2004193644A (en) 2002-12-06 2004-07-08 Nippon Telegr & Teleph Corp <Ntt> Router and path setting method in mpls, and network
US7467227B1 (en) * 2002-12-31 2008-12-16 At&T Corp. System using policy filter decision to map data traffic to virtual networks for forwarding the traffic in a regional access network
US7839891B1 (en) * 2003-03-11 2010-11-23 Nortel Networks Limited Method for using a knowledge digest to verify configuration information in a network
US7298707B2 (en) * 2004-01-21 2007-11-20 Cisco Technology, Inc. System and method for controlling the flooding of information in a network environment
US20060203747A1 (en) * 2005-03-11 2006-09-14 Nortel Networks Limited Network topology systems and methods
US20070030852A1 (en) 2005-08-08 2007-02-08 Mark Szczesniak Method and apparatus for enabling routing of label switched data packets
US7609628B2 (en) * 2005-09-07 2009-10-27 At&T Intellectual Property I, L.P. System and method for fault-tolerance in an inter-carrier network interface
EP1943782B1 (en) 2005-10-05 2012-03-28 Nortel Networks Limited Provider link state bridging
US8059647B2 (en) * 2005-10-05 2011-11-15 Nortel Networks Limited Multicast implementation in a link state protocol controlled ethernet network
US8369330B2 (en) * 2005-10-05 2013-02-05 Rockstar Consortium LP Provider backbone bridging—provider backbone transport internetworking
US20080019385A1 (en) * 2005-12-30 2008-01-24 Huawei Technologies Co., Inc. (Usa) System and method of mapping between local and global service instance identifiers in provider networks
JP4455521B2 (en) * 2006-03-07 2010-04-21 日本電信電話株式会社 Multicast mpls network construction method and multicast mpls network system and a router, and a program
US20080107027A1 (en) 2006-11-02 2008-05-08 Nortel Networks Limited Engineered paths in a link state protocol controlled Ethernet network
KR101464790B1 (en) * 2007-01-19 2014-12-03 텔레폰악티에볼라겟엘엠에릭슨(펍) Method, bridge and computer network for calculating a spanning tree based on link state advertisement(lsa)
JP4612645B2 (en) * 2007-02-27 2011-01-12 日本電信電話株式会社 Data transfer method, edge router, AS border router, and program in MPLS network
US7792111B2 (en) * 2008-04-23 2010-09-07 Cisco Technology, Inc. Point-to-multipoint for multicast and unicast forwarding

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6483833B1 (en) * 1998-06-19 2002-11-19 Nortel Networks Limited Method for transmitting label switching control information using the open shortest path first opaque link state advertisement option protocol
US6683874B1 (en) * 1998-10-30 2004-01-27 Kabushiki Kaisha Toshiba Router device and label switched path control method using upstream initiated aggregation
US6473421B1 (en) * 1999-03-29 2002-10-29 Cisco Technology, Inc. Hierarchical label switching across multiple OSPF areas
US20030099194A1 (en) * 2001-11-28 2003-05-29 Youngseok Lee Constrained multipath routing method
US7283563B1 (en) * 2002-05-30 2007-10-16 Nortel Networks Limited Method for using a verification probe in an LDP MPLS network
US7933197B2 (en) * 2005-02-22 2011-04-26 Cisco Technology, Inc. Method and apparatus for constructing a repair path around a non-available component in a data communications network
US20070217420A1 (en) * 2006-03-16 2007-09-20 Raj Alex E Method and apparatus for distributing labels in a label distribution protocol multicast network
US20090052444A1 (en) * 2007-08-24 2009-02-26 At&T Bls Intellectual Property, Inc. Methods, systems, and computer program products for providing multi-service communication networks and related core networks
US20090161583A1 (en) * 2007-12-19 2009-06-25 Cisco Technology, Inc. Creating multipoint-to-multipoint mpls trees in an inter-domain environment

Cited By (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10218610B2 (en) 2012-10-05 2019-02-26 Cisco Technology, Inc. MPLS segment routing
US9929946B2 (en) 2012-10-05 2018-03-27 Cisco Technology, Inc. Segment routing techniques
US9749227B2 (en) 2012-10-05 2017-08-29 Cisco Technology, Inc. MPLS segment-routing
US9369371B2 (en) 2012-10-05 2016-06-14 Cisco Technologies, Inc. Method and system for path monitoring using segment routing
US10389624B1 (en) 2012-12-27 2019-08-20 Sitting Man, Llc Scoped identifier space routing methods, systems, and computer program products
US10389625B1 (en) 2012-12-27 2019-08-20 Sitting Man, Llc Routing methods, systems, and computer program products for using specific identifiers to transmit data
US10411998B1 (en) 2012-12-27 2019-09-10 Sitting Man, Llc Node scope-specific outside-scope identifier-equipped routing methods, systems, and computer program products
US10212076B1 (en) 2012-12-27 2019-02-19 Sitting Man, Llc Routing methods, systems, and computer program products for mapping a node-scope specific identifier
US10382327B1 (en) 2012-12-27 2019-08-13 Sitting Man, Llc Methods, systems, and computer program products for routing using headers including a sequence of node scope-specific identifiers
US10419334B1 (en) 2012-12-27 2019-09-17 Sitting Man, Llc Internet protocol routing methods, systems, and computer program products
US10411997B1 (en) 2012-12-27 2019-09-10 Sitting Man, Llc Routing methods, systems, and computer program products for using a region scoped node identifier
US10397101B1 (en) 2012-12-27 2019-08-27 Sitting Man, Llc Routing methods, systems, and computer program products for mapping identifiers
US10397100B1 (en) 2012-12-27 2019-08-27 Sitting Man, Llc Routing methods, systems, and computer program products using a region scoped outside-scope identifier
US10419335B1 (en) 2012-12-27 2019-09-17 Sitting Man, Llc Region scope-specific outside-scope indentifier-equipped routing methods, systems, and computer program products
US10404582B1 (en) 2012-12-27 2019-09-03 Sitting Man, Llc Routing methods, systems, and computer program products using an outside-scope indentifier
US10404583B1 (en) 2012-12-27 2019-09-03 Sitting Man, Llc Routing methods, systems, and computer program products using multiple outside-scope identifiers
US10367737B1 (en) 2012-12-27 2019-07-30 Sitting Man, Llc Routing methods, systems, and computer program products
US10374938B1 (en) 2012-12-27 2019-08-06 Sitting Man, Llc Routing methods, systems, and computer program products
US9565160B2 (en) 2013-03-11 2017-02-07 Cisco Technology, Inc. Advertisement of adjacency segment identifiers
US9559954B2 (en) 2013-03-11 2017-01-31 Cisco Technology, Inc. Indexed segment ID
US10164838B2 (en) 2013-03-15 2018-12-25 Cisco Technology, Inc. Seamless segment routing
US9979601B2 (en) 2013-03-15 2018-05-22 Cisco Technology, Inc. Encoding explicit paths as segment routing segment lists
US9571349B2 (en) 2013-03-15 2017-02-14 Cisco Technology, Inc. Segment routing: PCE driven dynamic setup of forwarding adjacencies and explicit path
US9537718B2 (en) * 2013-03-15 2017-01-03 Cisco Technology, Inc. Segment routing over label distribution protocol
US9722878B2 (en) 2013-03-15 2017-08-01 Cisco Technology, Inc. Seamless segment routing
US9491058B2 (en) 2013-03-15 2016-11-08 Cisco Technology, Inc. Label distribution protocol over segment routing
US9485150B2 (en) 2013-03-15 2016-11-01 Cisco Technology, Inc. Fast reroute for segment routing traffic
US9450829B2 (en) 2013-03-15 2016-09-20 Cisco Technology, Inc. Seamless segment routing
US20140269721A1 (en) * 2013-03-15 2014-09-18 Cisco Technology, Inc. Segment routing over label distribution protocol
US10270664B2 (en) * 2013-03-15 2019-04-23 Cisco Technology, Inc. Segment routing over label distribution protocol
US9369347B2 (en) 2013-03-15 2016-06-14 Cisco Technology, Inc. Service to node resolution
US9749187B2 (en) 2013-03-15 2017-08-29 Cisco Technology, Inc. Segment routing into a label distribution protocol domain
US9537769B2 (en) 2013-03-15 2017-01-03 Cisco Technology, Inc. Opportunistic compression of routing segment identifier stacks
US9319312B2 (en) 2013-05-17 2016-04-19 Cisco Technology, Inc. Segment routing mapping server for LDP/SR interoperability
US20160234106A1 (en) * 2013-10-18 2016-08-11 Huawei Technologies Co., Ltd. Packet forwarding method, controller, forwarding device, and network system
US10015085B2 (en) * 2013-10-18 2018-07-03 Huawei Technologies Co., Ltd. Packet forwarding method, controller, forwarding device, and network system
US10382334B2 (en) 2014-03-06 2019-08-13 Cisco Technology, Inc. Segment routing extension headers
US10063475B2 (en) 2014-03-06 2018-08-28 Cisco Technology, Inc. Segment routing extension headers
US9762488B2 (en) 2014-03-06 2017-09-12 Cisco Technology, Inc. Segment routing extension headers
US9401858B2 (en) 2014-06-30 2016-07-26 Cisco Technology, Inc. Loop avoidance during network convergence in switched networks
US10178022B2 (en) 2014-07-17 2019-01-08 Cisco Technology, Inc. Segment routing using a remote forwarding adjacency identifier
US9807001B2 (en) 2014-07-17 2017-10-31 Cisco Technology, Inc. Segment routing using a remote forwarding adjacency identifier
US10341221B2 (en) 2015-02-26 2019-07-02 Cisco Technology, Inc. Traffic engineering for bit indexed explicit replication
US10341222B2 (en) 2015-02-26 2019-07-02 Cisco Technology, Inc. Traffic engineering for bit indexed explicit replication
US10122614B2 (en) 2015-02-26 2018-11-06 Cisco Technology, Inc. Failure protection for traffic-engineered bit indexed explicit replication
US10263881B2 (en) 2016-05-26 2019-04-16 Cisco Technology, Inc. Enforcing strict shortest path forwarding using strict segment identifiers

Also Published As

Publication number Publication date
KR20110095865A (en) 2011-08-25
BRPI0921878A2 (en) 2015-12-29
CN104038417A (en) 2014-09-10
US20140321323A1 (en) 2014-10-30
EP2347547A4 (en) 2012-07-25
CA2742735A1 (en) 2010-05-20
WO2010056582A2 (en) 2010-05-20
JP5635523B2 (en) 2014-12-03
US20100124225A1 (en) 2010-05-20
EP2347547A2 (en) 2011-07-27
JP2014239540A (en) 2014-12-18
US8811388B2 (en) 2014-08-19
RU2541940C2 (en) 2015-02-20
WO2010056582A3 (en) 2010-08-05
JP2012509018A (en) 2012-04-12
RU2011119536A (en) 2012-12-20
CN102217238A (en) 2011-10-12

Similar Documents

Publication Publication Date Title
JP5581441B2 (en) Method and apparatus for MPLS MAC-VPN MPLS label allocation
EP1859586B1 (en) Loop prevention technique for mpls using service labels
JP4833292B2 (en) Ethernet GMPLS control
US7697556B2 (en) MAC (media access control) tunneling and control and method
ES2523574T3 (en) System and method of calculating point-to-multipoint label switching route reservation
AU2004227785B2 (en) Method for recursive BGP route updates in MPLS networks
US6205488B1 (en) Internet protocol virtual private network realization using multi-protocol label switching tunnels
CN101133607B (en) Method and device for building multipoint-to-multipoint transmission tree
US7933267B1 (en) Shared multicast trees for multicast virtual private networks
US7522603B2 (en) Technique for efficiently routing IP traffic on CE-CE paths across a provider network
US9008088B2 (en) Multicast implementation in a link state protocol controlled ethernet network
US9571349B2 (en) Segment routing: PCE driven dynamic setup of forwarding adjacencies and explicit path
US8339973B1 (en) Multicast traceroute over MPLS/BGP IP multicast VPN
EP1770902B1 (en) Pseudo wire label reflector, edge apparatus, layer-two virtual private network, and the method to provide pseudo wire service
US20060164975A1 (en) Loop prevention technique for MPLS using two labels
US8059647B2 (en) Multicast implementation in a link state protocol controlled ethernet network
JP2015527830A (en) System, method and apparatus for complying with path cost criteria across multiple ABRs
US10097372B2 (en) Method for resource optimized network virtualization overlay transport in virtualized data center environments
KR101593356B1 (en) System and method for using label distribution protocol (ldp) in ipv6 networks
US8351418B2 (en) System and method for point to multipoint inter-domain multiprotocol label switching traffic engineering path calculation
CN1816991B (en) Method and system for routing data between starting station and target station
US9948574B2 (en) Bit indexed explicit replication packet encapsulation
US20080225864A1 (en) Communication network routing apparatus and techniques using logical communication links
US9166807B2 (en) Transmission of layer two (L2) multicast traffic over multi-protocol label switching networks
US7583590B2 (en) Router and method for protocol process migration

Legal Events

Date Code Title Description
AS Assignment

Owner name: RPX CLEARINGHOUSE LLC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ROCKSTAR CONSORTIUM US LP;ROCKSTAR CONSORTIUM LLC;BOCKSTAR TECHNOLOGIES LLC;AND OTHERS;REEL/FRAME:034924/0779

Effective date: 20150128

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION