Reversing direction of packet transmission in a network having a ring topology
A method implemented by a node in a network having a ring topology includes the step of discovering a first peer node arranged in a first direction around the ring with respect to the node. The method further includes the step of discovering a second peer node arranged in a second direction around the ring with respect to the node. Upon determining that data packets are propagating in the first direction and communication with the first peer node is interrupted, the method include performing a direction reversal procedure to propagate the data packets in the second direction. In response to the second peer node being unable to perform the direction reversal procedure, the method includes the step of tunnelling the data packets to a next node in the second direction to thereby bypass the second peer node.
1 . A node configured to operate in a network in which multiple nodes are arranged in a ring, the node comprising circuitry configured to:
discover a first peer node arranged in a first direction around the ring with respect to the node;
discover a second peer node arranged in a second direction around the ring with respect to the node;
upon determining that data packets are propagating in the first direction and communication with the first peer node is interrupted, initiate a direction reversal procedure to propagate the data packets in the second direction, wherein the direction reversal procedure comprises:
determine whether the second peer node is operational and supports the direction reversal procedure;
in response to the second peer node being operational and supports the direction reversal procedure, perform the direction reversal procedure to propagate the data packets in the second direction; and
in response to the second peer node being operational and unable to perform the direction reversal procedure, establish a bypass tunnel using Multiprotocol Label Switching (MPLS) or Segment Routing through the second peer node to tunnel the data packets through the second peer node to a next node in the second direction without requiring the second peer node to perform the direction reversal procedure, wherein the bypass tunnel terminates at a next node beyond the second peer in the second direction,
wherein the second peer node being unable to perform the direction reversal procedure includes the second peer node operating properly but not equipped to perform the direction reversal procedure, wherein the second peer node is bypassed via the tunnel, and wherein determining whether the second peer node supports the direction reversal procedure comprises receiving a capability indication flag from the second peer node during convergence at least when the second peer node supports the direction reversal.
2 . The node of claim 1 , wherein, upon determining that data packets are propagating in the second direction and communication with the second peer node is interrupted, the circuitry is further configured to perform a direction reversal procedure to propagate the data packets in the first direction.
3 . The node of claim 2 , wherein, in response to the first peer node being unable to perform the direction reversal procedure, the circuitry is further configured to tunnel the data packets to a next node in the first direction to thereby bypass the first peer node.
4 . The node of claim 1 , wherein the circuitry is further configured to perform as part of the direction reversal procedure, a convergence procedure to discover the first and second peer nodes and to determine that the network includes a ring topology, and wherein the convergence procedure further includes a routine of determining which of the multiple nodes are equipped to perform the direction reversal procedure.
5 . The node of claim 4 , wherein the convergence procedure includes Label Distribution Protocol (LDP) and allows the node to share its prefix with other nodes of the network for allocation in routing tables associated with the other nodes.
6 . The node of claim 4 , wherein the determining which of the multiple nodes are equipped to perform the direction reversal procedure is determined via extensions of one or more of Interior Gateway Protocol (IGP) or Border Gateway Protocol (BGP) protocols.
7 . The node of claim 1 , wherein the multiple nodes are arranged in multiple rings in the network and the node is associated with at least two rings, and wherein the circuitry is further configured to:
discover pairs of peer nodes in two different directions around each of the at least two rings, wherein the ring is one of the at least two rings;
upon determining that second data packets are propagating in one direction around a second ring of the at least two rings and communication with a peer node in the one direction is interrupted, perform a second direction reversal procedure to propagate the second data packets in an opposite direction around the second ring; and
tunnel the second data packets to a next available node in the opposite direction to thereby bypass a next peer node when the next peer node is not equipped to perform the second direction reversal procedure.
8 . The node of claim 1 , wherein the circuitry is further configured to use Multiprotocol Label Switching (MPLS) tables configured to define Label Switched Paths (LSPs) for propagating second data packets in the first and second directions around the ring.
9 . A method configured to be executed in a network in which multiple nodes are arranged in a ring, the method comprising the steps of:
discovering a first peer node arranged in a first direction around the ring with respect to a node;
discovering a second peer node arranged in a second direction around the ring with respect to the node;
upon determining that data packets are propagating in the first direction and communication with the first peer node is interrupted, initiating a direction reversal procedure to propagate the data packets in the second direction;
determining whether the second peer node is operational and supports the direction reversal procedure; and
wherein the second peer node is operational and unable to perform the direction reversal procedure, establish a bypass tunnel using Multiprotocol Label Switching (MPLS) or Segment Routing through the second peer node to tunnel the data packets through the second peer node to a next node in the second direction without requiring the second peer node to perform the direction reversal procedure, wherein the bypass tunnel terminates at a next node beyond the second peer in the second direction,
wherein the second peer node is unable to perform the direction reversal procedure due to the second peer node being operating properly but not equipped to perform the direction reversal procedure, wherein the second peer node is bypassed via the tunnel, and wherein determining whether the second peer node supports the direction reversal procedure comprises receiving a capability indication flag from the second peer node during convergence at least when the second peer node supports the direction reversal.
10 . The method of claim 9 , further comprising the step of performing a direction reversal procedure to propagate the data packets in the first direction upon determining that data packets are propagating in the second direction and communication with the second peer node is interrupted.
11 . The method of claim 10 , further comprising the step of tunnelling the data packets to a next node in the first direction to thereby bypass the first peer node in response to determining that the first peer node is unable to perform the direction reversal procedure.
12 . The method of claim 9 , further comprising the steps of: performing a convergence procedure to discover the first and second peer nodes and to determine that the network includes a ring topology; and
determining which of the multiple nodes are equipped to perform the direction reversal procedure.
13 . A non-transitory computer-readable medium stored on a node arranged in a network having a ring topology in which multiple nodes are arranged in a ring, the non-transitory computer-readable medium having logic configured to enable one or more processors to perform the steps of:
discovering a first peer node arranged in a first direction around the ring with respect to a node;
discovering a second peer node arranged in a second direction around the ring with respect to the node;
upon determining that data packets are propagating in the first direction and communication with the first peer node is interrupted, initiate a direction reversal procedure to propagate the data packets in the second direction, wherein the direction reversal procedure comprises:
determining whether the second peer node is operational and supports the direction reversal procedure;
in response to the second peer node being operational and supports the direction reversal procedure, performing the direction reversal procedure to propagate the data packets in the second direction; and
in response to the second peer node being operational and unable to perform the direction reversal procedure, establish a bypass tunnel using Multiprotocol Label Switching (MPLS) or Segment Routing through the second peer node to tunnel the data packets through the second peer node to a next node in the second direction without requiring the second peer node to perform the direction reversal procedure, wherein the bypass tunnel terminates at a next node beyond the second peer in the second direction,
wherein the second peer node being unable to perform the direction reversal procedure includes the second peer node operating properly but not equipped to perform the direction reversal procedure, wherein the second peer node is bypassed via the tunnel, and wherein determining whether the second peer node supports the direction reversal procedure comprises receiving a capability indication flag from the second peer node during convergence at least when the second peer node supports the direction reversal.
14 . The non-transitory computer-readable medium of claim 13 , wherein, upon determining that data packets are propagating in the second direction and communication with the second peer node is interrupted, the logic further enables the one or more processors to perform a direction reversal procedure to propagate the data packets in the first direction, and wherein, in response to the first peer node being unable to perform the direction reversal procedure, the logic further enables the one or more processors to tunnel the data packets to a next node in the first direction to thereby bypass the first peer node.
15 . The non-transitory computer-readable medium of claim 13 , wherein the logic further enables the one or more processors to perform a convergence procedure to discover the first and second peer nodes and to determine that the network includes a ring topology, and wherein the convergence procedure further includes routines for:
determining which of the multiple nodes are equipped to perform the direction reversal procedure; and
establishing one or more tunnels to bypass one or more nodes that are not equipped to perform the direction reversal procedure.