Method and apparatus for automatic protection switching
First Claim
Patent Images
1. A method of establishing at least a pair of paths between a source node and a destination node in a network including a plurality of nodes, the method comprising the steps of:
- (a) selecting a source node;
(b) selecting a cycle around the source node, wherein the cycle includes a source node a first plurality of nodes;
(c) assigning a first source node value to the source node;
(d) assigning a second different source node value to the source node;
(e) assigning a node value to each of the first plurality of nodes wherein the node value assigned to each node decreases in a first direction around the cycle;
(f) constructing a first set of arcs each of the arcs connecting an upstream node and a downstream node, the upstream node in each of the arcs having a node value which is not less than the node value of the downstream node; and
(g) constructing a second set of arcs, each of the arcs connecting an upstream node and a downstream node, the upstream node in each of the arcs having a node value which is not greater than the node value of the downstream node.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for generating first and second tree topologies for any source node in a network which can be represented as a node or an edge redundant graph, such that any node in the graph remains connected to the source node via at least one tree even after the failure of a node or an edge. This technique provides a recovery mechanism upon detection of a failure in a network.
-
Citations
38 Claims
-
1. A method of establishing at least a pair of paths between a source node and a destination node in a network including a plurality of nodes, the method comprising the steps of:
-
(a) selecting a source node; (b) selecting a cycle around the source node, wherein the cycle includes a source node a first plurality of nodes; (c) assigning a first source node value to the source node; (d) assigning a second different source node value to the source node; (e) assigning a node value to each of the first plurality of nodes wherein the node value assigned to each node decreases in a first direction around the cycle; (f) constructing a first set of arcs each of the arcs connecting an upstream node and a downstream node, the upstream node in each of the arcs having a node value which is not less than the node value of the downstream node; and (g) constructing a second set of arcs, each of the arcs connecting an upstream node and a downstream node, the upstream node in each of the arcs having a node value which is not greater than the node value of the downstream node. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of establishing at least a pair of paths between a source node and a destination node in a network including a plurality of nodes, the method comprising the steps of:
-
(a) selecting a source node; (b) selecting a first cycle around the source node, wherein the first cycle includes a first plurality of nodes; (c) assigning first and second source values to the source node; (d) assigning first and second node values to each of the first plurality of nodes wherein first ones of the first and second node values assigned to each node do not increase in value in a first direction around the first cycle and second ones of the first and second node values assigned to each node do not increase in value in the first direction around the first cycle and wherein for each node the first node value is greater than the second node value; (e) constructing a first set of arcs, each of the arcs linking an upstream node and a downstream node in the first cycle, the upstream node in each of the arcs having a node value which is not less than a node value of the downstream node; and (f) constructing a second set of arcs, each of the arcs connecting an upstream node and a downstream node in the first cycle, the upstream node in each of the arcs having a node value which is not greater than a node value of the downstream node. - View Dependent Claims (7, 8, 9, 10, 11, 12)
-
-
13. A computer program product comprising:
-
a computer useable medium having computer readable program code to select a source node from a plurality of nodes; a computer useable medium having computer readable program code to select a cycle around the source node, wherein the cycle includes a first plurality of nodes; a computer useable medium having computer readable program code to assign a first source value to the source node; a computer useable medium having computer readable program code to assign a second different source value to the source node; a computer useable medium having computer readable program code to assign a node value to each of the first plurality of nodes wherein the node value assigned to each node decreases in the first direction around the cycle; a computer useable medium having computer readable program code to construct a first set of arcs, each of the arcs connecting an upstream node and a downstream node, the upstream node in each of the arcs having a node value which is not less than the node value of the downstream node; and a computer useable medium having computer readable program code to construct a second set of arcs, each of the arcs connecting an upstream node and a downstream node, the upstream node in each of the arcs having a node value which is not greater than the node value of the downstream node. - View Dependent Claims (14, 15, 16)
-
-
17. A computer program product comprising:
-
a computer useable medium having computer readable program code to select a source node from a plurality of nodes to be included in a network; a computer useable medium having computer readable program code to select a first cycle around the source node, wherein the first cycle includes a first plurality of nodes; a computer useable medium having computer readable program code to assign first and second source node values to the source node; a computer useable medium having computer readable program code to assign first and second node values to each of the first plurality of nodes wherein first ones of the first and second node values assigned to each node do not increase in value in a first direction around the first cycle and second ones of the first and second node values assigned to each node do not increase in value in the first direction around the first cycle and wherein for each node the first node value is greater than the second node value; a computer useable medium having computer readable program code to construct a first set of arcs, each of the arcs linking an upstream node and a downstream node in the first cycle, the upstream node in each of the arcs having a node value which is not less than a node value of the downstream node; and a computer useable medium having computer readable program code to construct a second set of arcs, each of the arcs connecting an upstream node and a downstream node in the first cycle, the upstream node in each of the arcs having a node value which is not greater than a node value of the downstream node. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A network comprising:
a plurality of nodes each of the nodes comprising; means for exchanging network topology information with each of the plurality of nodes; means for computing a plurality of directed trees wherein at least two of the plurality of directed trees are redundant after failure of a first one of a node and a link; and means for transmitting the plurality of directed trees computed in each of the nodes to first ones of the plurality of nodes. - View Dependent Claims (25)
-
26. A network comprising:
a plurality of nodes each of the nodes coupled by a link and each of the nodes comprising; means for transmitting network topology information to a first one of the plurality of nodes; means for providing traffic information to the first one of the plurality of nodes and wherein the first one of the plurality of nodes comprises; means for computing a plurality of trees for each of the plurality of nodes and transmitting the tree information from the first one of the plurality of nodes to the remainder of the plurality of nodes wherein at least two of the plurality of directed trees are redundant after failure of a first one of a node and a link. - View Dependent Claims (27)
-
28. A method for generating two directed trees for automatic protection switching comprising the steps of:
-
selecting a source node having first and second source node values; selecting a first cycle around the source node, the first cycle including a plurality of nodes; ordering the plurality of nodes in decreasing order in a first direction around the cycle and in increasing order in a second opposite direction around the cycle; constructing two sets of arcs; selecting a first one of a path and a cycle which includes a node not already included in the first cycle; and ordering any node not already ordered such that a value assigned to each node does not increase in the value when traversing the cycle in the first direction and does not decrease in value when traversing the cycle in the second direction. - View Dependent Claims (29)
-
-
30. A method of providing a network having a plurality of nodes with a logical tree topology, the method comprising the steps of:
-
(a) selecting a first cycle containing a first plurality of nodes with a first one of the first plurality of nodes corresponding to a first source node; (b) determining if the first cycle includes all nodes to be included in the network; (c) in response to the first cycle not including all nodes to be included in the network, then performing the steps of; (i) selecting a first starting node from the plurality of nodes in the first cycle; (ii) assigning a first starting node value to the first starting node; (iii) selecting a first ending node from the plurality of nodes in the first cycle; (iv) assigning a first ending node value to the first ending node; (v) selecting a first path between the first starting node and the first ending node which includes at least one intermediate node not included in the first cycle; (vi) assigning a node value to each of the at least one intermediate nodes. - View Dependent Claims (31, 32)
-
-
33. A network comprising:
-
a plurality of nodes; a first plurality of links each of said first plurality of links having a first end coupled to a first one of the plurality of nodes and a second end coupled to a second different one of the plurality of nodes such that the nodes and first plurality of links form a first tree topology; and a second plurality of links each of said second plurality of links having a first end coupled to a first one of the plurality of nodes and a second end coupled to a second different one of the plurality of nodes such that the nodes and links form a second tree topology and wherein in response to failure of any of the nodes or first or second plurality of links, each of said plurality of nodes remain mutually connected through at least one of said first and second tree topologies. - View Dependent Claims (34)
-
-
35. A network planning system comprising:
-
means for selecting a source node; means for selecting a cycle around the source node, wherein the cycle includes a source node a first plurality of nodes; means for assigning a first source node value to the source node; means for assigning a second different source node value to the source node; means for assigning a node value to each of the first plurality of nodes wherein the node value assigned to each node decreases in a first direction around the cycle; means for constructing a first set of arcs each of the arcs connecting an upstream node and a downstream node, the upstream node in each of the arcs having a node value which is not less than the node value of the downstream node; and means for constructing a second set of arcs, each of the arcs connecting an upstream node and a downstream node, the upstream node in each of the arcs having a node value which is not greater than the node value of the downstream node. - View Dependent Claims (36, 37)
-
-
38. A method of generating two directed trees for automatic protection switching in an optical network, the method comprising the steps of:
-
identifying a source node; selecting a first cycle containing the source node; determining if the cycle includes all nodes in a graph; in response to the cycle not containing all the nodes in a graph, selecting a first path that starts on some node in the first cycle; determining if the first cycle and first path do not include all the nodes of the graph; in response to the cycle and path not including all the nodes in the graph, constructing another path starting on some node already included in one of the first cycle and first path and passing through one or more nodes not included in one of the first cycle and first path and ending on another node included in one of the first cycle and first path; and ordering the nodes in accordance with a predetermined criteria.
-
Specification