Routing methods, systems, and computer program products
First Claim
1. An apparatus, comprising:
- at least one non-transitory memory configured to store instructions; and
one or more processors in communication with the at least one non-transitory memory, wherein the one or more processors is configured to execute the instructions to;
identify, by a current node in a network path along which first data is transmitted from a transmitting node to a receiving node in the network path along which the first data is transmitted in a network, network path information that is based on a first policy and is positioned in a header of a first packet that is specified according to a label switching forwarding paradigm, the network path information in the header of the first packet being for use by the current node in transmitting the first data from the transmitting node to the receiving node in the network path along which the first data is transmitted, where the network path information in the header of the first packet is configured for use in identifying a plurality of different identifiers including;
a region scoped node identifier that is in an identifier space having a scope that spans within a particular region of the network, and that globally identifies a particular node in a plurality of nodes in the particular region of the network, where the particular node is included in a network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted, anda node scoped network interface identifier that identifies a network interface of a specific node for transmitting the first data that is communicatively coupled between the transmitting node and the receiving node in the network path along which the first data is transmitted; and
utilize, by the current node and based on the network path information in the header of the first packet, only one of the plurality of different identifiers including only one of the region scoped node identifier or the node scoped network interface identifier, for transmitting the first data from the current node to the receiving node in the network path along which the first data is transmitted;
in the event that the region scoped node identifier is utilized in connection with the first data;
transmit, based on the region scoped node identifier that is utilized in connection with the first data, the first data from the current node to the particular node within the particular region via a first path segment selected, based on a routing table of the current node, from multiple of a plurality of path segments, including at least one multi-hop path segment, that are capable of communicatively coupling the current node and the particular node within the particular region that is included in the network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted; and
in the event that the node scoped network interface identifier is utilized in connection with the first data;
transmit the first data from the current node, which is the specific node for transmitting the first data, via the network interface of the specific node for transmitting the first data to the receiving node in the network path along which the first data is transmitted.
1 Assignment
0 Petitions
Accused Products
Abstract
In various embodiments, an apparatus, non-transitory computer-readable media, and computer-implemented method are provided to: detect, by a current node in a network path along which first data is transmitted from a transmitting node to a receiving node in the network path along which the first data is transmitted in a network, network path information that is based on a first policy and is positioned in a header of a first packet that is specified according to a Multiprotocol Label Switching (MPLS) network protocol, the network path information in the header of the first packet being for use by the current node in transmitting the first data from the transmitting node to the receiving node in the network path along which the first data is transmitted, where the network path information in the header of the first packet includes: a region scoped node identifier that is in an identifier space having a scope that spans within a particular region of the network, and that globally identifies a particular node in a plurality of nodes in the particular region of the network, where the particular node is included in a network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted, and a node scoped network interface identifier that identifies a network interface of a specific node for transmitting the first data that is communicatively coupled between the transmitting node and the receiving node in the network path along which the first data is transmitted; and perform additional processing.
373 Citations
60 Claims
-
1. An apparatus, comprising:
-
at least one non-transitory memory configured to store instructions; and one or more processors in communication with the at least one non-transitory memory, wherein the one or more processors is configured to execute the instructions to; identify, by a current node in a network path along which first data is transmitted from a transmitting node to a receiving node in the network path along which the first data is transmitted in a network, network path information that is based on a first policy and is positioned in a header of a first packet that is specified according to a label switching forwarding paradigm, the network path information in the header of the first packet being for use by the current node in transmitting the first data from the transmitting node to the receiving node in the network path along which the first data is transmitted, where the network path information in the header of the first packet is configured for use in identifying a plurality of different identifiers including; a region scoped node identifier that is in an identifier space having a scope that spans within a particular region of the network, and that globally identifies a particular node in a plurality of nodes in the particular region of the network, where the particular node is included in a network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted, and a node scoped network interface identifier that identifies a network interface of a specific node for transmitting the first data that is communicatively coupled between the transmitting node and the receiving node in the network path along which the first data is transmitted; and utilize, by the current node and based on the network path information in the header of the first packet, only one of the plurality of different identifiers including only one of the region scoped node identifier or the node scoped network interface identifier, for transmitting the first data from the current node to the receiving node in the network path along which the first data is transmitted; in the event that the region scoped node identifier is utilized in connection with the first data;
transmit, based on the region scoped node identifier that is utilized in connection with the first data, the first data from the current node to the particular node within the particular region via a first path segment selected, based on a routing table of the current node, from multiple of a plurality of path segments, including at least one multi-hop path segment, that are capable of communicatively coupling the current node and the particular node within the particular region that is included in the network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted; andin the event that the node scoped network interface identifier is utilized in connection with the first data;
transmit the first data from the current node, which is the specific node for transmitting the first data, via the network interface of the specific node for transmitting the first data to the receiving node in the network path along which the first data is transmitted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 30)
-
-
26. A non-transitory computer-readable media storing computer instructions that, when executed by one or more processors, cause the one or more processors to:
-
identify, by a current node in a network path along which first data is transmitted from a transmitting node to a receiving node in the network path along which the first data is transmitted in a network, network path information that is based on a first policy and is positioned in a header of a first packet that is specified according to a label switching forwarding paradigm, the network path information in the header of the first packet being for use by the current node in transmitting the first data from the transmitting node to the receiving node in the network path along which the first data is transmitted, where the network path information in the header of the first packet is configured for use in identifying a plurality of different identifiers including; a region scoped node identifier that is in an identifier space having a scope that spans within a particular region of the network, and that globally identifies a particular node in a plurality of nodes in the particular region of the network, where the particular node is included in a network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted, and a node scoped network interface identifier that identifies a network interface of a specific node for transmitting the first data that is communicatively coupled between the transmitting node and the receiving node in the network path along which the first data is transmitted; and utilize, by the current node and based on the network path information in the header of the first packet, only one of the plurality of different identifiers including only the region scoped node identifier or the node scoped network interface identifier, for transmitting the first data from the current node to the receiving node in the network path along which the first data is transmitted; in the event that the region scoped node identifier is utilized in connection with the first data;
transmit, based on the region scoped node identifier that is utilized in connection with the first data, the first data from the current node to the particular node within the particular region via a first path segment selected, based on a routing table of the current node, from multiple of a plurality of path segments, including at least one multi-hop path segment, that are capable of communicatively coupling the current node and the particular node within the particular region that is included in the network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted; andin the event that the node scoped network interface identifier is utilized in connection with the first data;
transmit the first data from the current node, which is the specific node for transmitting the first data, via the network interface of the specific node for transmitting the first data to the receiving node in the network path along which the first data is transmitted.
-
-
27. An apparatus, comprising:
a current node that is configured to be communicatively coupled;
in a first network path including a first transmitting node and a first receiving node in a network, and in a second network path including a second transmitting node and a second receiving node in the network, the current node including at least one non-transitory memory configured to store instructions, and one or more processors in communication with the at least one non-transitory memory, wherein the one or more processors of the current node is configured to execute the instructions to cause the current node to;receive a first packet including first data and a first header, the first header being specified according to a label switching forwarding paradigm, the first header being configured for use in identifying a first plurality of identifiers including a region scoped node identifier in a region scoped node identifier space spanning a first region that includes the current node and a first node, the region scoped node identifier identifying, for the current node, the first node in the first region; transmit, based on the region scoped node identifier, the first data from the current node to the first node via a first path segment of the first network path, the first path segment being selected based on a routing table of the current node, and further being selected from path segments that are capable of communicatively coupling the current node and the first node and that include at least one multi-hop path segment; receive a second packet including second data and a second header, the second header being specified according to the label switching forwarding paradigm, the second header being configured for use in identifying a second plurality of identifiers including a scope-specific node identifier in a region-specific identifier space that is specific to, and thus is only useable for data routing in, at least one region that includes the current node, the scope-specific node identifier identifying, for the current node, a second node in a second region in which the current node does not reside; and transmit, based on the scope-specific node identifier, the second data from the current node to the second node via a second path segment of the second network path, the second path segment being selected based on the routing table of the current node, and further being selected from path segments that are capable of communicatively coupling the current node and the second node and that include at least one multi-hop path segment. - View Dependent Claims (29)
-
28. An apparatus, comprising:
a current node that is configured to be communicatively coupled;
in a first network path including a first transmitting node and a first receiving node in a network, in a second network path including a second transmitting node and a second receiving node in the network, and in a third network path including a third transmitting node and a third receiving node in the network, the current node including at least one non-transitory memory configured to store instructions, and one or more processors in communication with the at least one non-transitory memory, wherein the one or more processors of the current node is configured to execute the instructions to cause the current node to;receive a first packet including first data and a first header, the first header being specified according to a label switching forwarding paradigm, the first header being configured for use in identifying a first plurality of identifiers including a region scoped node identifier in a region scoped node identifier space spanning a first region that includes the current node and a first node, the region scoped node identifier identifying, for the current node, the first node in the first region; transmit, based on the region scoped node identifier, the first data from the current node to the first node via a first path segment of the first network path, the first path segment being selected based on a routing table of the current node, and further being selected from path segments that are capable of communicatively coupling the current node and the first node and that include at least one multi-hop path segment; receive a second packet including second data and a second header, the second header being specified according to the label switching forwarding paradigm, the second header being configured for use in identifying a second plurality of identifiers including a scope-specific node identifier in a region-specific identifier space that is specific to, and thus is only useable for data routing in, at least one region that includes the current node, the scope-specific node identifier identifying, for the current node, a second node in a second region in which the current node does not reside; transmit, based on the scope-specific node identifier, the second data from the current node to the second node via a second path segment of the second network path, the second path segment being selected based on the routing table of the current node, and further being selected from path segments that are capable of communicatively coupling the current node and the second node and that include at least one multi-hop path segment; receive a third packet including third data and a third header, the third header being specified according to the label switching forwarding paradigm, the third header being configured for use in identifying a third plurality of identifiers including;
a node scoped network interface identifier that identifies a network interface, and at least one of;
another region scoped node identifier or another scope-specific node identifier; andtransmit, based on the node scoped network interface identifier, the third data from the current node via the network interface to a third node along at least a portion of the third network path.
-
31. A method, comprising:
-
configuring at least a portion of a plurality of instructions; and causing storage of the at least portion of the instructions on at least one non-transitory memory, where the instructions, in response to being executed by circuitry of a current node in a network path along which first data is transmitted from a transmitting node to a receiving node in the network path along which the first data is transmitted in a network, cause the current node to; identify, by the current node, network path information that is based on a first policy and is positioned in a header of a first packet that is specified according to a label switching forwarding paradigm, the network path information in the header of the first packet being for use by the current node in transmitting the first data from the transmitting node to the receiving node in the network path along which the first data is transmitted, where the network path information in the header of the first packet is configured for use in identifying a plurality of different identifiers including; a region scoped node identifier that is in an identifier space having a scope that spans within a particular region of the network, and that globally identifies a particular node in a plurality of nodes in the particular region of the network, where the particular node is included in a network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted, and a node scoped network interface identifier that identifies a network interface of a specific node for transmitting the first data that is communicatively coupled between the transmitting node and the receiving node in the network path along which the first data is transmitted; and utilize, by the current node and based on the network path information in the header of the first packet, only one of the plurality of different identifiers including only one of the region scoped node identifier or the node scoped network interface identifier, for transmitting the first data from the current node to the receiving node in the network path along which the first data is transmitted; in response to the region scoped node identifier being utilized in connection with the first data;
transmit, based on the region scoped node identifier that is utilized in connection with the first data, the first data from the current node to the particular node within the particular region via a first path segment selected, based on a routing table of the current node, from multiple of a plurality of path segments, including at least one multi-hop path segment, that are capable of communicatively coupling the current node and the particular node within the particular region that is included in the network path segment that includes the current node and the receiving node in the network path along which the first data is transmitted; andin response to the node scoped network interface identifier being utilized in connection with the first data;
transmit the first data from the current node, which is the specific node for transmitting the first data, via the network interface of the specific node for transmitting the first data to the receiving node in the network path along which the first data is transmitted. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57)
-
-
58. A method, comprising:
-
configuring at least a portion of a plurality of instructions; and causing storage of the at least portion of the instructions on at least one non-transitory memory, where the instructions, in response to being executed by circuitry of a current node that is configured to be communicatively coupled in a first network path including a first transmitting node and a first receiving node in a network and in a second network path including a second transmitting node and a second receiving node in the network, cause the current node to; receive a first packet including first data and a first header, the first header being specified according to a label switching forwarding paradigm, the first header being configured for use in identifying a first plurality of identifiers including a region scoped node identifier in a region scoped node identifier space spanning a first region that includes the current node and a first node, the region scoped node identifier identifying, for the current node, the first node in the first region; transmit, based on the region scoped node identifier, the first data from the current node to the first node via a first path segment of the first network path, the first path segment being selected based on a routing table of the current node, and further being selected from path segments that are capable of communicatively coupling the current node and the first node and that include at least one multi-hop path segment; receive a second packet including second data and a second header, the second header being specified according to the label switching forwarding paradigm, the second header being configured for use in identifying a second plurality of identifiers including a scope-specific node identifier in a region-specific identifier space that is specific to, and thus is only useable for data routing in, at least one region that includes the current node, the scope-specific node identifier identifying, for the current node, a second node in a second region in which the current node does not reside; and transmit, based on the scope-specific node identifier, the second data from the current node to the second node via a second path segment of the second network path, the second path segment being selected based on the routing table of the current node, and further being selected from path segments that are capable of communicatively coupling the current node and the second node and that include at least one multi-hop path segment. - View Dependent Claims (59)
-
-
60. A method, comprising:
-
configuring at least a portion of a plurality of instructions; and causing storage of the at least portion of the instructions on at least one non-transitory memory, where the instructions, in response to being executed by circuitry of a current node that is configured to be communicatively coupled;
in a first network path including a first transmitting node and a first receiving node in a network, in a second network path including a second transmitting node and a second receiving node in the network, and in a third network path including a third transmitting node and a third receiving node in the network;
cause the current node to;receive a first packet including first data and a first header, the first header being specified according to a label switching forwarding paradigm, the first header being configured for use in identifying a first plurality of identifiers including a region scoped node identifier in a region scoped node identifier space spanning a first region that includes the current node and a first node, the region scoped node identifier identifying, for the current node, the first node in the first region; transmit, based on the region scoped node identifier, the first data from the current node to the first node via a first path segment of the first network path, the first path segment being selected based on a routing table of the current node, and further being selected from path segments that are capable of communicatively coupling the current node and the first node and that include at least one multi-hop path segment; receive a second packet including second data and a second header, the second header being specified according to the label switching forwarding paradigm, the second header being configured for use in identifying a second plurality of identifiers including a scope-specific node identifier in a region-specific identifier space that is specific to, and thus is only useable for data routing in, at least one region that includes the current node, the scope-specific node identifier identifying, for the current node, a second node in a second region in which the current node does not reside; transmit, based on the scope-specific node identifier, the second data from the current node to the second node via a second path segment of the second network path, the second path segment being selected based on the routing table of the current node, and further being selected from path segments that are capable of communicatively coupling the current node and the second node and that include at least one multi-hop path segment; receive a third packet including third data and a third header, the third header being specified according to the label switching forwarding paradigm, the third header being configured for use in identifying a third plurality of identifiers including;
a node scoped network interface identifier that identifies a network interface, and at least one of;
another region scoped node identifier or another scope-specific node identifier; andtransmit, based on the node scoped network interface identifier, the third data from the current node via the network interface to a third node along at least a portion of the third network path.
-
Specification