US20120218916A1 - Method and Apparatus for Establishing Forwarding State Using Path State Advertisements - Google Patents

Method and Apparatus for Establishing Forwarding State Using Path State Advertisements Download PDF

Info

Publication number
US20120218916A1
US20120218916A1 US13/465,648 US201213465648A US2012218916A1 US 20120218916 A1 US20120218916 A1 US 20120218916A1 US 201213465648 A US201213465648 A US 201213465648A US 2012218916 A1 US2012218916 A1 US 2012218916A1
Authority
US
United States
Prior art keywords
path
state
network
node
forwarding
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
US13/465,648
Inventor
Peter Ashwood-Smith
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
Application filed by Rockstar Consortium US LP filed Critical Rockstar Consortium US LP
Priority to US13/465,648 priority Critical patent/US20120218916A1/en
Publication of US20120218916A1 publication Critical patent/US20120218916A1/en
Assigned to ROCKSTAR CONSORTIUM US LP reassignment ROCKSTAR CONSORTIUM US LP ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: Rockstar Bidco, LP
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
Abandoned legal-status Critical Current

Links

Images

Classifications

    • 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/03Topology update or discovery by updating link state protocols
    • 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

Definitions

  • the present invention relates to communication networks and, more particularly, to a method and apparatus for establishing forwarding state using path state advertisements.
  • Data communication networks may include various computers, servers, nodes, routers, switches, bridges, hubs, proxies, and other network devices coupled to and configured to pass data to one another. These devices will be referred to herein as “network elements.” Data is communicated through the data communication network by passing protocol data units, such as Internet Protocol packets, Ethernet Frames, data cells, segments, or other logical associations of bits/bytes of data, between the network elements by utilizing one or more communication links between the devices. 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. As used herein, the term “packet” will be used to refer to all types of protocol data units, not just IP packets.
  • protocol data units such as Internet Protocol packets, Ethernet Frames, data cells, segments, or other logical associations of bits/bytes of data
  • Routing information on a network may be exchanged using a variety of different protocols.
  • One class of routing protocols that may be used to exchange routing information are commonly referred to as link state routing protocols.
  • Link state routing protocols use update messages to advertise routing information about links to which it is connected. Update messages will be referred to herein as Link State Advertisements (LSAs).
  • LSAs Link State Advertisements
  • Network elements on the network receive the LSAs and use the information from the LSAs to build a link state database representative of the topology of the network. Examples of common link state routing protocols include Open Shortest Path First (OSPF) and Intermediate System to Intermediate System (IS-IS), although other link state routing protocols may exist or be developed as well.
  • OSPF Open Shortest Path First
  • IS-IS Intermediate System to Intermediate System
  • signaling protocols are used to establish paths through the network so that traffic may be forwarded across the network along a particular path.
  • a network element may compute a path through the network by looking at its link state database, and then use a protocol such as Label Distribution Protocol (LDP) to cause labels to be distributed to form an MPLS label switched path across the network.
  • LDP Label Distribution Protocol
  • the routers along the path will be able to forward data on the path from the source to the destination on the network so that all traffic intended to be carried by the path actually is able to follow the path through the network.
  • the signaling protocol is used to cause the routers or other network elements on the path to install appropriate forwarding state for that traffic.
  • signaling protocols There are many different signaling protocols that have been developed to enable paths to be set up through the network. Examples of signaling protocols include Private Network to Network Interface (PNNI), Signaling System Seven (SS7), Reservation Protocol Traffic Engineering (RSVP-TE), and LDP which was mentioned above and is used with MultiProtocol Label Switching (MPLS), although there are undoubtedly other protocols as well that have been proposed or used to establish paths through a network.
  • PNNI Private Network to Network Interface
  • SS7 Signaling System Seven
  • RSVP-TE Reservation Protocol Traffic Engineering
  • MPLS MultiProtocol Label Switching
  • the amount of overhead required to signal a particular path may vary significantly, although generally most signaling protocols require each path to be established individually. Hence, signaling paths on the network may consume significant resources particularly where there are large numbers of paths to be established or altered.
  • Network elements on a communication network configured to use a link state routing protocol will build a link state database by collecting link state advertisements from other network elements on the network.
  • the link state database may then be used by the network element to calculate one or more paths through the network. Paths may pass through the network element but are not required to pass through the network element.
  • Paths may be advertised on the communication network using a path state advertisement containing path entries.
  • Each path entry contains a globally unique path ID and path information such as a series of nodes or links that defines the path through the network.
  • the path state advertisement may then be advertised onto the network using the same distribution system that was used to distribute link state advertisements.
  • the network element When a path state advertisement is received by a network element, the network element will forward the path state advertisement as it would a normal link state advertisement, and it will also evaluate the path entries in the path state advertisement to determine if the path state advertisement is relevant to it. For example, the network element will determine for each path entry in the path state advertisement if the path entry references the network element or a link connected to the network element. If the path entry is relevant to the network element, the network element will install forwarding state for that path in a manner similar to how it would normally have installed forwarding state had the path been established using another path signaling protocol. If the path entry does not reference the network element the network element will ignore that path entry and move on to the next entry in the path state advertisement.
  • FIG. 1 is a functional block diagram a portion of an example communication network
  • FIG. 2 is a functional block diagram illustrating paths through the example communication network of FIG. 1 ;
  • FIG. 3-6 are a functional block diagrams of path state advertisements containing path information according to an embodiment of the invention.
  • FIG. 7 is a flow chart illustrating a process of establishing forwarding state on a communication network such as the network of FIGS. 1-2 using path state advertisements such as the path state advertisements of FIGS. 3-5 according to an embodiment of the invention.
  • FIG. 8 is a functional block diagram of a network element configured to establish forwarding state on a communication network using path state advertisements according to an embodiment of the invention.
  • FIG. 1 illustrates an example communication network 10 having a plurality of nodes N 1 -N 12 interconnected by links L 1 -L 26 .
  • the nodes may be routers, switches, or other types of network elements and the links may be formed from copper wires, optical fibers, wireless transmissions, or using another type of communication technology.
  • the invention is not limited to the particular network used to implement the communication network, as the invention may be used in many different types of communication networks.
  • the invention is similarly not limited to a network having the configuration shown in FIGS. 1 and 2 as many different network configurations are known and may be used in connection with embodiments of the invention discussed herein.
  • LSA Link State Advertisements
  • the network elements may all independently calculate the least cost path through the network between particular end points. For example, in the example network shown in FIG. 1 , the network element N 3 may use the information in its link state database to calculate a first path P 1 and a second path P 2 . Although the paths in this example also pass through node N 3 , the invention is not limited in this manner as the particular paths to be established on the network need not pass through the node that initially advertises the path in a path state advertisement.
  • the node N 3 may calculate a path P 1 that includes nodes N 1 , N 2 , and N 5 or, equivalently, links L 2 , L 1 , and L 7 .
  • the node N 3 may calculate a path that includes nodes N 6 , N 9 , N 7 , and N 10 (or links L 9 , L 18 , L 19 , and L 21 ).
  • the paths may be calculated by looking for a least cost path or, alternatively where traffic engineering information has been exchanged, using other criteria.
  • the invention is not limited to a particular way of calculating paths through the network as many different criteria may be used to create a path. Indeed, the paths may also be manually created for example by a network administrator. Thus, many different mechanisms may be used to create paths that may then be advertised using path state advertisement messages.
  • path state advertisements may be flooded onto the network using the same distribution mechanism as is used for link state advertisements, but which contain path information instead of link state information.
  • the path state advertisements may contain information on a single path or may contain information for multiple paths. Since the path state advertisements are to be flooded on the network, multiple paths may be set up using a single path state advertisement.
  • a network element When a network element receives a path state advertisement, it will forward the path state advertisement as it would an ordinary link state advertisement. Additionally, the network element will parse the information contained in the path state advertisement to determine whether any of the paths pass through it or any of the links to which it is connected. If the path state advertisement doesn't pertain to the network element the path state advertisement will not be used to affect forwarding state on this network element. If the path state advertisement does have one or more paths passing through the network element, however, the network element will install the forwarding state for those paths into its forwarding tables in a manner similar to how it would ordinarily install forwarding state for a path that was established using a signaling protocol. The manner in which network elements handle path state advertisements will be discussed in greater detail below.
  • the path information contained in the path state information may contain a path identifier and a list of network elements or links that are to be used to establish the path through the network.
  • FIGS. 3-5 show examples of path state advertisements according to an embodiment of the invention. Other formats may be used as well, however, and the invention is not limited to the particular path state advertisements shown in FIGS. 3-5 .
  • the path state advertisement 20 may include path entries 22 , each of which specifies a path through the network.
  • the path entries 22 include, for example, a path identifier 24 that is used to identify the path and data subsequently transmitted on the path, and path information 26 specifying a list of nodes, links, or both, that define the path through the network.
  • quality of service to be provided to traffic on the path may also be specified using optional quality of service bits 28 .
  • Other information may be contained in the path entries as well, and the invention is not limited to path entries that have only the illustrated set of fields as many additional fields may be included in each of the path entries.
  • the path state advertisement may contain one or more fields of administrative information that may be used to explain the format of the data contained in the path state advertisement. The invention is not limited to a particular format that is used to implement the path state advertisements.
  • FIG. 4 shows an embodiment of a path state advertisement 20 in which the path entries 22 include node information 30 as the path information 26 .
  • the node information in this example, may be lists of node IDs that define the paths through the network.
  • the path entries shown in FIG. 4 have been formatted to show how paths P 1 and P 2 discussed above in connection with in FIG. 2 may be created.
  • the path entry 22 b similarly defines Path P 2 to include nodes N 3 , N 6 , N 9 , N 7 , and N 10 .
  • FIG. 5 shows another embodiment of a link state advertisement 20 in which the path entries 22 include link information 32 as the path information.
  • the path state advertisements may thus be formatted in a manner similar to that discussed above in connection with FIG. 4 , but the path information will reference the links to be used to establish the path rather than the nodes that are to be used to establish the path.
  • path P 1 is shown as including links L 2 , L 1 , and L 7
  • path P 2 is shown as including links L 9 , L 18 , L 19 , and L 21 .
  • FIG. 6 shows yet another embodiment of a link state advertisement 20 in which the path entries 22 include both node information 24 and link information 32 as the path information.
  • the path state advertisements may thus be formatted in a manner similar to that discussed above in connection with FIG. 4 , but the path information will reference both the nodes and links that are to be used to establish the path through the network.
  • path P 1 is shown as including nodes/links N 3 , L 2 , N 1 , L 1 , N 2 , L 7 , and N 5
  • path P 2 is shown as including nodes/links N 3 , L 9 , N 6 , L 18 , N 9 , L 9 , N 7 , L 21 , and N 10 .
  • the path identifiers may be globally unique path identifiers. Using globally unique path identifiers enables the network elements on the network to perform label based forwarding. Label based forwarding enables a network element to take one or more defined actions for packets that have a particular label regardless of where the packet arrived at the network element. The use of globally unique path identifiers enables the path identifiers to be used as the label for that traffic by all network elements on the path so that label switching is not required to forward traffic along the path through the network.
  • One example of a globally unique path identifier that may be used to identify paths on the network may be a concatenation or other combination of the destination ID and a Virtual Local Area Network (VLAN) tag.
  • VLAN Virtual Local Area Network
  • Other ways of establishing globally unique path identifiers may be used as well, however, and the invention is not limited to the use of this particular type of path identifier.
  • the network element When a node receives a path state advertisement, it will forward the path state advertisement the same way it would forward a regular link state advertisement.
  • the network element will evaluate the path entries 22 to determine if one or more of the path entries contains a path that will pass through it. Where the path information 26 contained in the path entries 22 contain node information, this may be performed by looking for path entries that include the node's node ID as one of the hops on the path. Where the path information contained in the path entries contain link information, this may be performed by looking for path entries that include a link ID to which the node is connected.
  • a node if a node locates a path entry 22 that indicates that the path will pass through the node, the node will install forwarding state by causing the path ID to be associated with a particular forwarding action that will cause traffic on the path to be forwarded along the path specified by the path information 26 in the path entry 22 .
  • node N 2 in FIG. 2 receives the path state advertisement shown in FIG. 4 .
  • Node 2 would forward the path state advertisement as it would a normal link state advertisement and, additionally, would evaluate the path entries 22 contained in the path state advertisement to determine if any of the path entries referenced it.
  • the node may also transmit a commit message or other type of message back toward the originating node so that the node that originated the path state advertisement is able to confirm that all nodes on the path have received the message and processed the message, and that the path will be set up as desired.
  • these messages may optionally be implemented, the invention is not limited in this manner as many different ways of confirming paths may be used if desired once the path has been advertised using the path state advertisement messages described herein.
  • traffic may be transmitted on the path by causing a label containing the path identifier to be applied to packets that are to travel on the path.
  • a network element When a network element receives a packet with the path identifier, it will perform the action associated with the forwarding state that was derived from the earlier received path entry that defined the path. For example, node N 2 will forward all traffic with path ID P 1 to node N 5 . Thus, the nodes may use label based forwarding without also considering where the traffic arrived.
  • FIG. 7 shows a process that may be used to implement an embodiment of the invention.
  • network elements on the communication network will build an ordinary link state database by collecting link state advertisements from other network elements on the domain ( 100 ).
  • the link state database may then be used to calculate one or more paths through the network ( 102 ). Distribution of link state advertisements and the manner in which link state advertisements are used or exchanged is not expected change in connection with implementation of an embodiment of the invention.
  • a network element may generate a path state advertisement ( 104 ) which, as discussed above, may contain one or more path entries, each of which will have a globally unique path ID and path information.
  • the path state advertisement may then be advertised onto the network using the distribution system that was also used to distribute link state advertisements ( 106 ).
  • distribution of the path state advertisements requires no additional distribution mechanism to be established to enable all nodes on the network to receive the advertisement. It does, however, require either that the path state advertisements travel inside existing protocol data units (with appropriate differentiation mechanisms) or in new protocol data units that share the same flooding header and processing as the existing link state advertisement protocol data units.
  • the network element When a path state advertisement is received by a network element ( 110 ), the network element will forward the path state advertisement as it would a normal link state advertisement, and it will also evaluate the path entries in the path state advertisement to determine if the path state advertisement is relevant to it ( 112 ). Thus, the network element will determine for each path entry in the path state advertisement if the path entry references the network element or a link connected to the network element ( 114 ). If the path entry is relevant to the network element, the network element will install forwarding state for that path ( 116 ) in a manner similar to how it would normally have installed forwarding state had the path been established using another path signaling protocol. If the path entry does not reference the network element, the network element will ignore that path entry and move on to the next path entry in the path state advertisement ( 118 ).
  • the forwarding state on the nodes may be changed such that the nodes forward traffic based on both input link/port and label.
  • the node may install forwarding state in both directions along the path so that it is able to distinguish between traffic traveling in both directions and may forward the traffic in the correct direction along the path.
  • the end node N 5 may create a second path state advertisement and re-advertise the path P 1 ′ having the same set of nodes/links in reverse order and with a different globally unique path ID.
  • the traffic on the two paths P 1 and P 1 ′ will have different labels, the path over which the traffic will travel will be the same. While this approach will cause two different entries to be entered into the network element's forwarding table (one for each direction of the bi-directional path) the network element will be able to perform label based switching and will not be required to use information associated with the input port in connection with making a forwarding decision for the traffic.
  • the invention is not limited to an embodiment in which bi-directional paths are able to be established or to one particular manner of establishing the bi-directional paths.
  • a node may advertise a path that does not terminate at itself. Accordingly, since labels are globally unique, if a node advertises two or more path segments that meet upstream of itself, it will in effect create a tree of path segments which merge. In this manner, a node may create a many to one tree such that multiple destinations may reach it via explicitly described path segments. Similarly, a one to many (broadcast) tree may be created in which packets originate and flow along the path segments, but are copied and forwarded at the merging points of the segments. In general, a node can create a tree of path segments or even a cycle of path segments anywhere in the network. The tree can be followed in either direction so that the tree may be a one to many or many to one tree by simply using a different forwarding paradigm, regardless of how the paths are advertised.
  • FIG. 8 shows a functional block diagram of a network element configured to enable paths to be created using path state advertisements.
  • the network element in FIG. 8 is configured to generate paths state advertisements and broadcast the path state advertisements on the network.
  • the network element is configured to receive path state advertisements and learn therefrom how forwarding state should be created to enable paths to be implemented through the network.
  • the invention is not limited to the embodiment shown in FIG. 8 however, as many other types of network elements and network elements with architectures different than that shown in FIG. 8 may be used as well.
  • the network element 120 includes a data plane 140 including a plurality of input/output cards 122 configured to receive data from a communication network and output data on to the communication network. Particular input/output cards may perform both input and output functions or may selectively perform only one of these functions. Data may be switched between the cards via switch fabric 124 .
  • the data plane may contain one or more service cards, such as one or more cards configured to perform one or more processes on the received packets, and the invention is not limited to an embodiment in which only the particular illustrated cards are used to implement the data plane of the network element 120 .
  • the data plane of FIG. 8 may be implemented to perform label switching such that packets received with particular labels may be automatically output over an intended interface to cause those packets to be forwarded through the network along the paths discussed above.
  • control plane 142 generally including a processor 126 containing control logic 128 .
  • the control plane may be implemented as one or more control cards/data service cards and the invention is not limited by the particular manner in which the control plane is implemented.
  • the control logic 128 may implement one or more processes, such as a process to implement a protocol stack 130 to enable the network element to be able to implement using one or more networking protocols so that it can participate in communications on the communication network.
  • the network element may also include routing software 132 configured to receive and generate link state advertisements, enable the network element to compute paths through the network, generate path state advertisements, and extract forwarding state information from received path state advertisements.
  • the routing software 132 may be configured to implement the process described above in connection with FIG. 7 .
  • the routing software may interface with a link state database 134 to maintain a current topography of the network on which it is operating. Additionally, the routing software may interface with a forwarding state database 136 containing information associated with paths through the network and/or associated with how packets containing particular path IDs should be handled by the network element.
  • the forwarding state database 136 may contain a complete list of all paths through the network, a complete list of those paths that pass through the network element, or other information that will enable the network element to recover from a failure, should it be necessary to restart the network element or otherwise recover from a fault on the network/network element.
  • Other modules may be included as well and the invention is not limited to a network element configured to implement only these several illustrated processes.
  • the invention is not limited in this manner as the network element may be a virtual network element such as a virtual router in which the control is separate from the forwarding state.
  • a computer may act logically as several nodes and communicate forwarding state to the network elements via control channels.
  • the invention is not limited to the embodiment shown in FIG. 8 as many different ways of implementing embodiments of the invention may be created.
  • path state advertisements may be used to remove paths as well. For example, if a node already has forwarding state for a particular path and receives a path state advertisement containing new forwarding state for the path, the node will remove the old forwarding state and use the new forwarding state. Additionally, the path state advertisement may include a flag indicating that the path is being removed, to enable the network elements to remove all state information associated with the path when the path is no longer necessary. Thus, path state advertisements may be used for more than simply creating new paths but may also be used to modify existing paths or to remove existing paths.
  • the functions described above may be implemented as a set of software program instructions that are stored in a computer readable memory within the network element and executed on one or more processors within the network element.
  • ASIC Application Specific Integrated Circuit
  • 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.
  • Programmable logic can also be fixed in a computer data signal embodied in a carrier wave, allowing the programmable logic to be transmitted over an interface such as a computer bus or communication network. All such embodiments are intended to fall within the scope of the present invention.

Abstract

Paths may be advertised on a network implementing a link state routing protocol by using Path State Advertisements (PSAs) that are distributed in the same manner as link state advertisements. The path state advertisements contain path entries, each of which includes a globally unique path ID and path information such as a series of nodes or links that defines the path through the network. When a PSA is received by a network element, the network element will evaluate the path entries in the PSA to determine if the PSA is relevant and, if necessary, install forwarding state for the relevant path entries. PSAS not relevant to a network element are not used to affect forwarding state on the network element. Label based forwarding may be used by the network elements to forward data along the path, in which the globally unique path ID is used as the label.

Description

    CROSS-REFERENCE TO RELATED CASES
  • This application is a divisional of U.S. patent application Ser. No. 11/525,594, filed Sep. 22, 2006, the content of which is hereby incorporated herein by reference.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to communication networks and, more particularly, to a method and apparatus for establishing forwarding state using path state advertisements.
  • 2. Description of the Related Art
  • Data communication networks may include various computers, servers, nodes, routers, switches, bridges, hubs, proxies, and other network devices coupled to and configured to pass data to one another. These devices will be referred to herein as “network elements.” Data is communicated through the data communication network by passing protocol data units, such as Internet Protocol packets, Ethernet Frames, data cells, segments, or other logical associations of bits/bytes of data, between the network elements by utilizing one or more communication links between the devices. 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. As used herein, the term “packet” will be used to refer to all types of protocol data units, not just IP packets.
  • Routing information on a network, such as the network illustrated in FIG. 1, may be exchanged using a variety of different protocols. One class of routing protocols that may be used to exchange routing information are commonly referred to as link state routing protocols.
  • Link state routing protocols use update messages to advertise routing information about links to which it is connected. Update messages will be referred to herein as Link State Advertisements (LSAs). Network elements on the network receive the LSAs and use the information from the LSAs to build a link state database representative of the topology of the network. Examples of common link state routing protocols include Open Shortest Path First (OSPF) and Intermediate System to Intermediate System (IS-IS), although other link state routing protocols may exist or be developed as well.
  • Another class of protocols, referred to herein as signaling protocols, are used to establish paths through the network so that traffic may be forwarded across the network along a particular path. For example, a network element may compute a path through the network by looking at its link state database, and then use a protocol such as Label Distribution Protocol (LDP) to cause labels to be distributed to form an MPLS label switched path across the network. In this example, once the labels have been distributed, the routers along the path will be able to forward data on the path from the source to the destination on the network so that all traffic intended to be carried by the path actually is able to follow the path through the network. Thus, the signaling protocol is used to cause the routers or other network elements on the path to install appropriate forwarding state for that traffic.
  • There are many different signaling protocols that have been developed to enable paths to be set up through the network. Examples of signaling protocols include Private Network to Network Interface (PNNI), Signaling System Seven (SS7), Reservation Protocol Traffic Engineering (RSVP-TE), and LDP which was mentioned above and is used with MultiProtocol Label Switching (MPLS), although there are undoubtedly other protocols as well that have been proposed or used to establish paths through a network.
  • Depending on the particular signaling protocol being used, the amount of overhead required to signal a particular path may vary significantly, although generally most signaling protocols require each path to be established individually. Hence, signaling paths on the network may consume significant resources particularly where there are large numbers of paths to be established or altered.
  • SUMMARY
  • Network elements on a communication network configured to use a link state routing protocol will build a link state database by collecting link state advertisements from other network elements on the network. The link state database may then be used by the network element to calculate one or more paths through the network. Paths may pass through the network element but are not required to pass through the network element.
  • Paths may be advertised on the communication network using a path state advertisement containing path entries. Each path entry contains a globally unique path ID and path information such as a series of nodes or links that defines the path through the network. The path state advertisement may then be advertised onto the network using the same distribution system that was used to distribute link state advertisements.
  • When a path state advertisement is received by a network element, the network element will forward the path state advertisement as it would a normal link state advertisement, and it will also evaluate the path entries in the path state advertisement to determine if the path state advertisement is relevant to it. For example, the network element will determine for each path entry in the path state advertisement if the path entry references the network element or a link connected to the network element. If the path entry is relevant to the network element, the network element will install forwarding state for that path in a manner similar to how it would normally have installed forwarding state had the path been established using another path signaling protocol. If the path entry does not reference the network element the network element will ignore that path entry and move on to the next entry in the path state advertisement.
  • 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 a portion of an example communication network;
  • FIG. 2 is a functional block diagram illustrating paths through the example communication network of FIG. 1;
  • FIG. 3-6 are a functional block diagrams of path state advertisements containing path information according to an embodiment of the invention;
  • FIG. 7 is a flow chart illustrating a process of establishing forwarding state on a communication network such as the network of FIGS. 1-2 using path state advertisements such as the path state advertisements of FIGS. 3-5 according to an embodiment of the invention; and
  • FIG. 8 is a functional block diagram of a network element configured to establish forwarding state on a communication network using path state advertisements according to an embodiment of the invention.
  • DETAILED DESCRIPTION
  • The following detailed description sets forth numerous specific details to provide a thorough understanding of the invention. However, those skilled in the art will appreciate that the invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, protocols, algorithms, and circuits have not been described in detail so as not to obscure the invention.
  • FIG. 1 illustrates an example communication network 10 having a plurality of nodes N1-N12 interconnected by links L1-L26. The nodes may be routers, switches, or other types of network elements and the links may be formed from copper wires, optical fibers, wireless transmissions, or using another type of communication technology. The invention is not limited to the particular network used to implement the communication network, as the invention may be used in many different types of communication networks. The invention is similarly not limited to a network having the configuration shown in FIGS. 1 and 2 as many different network configurations are known and may be used in connection with embodiments of the invention discussed herein.
  • In a link state routing protocol, such as Open Shortest Path First (OSPF) or Intermediate System to Intermediate System (IS-IS), routers or switches collect information about the state of links to which they connect and advertise that information on the network. This information is transmitted using Link State Advertisements (LSAs) to enable the network elements to build link state databases.
  • Since each network element knows how all other network elements are interconnected, the network elements may all independently calculate the least cost path through the network between particular end points. For example, in the example network shown in FIG. 1, the network element N3 may use the information in its link state database to calculate a first path P1 and a second path P2. Although the paths in this example also pass through node N3, the invention is not limited in this manner as the particular paths to be established on the network need not pass through the node that initially advertises the path in a path state advertisement.
  • Examples of two hypothetical paths that may be calculated are shown in FIG. 2. As shown in FIG. 2, the node N3 may calculate a path P1 that includes nodes N1, N2, and N5 or, equivalently, links L2, L1, and L7. Similarly, the node N3 may calculate a path that includes nodes N6, N9, N7, and N10 (or links L9, L18, L19, and L21). The paths may be calculated by looking for a least cost path or, alternatively where traffic engineering information has been exchanged, using other criteria. The invention is not limited to a particular way of calculating paths through the network as many different criteria may be used to create a path. Indeed, the paths may also be manually created for example by a network administrator. Thus, many different mechanisms may be used to create paths that may then be advertised using path state advertisement messages.
  • Once one or more paths have been calculated, the paths may need to be set up on the network so that the nodes along the path know how to forward packets along those paths. According to an embodiment of the invention, path state advertisements may be flooded onto the network using the same distribution mechanism as is used for link state advertisements, but which contain path information instead of link state information. The path state advertisements may contain information on a single path or may contain information for multiple paths. Since the path state advertisements are to be flooded on the network, multiple paths may be set up using a single path state advertisement.
  • When a network element receives a path state advertisement, it will forward the path state advertisement as it would an ordinary link state advertisement. Additionally, the network element will parse the information contained in the path state advertisement to determine whether any of the paths pass through it or any of the links to which it is connected. If the path state advertisement doesn't pertain to the network element the path state advertisement will not be used to affect forwarding state on this network element. If the path state advertisement does have one or more paths passing through the network element, however, the network element will install the forwarding state for those paths into its forwarding tables in a manner similar to how it would ordinarily install forwarding state for a path that was established using a signaling protocol. The manner in which network elements handle path state advertisements will be discussed in greater detail below.
  • As discussed in greater detail below, the path information contained in the path state information may contain a path identifier and a list of network elements or links that are to be used to establish the path through the network. FIGS. 3-5 show examples of path state advertisements according to an embodiment of the invention. Other formats may be used as well, however, and the invention is not limited to the particular path state advertisements shown in FIGS. 3-5.
  • As shown in FIG. 3, the path state advertisement 20 may include path entries 22, each of which specifies a path through the network. The path entries 22 include, for example, a path identifier 24 that is used to identify the path and data subsequently transmitted on the path, and path information 26 specifying a list of nodes, links, or both, that define the path through the network. Optionally, quality of service to be provided to traffic on the path may also be specified using optional quality of service bits 28. Other information may be contained in the path entries as well, and the invention is not limited to path entries that have only the illustrated set of fields as many additional fields may be included in each of the path entries. Similarly, the path state advertisement may contain one or more fields of administrative information that may be used to explain the format of the data contained in the path state advertisement. The invention is not limited to a particular format that is used to implement the path state advertisements.
  • FIG. 4 shows an embodiment of a path state advertisement 20 in which the path entries 22 include node information 30 as the path information 26. The node information, in this example, may be lists of node IDs that define the paths through the network. The path entries shown in FIG. 4 have been formatted to show how paths P1 and P2 discussed above in connection with in FIG. 2 may be created. Specifically, path entry 22 a contains a path ID=P1, the optional QoS bits, and a series of node IDs that define the path through the network of FIG. 2 which, in this example, include nodes N3, N1, N2, and N5. The path entry 22 b similarly defines Path P2 to include nodes N3, N6, N9, N7, and N10.
  • FIG. 5 shows another embodiment of a link state advertisement 20 in which the path entries 22 include link information 32 as the path information. The path state advertisements may thus be formatted in a manner similar to that discussed above in connection with FIG. 4, but the path information will reference the links to be used to establish the path rather than the nodes that are to be used to establish the path. In the particular example, path P1 is shown as including links L2, L1, and L7, and path P2 is shown as including links L9, L18, L19, and L21.
  • FIG. 6 shows yet another embodiment of a link state advertisement 20 in which the path entries 22 include both node information 24 and link information 32 as the path information. The path state advertisements may thus be formatted in a manner similar to that discussed above in connection with FIG. 4, but the path information will reference both the nodes and links that are to be used to establish the path through the network. In the particular example, path P1 is shown as including nodes/links N3, L2, N1, L1, N2, L7, and N5, and path P2 is shown as including nodes/links N3, L9, N6, L18, N9, L9, N7, L21, and N10.
  • The path identifiers may be globally unique path identifiers. Using globally unique path identifiers enables the network elements on the network to perform label based forwarding. Label based forwarding enables a network element to take one or more defined actions for packets that have a particular label regardless of where the packet arrived at the network element. The use of globally unique path identifiers enables the path identifiers to be used as the label for that traffic by all network elements on the path so that label switching is not required to forward traffic along the path through the network.
  • One example of a globally unique path identifier that may be used to identify paths on the network may be a concatenation or other combination of the destination ID and a Virtual Local Area Network (VLAN) tag. Other ways of establishing globally unique path identifiers may be used as well, however, and the invention is not limited to the use of this particular type of path identifier.
  • When a node receives a path state advertisement, it will forward the path state advertisement the same way it would forward a regular link state advertisement. In addition, the network element will evaluate the path entries 22 to determine if one or more of the path entries contains a path that will pass through it. Where the path information 26 contained in the path entries 22 contain node information, this may be performed by looking for path entries that include the node's node ID as one of the hops on the path. Where the path information contained in the path entries contain link information, this may be performed by looking for path entries that include a link ID to which the node is connected.
  • In either embodiment, if a node locates a path entry 22 that indicates that the path will pass through the node, the node will install forwarding state by causing the path ID to be associated with a particular forwarding action that will cause traffic on the path to be forwarded along the path specified by the path information 26 in the path entry 22.
  • For example, assume that node N2 in FIG. 2 receives the path state advertisement shown in FIG. 4. Node 2 would forward the path state advertisement as it would a normal link state advertisement and, additionally, would evaluate the path entries 22 contained in the path state advertisement to determine if any of the path entries referenced it. In this example, node N2 would evaluate path entry 22 a and determine that it is one of the nodes listed in the path information section of the path entry associated with path ID=P1. Accordingly, node N2 would know that traffic identified by path identifier P1 should be forwarded to node N5. This forwarding state information may be used to update the data plane of the node so that traffic subsequently received by node N2 that has a label—path ID=P1—will be forwarded along path P1 to node N5. Similar actions may be taken with respect to the path state advertisement shown in FIG. 5.
  • Optionally, once the forwarding state has been created for the path, the node may also transmit a commit message or other type of message back toward the originating node so that the node that originated the path state advertisement is able to confirm that all nodes on the path have received the message and processed the message, and that the path will be set up as desired. Although these messages may optionally be implemented, the invention is not limited in this manner as many different ways of confirming paths may be used if desired once the path has been advertised using the path state advertisement messages described herein.
  • Once a path has been established (and optionally confirmed) traffic may be transmitted on the path by causing a label containing the path identifier to be applied to packets that are to travel on the path. When a network element receives a packet with the path identifier, it will perform the action associated with the forwarding state that was derived from the earlier received path entry that defined the path. For example, node N2 will forward all traffic with path ID P1 to node N5. Thus, the nodes may use label based forwarding without also considering where the traffic arrived.
  • FIG. 7 shows a process that may be used to implement an embodiment of the invention. As shown in FIG. 7, network elements on the communication network will build an ordinary link state database by collecting link state advertisements from other network elements on the domain (100). The link state database may then be used to calculate one or more paths through the network (102). Distribution of link state advertisements and the manner in which link state advertisements are used or exchanged is not expected change in connection with implementation of an embodiment of the invention.
  • Once a network element has calculated one or more paths, it may generate a path state advertisement (104) which, as discussed above, may contain one or more path entries, each of which will have a globally unique path ID and path information. The path state advertisement may then be advertised onto the network using the distribution system that was also used to distribute link state advertisements (106). Thus, distribution of the path state advertisements requires no additional distribution mechanism to be established to enable all nodes on the network to receive the advertisement. It does, however, require either that the path state advertisements travel inside existing protocol data units (with appropriate differentiation mechanisms) or in new protocol data units that share the same flooding header and processing as the existing link state advertisement protocol data units.
  • When a path state advertisement is received by a network element (110), the network element will forward the path state advertisement as it would a normal link state advertisement, and it will also evaluate the path entries in the path state advertisement to determine if the path state advertisement is relevant to it (112). Thus, the network element will determine for each path entry in the path state advertisement if the path entry references the network element or a link connected to the network element (114). If the path entry is relevant to the network element, the network element will install forwarding state for that path (116) in a manner similar to how it would normally have installed forwarding state had the path been established using another path signaling protocol. If the path entry does not reference the network element, the network element will ignore that path entry and move on to the next path entry in the path state advertisement (118).
  • Where label based forwarding is used to forward packets through the nodes on the network, the paths that are established using the path state advertisements discussed herein will be one directional. For example, path P1 is used to carry traffic from node N3 to node N5 and the intermediate nodes on the path, when they receive traffic with a label=P1, will forward the traffic in the direction of node N5. To create a bi-directional path, the forwarding state on the nodes may be changed such that the nodes forward traffic based on both input link/port and label. In this instance, when a node receives a path state advertisement the node may install forwarding state in both directions along the path so that it is able to distinguish between traffic traveling in both directions and may forward the traffic in the correct direction along the path.
  • Alternatively, if a bi-directional path is to be established, the end node N5 may create a second path state advertisement and re-advertise the path P1′ having the same set of nodes/links in reverse order and with a different globally unique path ID. Although the traffic on the two paths P1 and P1′ will have different labels, the path over which the traffic will travel will be the same. While this approach will cause two different entries to be entered into the network element's forwarding table (one for each direction of the bi-directional path) the network element will be able to perform label based switching and will not be required to use information associated with the input port in connection with making a forwarding decision for the traffic. The invention is not limited to an embodiment in which bi-directional paths are able to be established or to one particular manner of establishing the bi-directional paths.
  • A node may advertise a path that does not terminate at itself. Accordingly, since labels are globally unique, if a node advertises two or more path segments that meet upstream of itself, it will in effect create a tree of path segments which merge. In this manner, a node may create a many to one tree such that multiple destinations may reach it via explicitly described path segments. Similarly, a one to many (broadcast) tree may be created in which packets originate and flow along the path segments, but are copied and forwarded at the merging points of the segments. In general, a node can create a tree of path segments or even a cycle of path segments anywhere in the network. The tree can be followed in either direction so that the tree may be a one to many or many to one tree by simply using a different forwarding paradigm, regardless of how the paths are advertised.
  • FIG. 8 shows a functional block diagram of a network element configured to enable paths to be created using path state advertisements. The network element in FIG. 8 is configured to generate paths state advertisements and broadcast the path state advertisements on the network. In addition, the network element is configured to receive path state advertisements and learn therefrom how forwarding state should be created to enable paths to be implemented through the network. The invention is not limited to the embodiment shown in FIG. 8 however, as many other types of network elements and network elements with architectures different than that shown in FIG. 8 may be used as well.
  • In the embodiment shown in FIG. 8, the network element 120 includes a data plane 140 including a plurality of input/output cards 122 configured to receive data from a communication network and output data on to the communication network. Particular input/output cards may perform both input and output functions or may selectively perform only one of these functions. Data may be switched between the cards via switch fabric 124. Optionally, the data plane may contain one or more service cards, such as one or more cards configured to perform one or more processes on the received packets, and the invention is not limited to an embodiment in which only the particular illustrated cards are used to implement the data plane of the network element 120. The data plane of FIG. 8 may be implemented to perform label switching such that packets received with particular labels may be automatically output over an intended interface to cause those packets to be forwarded through the network along the paths discussed above.
  • The manner in which data is handled by the data plane of the network element 120, i.e. the particular forwarding state to be established to implement the paths through the network, is controlled by a control plane 142 generally including a processor 126 containing control logic 128. The control plane may be implemented as one or more control cards/data service cards and the invention is not limited by the particular manner in which the control plane is implemented.
  • The control logic 128 may implement one or more processes, such as a process to implement a protocol stack 130 to enable the network element to be able to implement using one or more networking protocols so that it can participate in communications on the communication network. The network element may also include routing software 132 configured to receive and generate link state advertisements, enable the network element to compute paths through the network, generate path state advertisements, and extract forwarding state information from received path state advertisements. For example, in addition to other functions, the routing software 132 may be configured to implement the process described above in connection with FIG. 7.
  • The routing software may interface with a link state database 134 to maintain a current topography of the network on which it is operating. Additionally, the routing software may interface with a forwarding state database 136 containing information associated with paths through the network and/or associated with how packets containing particular path IDs should be handled by the network element. The forwarding state database 136 may contain a complete list of all paths through the network, a complete list of those paths that pass through the network element, or other information that will enable the network element to recover from a failure, should it be necessary to restart the network element or otherwise recover from a fault on the network/network element. Other modules may be included as well and the invention is not limited to a network element configured to implement only these several illustrated processes.
  • Although an embodiment has been shown in which the network element includes both a control and a data plane, the invention is not limited in this manner as the network element may be a virtual network element such as a virtual router in which the control is separate from the forwarding state. For example, a computer may act logically as several nodes and communicate forwarding state to the network elements via control channels. Thus, the invention is not limited to the embodiment shown in FIG. 8 as many different ways of implementing embodiments of the invention may be created.
  • Additionally, although an embodiment has been described in which path state advertisements are used to create paths, the path state advertisements may be used to remove paths as well. For example, if a node already has forwarding state for a particular path and receives a path state advertisement containing new forwarding state for the path, the node will remove the old forwarding state and use the new forwarding state. Additionally, the path state advertisement may include a flag indicating that the path is being removed, to enable the network elements to remove all state information associated with the path when the path is no longer necessary. Thus, path state advertisements may be used for more than simply creating new paths but may also be used to modify existing paths or to remove existing paths.
  • The functions described above may be implemented as a set of software program instructions that are stored in a computer readable memory within the network element and executed on one or more processors within the network element. 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. Programmable logic can also be fixed in a computer data signal embodied in a carrier wave, allowing the programmable logic to be transmitted over an interface such as a computer bus or communication network. 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. The invention is limited only as defined in the following claims and the equivalents thereto.

Claims (19)

1. A method of establishing forwarding state in network elements on a communication network, the method comprising the steps of:
creating a path state advertisement containing at least one path entry, said path entry relating to a path through the communication network and including at least a path identifier and path information defining at least a part of the path through the network; and
enabling the path state advertisement to be transmitted onto the communication network as if it were a link state advertisement.
2. The method of claim 1, further comprising the step of computing the path through the communication network from information contained in a link state database containing information obtained from. link state advertisements and path state advertisements.
3. The method of claim 1, wherein the path state advertisement is transmitted using a link state advertisement protocol data unit.
4. The method of claim 1, wherein the path information includes a list of links defining the path through the network.
5. The method of claim 1, wherein the path information includes a list of nodes defining the path claim through the network.
6. The method of claim 1, wherein the path information includes a list of both links and nodes defining the path through the network.
7. The method of claim 1, wherein the path identifier is globally unique on the network.
8. The method of claim 1, wherein the path state advertisement contains multiple path en tries, each of which relates to a different path through the communication network.
9. The method of claim 1, wherein the path state advertisement contains multiple path entries, and at least a plurality of the entries relate to different portions of a tree-shaped path through the communication network.
10-19. (canceled)
20. The method of claim 1, further comprising forwarding the path state advertisement on the communication network as if it were a link state advertisement.
21. The method of claim 1, further comprising, in at least one node of the communication network, evaluating path entries of the path state advertisement to determine whether at least one of the path entries corresponds to a path passing through the at least one node.
22. The method of claim 21, further comprising, evaluating path en tries of the path state advertisement to determine whether at least one of the path entries corresponds to a path passing through the at least one node by looking for at least one of:
path entries containing a node identifier of the the at least one node; and
path entries containing a link identifier of a link connected to the at least one node.
23. The method of claim 21 further comprising, upon finding a path state advertisement for a path entry which passes through the at least one node, installing forwarding state for the path associated with the path entry at the at least one node.
24. The method of claim 23, wherein installing forwarding state comprises associating the path identifier in the path en try with a forwarding action that will cause traffic on the path associated with the path entry to be forwarded along the path specified by the path information in the path entry.
25. The method of claim 23, further comprising transmitting a message from the at least one node installing forwarding state to a node originating the path state advertisement to confirm installation of forwarding state at the at least one node.
26. The method of claim 23, further comprising applying a label containing the path identifier to packets to be transmitted on the path associated with the path entry in the path state advertisement.
27. The method of claim 26, further comprising, at the at least one node, forwarding at least one packet having the label containing the path identifier according the installed forwarding state.
28. The method of claim 23, wherein the installed forwarding state is based on both path identifier and on at least one of input link and input port to enable the at least one node to forward traffic in a correct direction along the path.
US13/465,648 2006-09-22 2012-05-07 Method and Apparatus for Establishing Forwarding State Using Path State Advertisements Abandoned US20120218916A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/465,648 US20120218916A1 (en) 2006-09-22 2012-05-07 Method and Apparatus for Establishing Forwarding State Using Path State Advertisements

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/525,594 US8199755B2 (en) 2006-09-22 2006-09-22 Method and apparatus establishing forwarding state using path state advertisements
US13/465,648 US20120218916A1 (en) 2006-09-22 2012-05-07 Method and Apparatus for Establishing Forwarding State Using Path State Advertisements

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/525,594 Division US8199755B2 (en) 2006-09-22 2006-09-22 Method and apparatus establishing forwarding state using path state advertisements

Publications (1)

Publication Number Publication Date
US20120218916A1 true US20120218916A1 (en) 2012-08-30

Family

ID=39224814

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/525,594 Expired - Fee Related US8199755B2 (en) 2006-09-22 2006-09-22 Method and apparatus establishing forwarding state using path state advertisements
US13/465,648 Abandoned US20120218916A1 (en) 2006-09-22 2012-05-07 Method and Apparatus for Establishing Forwarding State Using Path State Advertisements

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/525,594 Expired - Fee Related US8199755B2 (en) 2006-09-22 2006-09-22 Method and apparatus establishing forwarding state using path state advertisements

Country Status (1)

Country Link
US (2) US8199755B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130294453A1 (en) * 2012-05-03 2013-11-07 Futurewei Technologies, Inc. Layer-3 services for united router farm

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7843914B2 (en) * 2007-06-29 2010-11-30 Alcatel-Lucent Network system having an extensible forwarding plane
US20090003375A1 (en) * 2007-06-29 2009-01-01 Martin Havemann Network system having an extensible control plane
US8000329B2 (en) * 2007-06-29 2011-08-16 Alcatel Lucent Open platform architecture for integrating multiple heterogeneous network functions
US8385341B2 (en) * 2008-10-02 2013-02-26 Telefonaktiebolaget L M Ericsson (Publ) Ethernet frame broadcast emulation
US9300570B2 (en) * 2012-05-22 2016-03-29 Harris Corporation Multi-tunnel virtual private network
US9049233B2 (en) 2012-10-05 2015-06-02 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
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
US10587505B1 (en) 2012-12-27 2020-03-10 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
US10904144B2 (en) 2012-12-27 2021-01-26 Sitting Man, Llc Methods, systems, and computer program products for associating a name with a network path
US10404582B1 (en) 2012-12-27 2019-09-03 Sitting Man, Llc Routing methods, systems, and computer program products using an outside-scope indentifier
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
US10404583B1 (en) 2012-12-27 2019-09-03 Sitting Man, Llc Routing methods, systems, and computer program products using multiple outside-scope identifiers
US10476787B1 (en) 2012-12-27 2019-11-12 Sitting Man, Llc Routing methods, systems, and computer program products
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
US10447575B1 (en) 2012-12-27 2019-10-15 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
US10419334B1 (en) 2012-12-27 2019-09-17 Sitting Man, Llc Internet protocol 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
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
US9537769B2 (en) 2013-03-15 2017-01-03 Cisco Technology, Inc. Opportunistic compression of routing segment identifier stacks
US9537718B2 (en) 2013-03-15 2017-01-03 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
US9762488B2 (en) 2014-03-06 2017-09-12 Cisco Technology, Inc. Segment routing extension headers
JP6062388B2 (en) * 2014-03-31 2017-01-18 株式会社日立製作所 COMMUNICATION SYSTEM, COMMUNICATION CONTROL METHOD, AND CONTROL DEVICE
US9401858B2 (en) 2014-06-30 2016-07-26 Cisco Technology, Inc. Loop avoidance during network convergence in switched networks
US9807001B2 (en) 2014-07-17 2017-10-31 Cisco Technology, Inc. Segment routing using a remote forwarding adjacency identifier
US9755946B2 (en) * 2015-01-06 2017-09-05 Verizon Patent And Licensing Inc. Confidentially determining route diversity for network routes
US10341221B2 (en) 2015-02-26 2019-07-02 Cisco Technology, Inc. Traffic engineering for bit indexed explicit replication
US10263881B2 (en) 2016-05-26 2019-04-16 Cisco Technology, Inc. Enforcing strict shortest path forwarding using strict segment identifiers
US11032197B2 (en) 2016-09-15 2021-06-08 Cisco Technology, Inc. Reroute detection in segment routing data plane
US10389618B2 (en) * 2017-01-23 2019-08-20 Cisco Technology, Inc. Distributing network path information in a network environment
EP3750284A1 (en) 2018-02-23 2020-12-16 Huawei Technologies Co., Ltd. Advertising and programming preferred path routes using interior gateway protocols
WO2019190699A1 (en) * 2018-03-28 2019-10-03 Futurewei Technologies, Inc. Method and apparatus for preferred path route information distribution and maintenance
WO2019209480A1 (en) 2018-04-26 2019-10-31 Futurewei Technologies, Inc. Resource reservation and maintenance for preferred path routes in a network
WO2019212678A1 (en) 2018-05-04 2019-11-07 Futurewei Technologies, Inc. Explicit backups and fast re-route mechanisms for preferred path routes in a network
WO2019236221A1 (en) 2018-06-04 2019-12-12 Futurewei Technologies, Inc. Preferred path route graphs in a network
US11140074B2 (en) 2019-09-24 2021-10-05 Cisco Technology, Inc. Communicating packets across multi-domain networks using compact forwarding instructions

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020018447A1 (en) * 2000-08-09 2002-02-14 Nec Corporation Method and system for routing packets over parallel links between neighbor nodes
US20020093954A1 (en) * 2000-07-05 2002-07-18 Jon Weil Failure protection in a communications network
US20030090996A1 (en) * 2001-11-09 2003-05-15 Fujitsu Network Communications, Inc. Focused link state advertisements
US20040039839A1 (en) * 2002-02-11 2004-02-26 Shivkumar Kalyanaraman Connectionless internet traffic engineering framework
US20050180431A1 (en) * 2002-10-02 2005-08-18 Hiroshi Kinoshita Transfer system
US7061859B2 (en) * 2001-08-30 2006-06-13 Corrigent Systems Ltd. Fast protection in ring topologies
US20070070909A1 (en) * 2005-09-27 2007-03-29 Roke Manor Research Limited Resilient network
US7313328B2 (en) * 2002-02-28 2007-12-25 Nippon Telegraph And Telephone Corporation Node used in photonic network, and photonic network
US7453884B2 (en) * 2000-04-25 2008-11-18 Cisco Technology, Inc. Apparatus and method for scalable and dynamic traffic engineering in a data communication network

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5995503A (en) * 1996-06-12 1999-11-30 Bay Networks, Inc. Method and apparatus for providing quality of service routing in a network
JP2985940B2 (en) * 1996-11-08 1999-12-06 日本電気株式会社 Failure recovery device
US6418476B1 (en) * 1998-06-29 2002-07-09 Nortel Networks, Limited Method for synchronizing network address translator (NAT) tables using the open shortest path first opaque link state advertisement option protocol
US6606325B1 (en) * 1999-12-10 2003-08-12 Nortel Networks Limited Fast path forwarding of link state advertisements using multicast addressing
US6757258B1 (en) * 2000-05-04 2004-06-29 Cisco Technology, Inc. Method and apparatus for reducing OSPF flooding
US7433969B2 (en) * 2001-12-31 2008-10-07 Redback Networks Inc. Method and apparatus for representing label switched paths
US20040136371A1 (en) * 2002-01-04 2004-07-15 Muralidhar Rajeev D. Distributed implementation of control protocols in routers and switches
US7209449B2 (en) * 2002-03-27 2007-04-24 Intel Corporation Systems and methods for updating routing and forwarding information
US7428219B2 (en) * 2004-02-27 2008-09-23 Intel Corporation System and method to exchange information between a control element and forwarding elements in a network element architecture
US7031262B2 (en) * 2004-05-19 2006-04-18 Cisco Technology, Inc. Reoptimization triggering by path computation elements
US7715382B2 (en) * 2004-11-01 2010-05-11 Alcatel-Lucent Usa Inc. Softrouter
US7567577B2 (en) * 2005-06-28 2009-07-28 Cisco Technology, Inc. Link state advertisements specifying dynamic routing metrics and associated variation metrics and selective distribution thereof

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7453884B2 (en) * 2000-04-25 2008-11-18 Cisco Technology, Inc. Apparatus and method for scalable and dynamic traffic engineering in a data communication network
US20020093954A1 (en) * 2000-07-05 2002-07-18 Jon Weil Failure protection in a communications network
US20020018447A1 (en) * 2000-08-09 2002-02-14 Nec Corporation Method and system for routing packets over parallel links between neighbor nodes
US7061859B2 (en) * 2001-08-30 2006-06-13 Corrigent Systems Ltd. Fast protection in ring topologies
US20030090996A1 (en) * 2001-11-09 2003-05-15 Fujitsu Network Communications, Inc. Focused link state advertisements
US20040039839A1 (en) * 2002-02-11 2004-02-26 Shivkumar Kalyanaraman Connectionless internet traffic engineering framework
US7313328B2 (en) * 2002-02-28 2007-12-25 Nippon Telegraph And Telephone Corporation Node used in photonic network, and photonic network
US20050180431A1 (en) * 2002-10-02 2005-08-18 Hiroshi Kinoshita Transfer system
US20070070909A1 (en) * 2005-09-27 2007-03-29 Roke Manor Research Limited Resilient network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130294453A1 (en) * 2012-05-03 2013-11-07 Futurewei Technologies, Inc. Layer-3 services for united router farm
US8891536B2 (en) * 2012-05-03 2014-11-18 Futurewei Technologies, Inc. Layer-3 services for united router farm

Also Published As

Publication number Publication date
US20080075016A1 (en) 2008-03-27
US8199755B2 (en) 2012-06-12

Similar Documents

Publication Publication Date Title
US8199755B2 (en) Method and apparatus establishing forwarding state using path state advertisements
US8811388B2 (en) Service instance applied to MPLS networks
CN111385206B (en) Message forwarding method, network system, related equipment and computer storage medium
US9350646B2 (en) MPLS traffic engineering for point-to-multipoint label switched paths
US7983153B2 (en) Fast reroute (FRR) protection at the edge of a RFC 2547 network
US9350639B2 (en) Forwarding data in a data communications network
EP1609279B1 (en) Method for recursive bgp route updates in mpls networks
EP1859586B1 (en) Loop prevention technique for mpls using service labels
EP2425632B1 (en) Virtual links in a routed ethernet mesh network
JP5129261B2 (en) Traffic engineered path in an Ethernet network with link state protocol control
US8259564B1 (en) Egress protection for label switched paths
EP2391077B1 (en) Method and border node for advertising border connection information of autonomous system
US20090304010A1 (en) Network element providing an interworking function between plural networks, and system and method including the network element
WO2011044957A1 (en) Multipoint-to-multipoint service for a communications network
WO2020142875A1 (en) Routing distributing method, device and system
JP2001285356A (en) Device for connecting of label switch pass, method for the same and recording media

Legal Events

Date Code Title Description
AS Assignment

Owner name: ROCKSTAR CONSORTIUM US LP, TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ROCKSTAR BIDCO, LP;REEL/FRAME:032436/0804

Effective date: 20120509

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 -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION