Method and apparatus for fast reroute in a connection-oriented network
A method and an apparatus for rapidly resuming, at times of failures, network traffic in a connection-oriented network by using an alternative route pre-computed and stored locally in nodes along an initial route without requiring signaling of upstream nodes or a master server.
1. A method comprising:
determining, by a first node, a failure of at least one of a second node or a link, the second node and the link being located downstream, along a first route, from the first node;
determining, by the first node and based on the failure of the at least one of the second node or the link, that the first node does not store information regarding a second route; and
transmitting, by the first node and based on determining that the first node does not store the information regarding the second route, a message to a third node,
the third node being located upstream, along the first route, from the first node, the third node being different than the second node, and the message causing the third node to use the second route to forward packets intended for the first route,
the second route being different than the first route, and
the second route being a route that is modified based on administrative constraints,
the administrative constraints including: bandwidth information, and a quantity of hops information.
2. The method of claim 1 , where the third node stores the information regarding the second route.
3. The method of claim 1 , where, when determining the failure of the at least one of the second node or the link, the method includes:
transmitting a message to the second node; and
determining, based on transmitting the message to the second node, that the second node does not transmit, to the first node, a reply message.
4. The method of claim 1 , where the packets are forwarded to a fourth node and not forwarded to the second node.
5. The method of claim 1 , where the second route is created by using information associated with a third route and a fourth route,
the second route being different than the third route and being different than the fourth route.
6. The method of claim 5 , where the third route and the fourth route have similar constraints.
7. The method of claim 5 , where the third route and the fourth route have a common node after which the third route and the fourth route share at least one node and at least one link.
8. A network node comprising:
a processor to:
receive information indicating a failure of at least one of a second network node or a link,
the second network node and the link being located downstream, along a first route, from the network node;
determine, based on the failure of the at least one of the second network node or the link, that the network node does not store information regarding a second route; and
transmit, based on determining that the network node does not store the information regarding the second route, a message to a third network node,
the third network node being located upstream, along the first route, from the network node,
the third network node being different than the second network node, and
the message causing the third network node to use the second route to forward packets intended for the first route,
the second route being different than the first route: and the second route being a route that is modified based on administrative constraints,
the administrative constraints including: bandwidth information, and a quantity of hops information.
9. The network node of claim 7 , where the processor, when determining the failure of the at least one of the second network node or the link, is further to:
transmit a message to the second network node; and
determine, based on transmitting the message to the second node, that the second network node does not transmit, to the network node, a reply message.
10. The network node of claim 8 , where the processor is further to:
receive the packets;
add a respective header to each of the first packets; and
forward the packets, with the respective added headers, according to the first route.
11. The network node of claim 8 , where the processor is further to:
receive the packets;
replace a respective header for each of the packets; and
forward the packets, with the respective replaced headers, according to the first route.
12. The network node of claim 8 , where the second route is created by using information associated with a third route and a fourth route,
the second route being different than the third route and being different than the fourth route.
13. The network node of claim 12 , where
the third route and the fourth route have similar constraints, and
the third route and the fourth route have a common node after which the third route and the fourth route share at least one node and at least one link.
14. The network node of claim 8 , where the third network node determines the second route.
15. A non-transitory computer-readable medium storing instructions, the instructions comprising:
one or more instructions, which, when executed by a processor of a first node, cause the processor to:
determine a failure of at least one of a second node or a link,
the second node and the link being located downstream, along a first route, from the first node, and
the first node not storing information regarding a second route; and transmit, based on the first node not storing the information regarding the second route, a message to a third node,
the third node being located upstream, along the first route, from the first node,
the third node being different than the second node, and
the message causing the third node to use the second route to forward packets intended for the first route,
the second route being different than the first route and the second route being a route that is modified based on administrative constraints,
the administrative constraints including: bandwidth information, and a quantity of hops information.
16. The medium of claim 15 , where the third node determines the second route.
17. The medium of claim 15 , where the instructions further include:
one or more instructions to receive the packets;
one or more instructions to add a respective header to each of the packets; and
one or more instructions to forward the packets, with the respective added headers, according to the first route.
18. The medium of claim 15 , where the instructions further include:
one or more instructions to receive the packets;
one or more instructions to replace a respective header for each of the packets; and
one or more instructions to forward the packets, with the respective replaced headers, according to the first route.
19. The medium of claim 15 , where the third node stores the information regarding the second route.
20. The medium of claim 15 , where the packets are forwarded to a fourth node and not forwarded to the second node.