IP Library › Granted Patent US 10,536,324
Granted Patent B2
US 10,536,324 · App. 15/993,050 · Granted Jan 14, 2020

Per-prefix LFA FRR with bit indexed explicit replication

Inventors: Ijsbrand Wijnands (Leuven, BE); Gregory J. Shepherd (Eugene, OR); Christian J. Martin (Rumson, NJ); Rajiv Asati (Morrisville, NC)
Assignee: Cisco Technology, Inc.
H04L41/0668H04L12/18H04L12/1863H04L45/16H04L45/22H04L45/28H04L45/54H04L45/74
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,536,324
App. No.
15/993,050
Granted
Jan 14, 2020
Kind
B2
Abstract

Methods, devices and program instructions are disclosed for performing bit indexed explicit replication (BIER) including fast reroute capability. One embodiment of a method includes receiving, from an egress node of a BIER network, an advertisement at a forwarding node, where the advertisement identifies a mapping of the egress node to a bit position of a packet bit string to be carried by a packet through the network. The embodiment further includes generating or updating a primary entry for the egress node in a bit indexed routing table (BIRT) for the forwarding node, and determining whether a backup entry for the egress node is to be included in the BIRT. In response to a determination that a backup entry is to be included, the embodiment further includes generating or updating the backup entry in the BIRT.

Claims (58)

1. A method comprising:

receiving, at a forwarding node in a network configured for bit indexed forwarding, an advertisement, wherein

the advertisement is received from an egress node of the network, and

the advertisement identifies a mapping of the egress node to a bit position of a packet bit string to be carried by a packet through the network;

generating or updating a primary entry for the egress node in a bit indexed routing table for the forwarding node, wherein

the primary entry comprises information identifying the bit position, the egress node, and a primary neighbor node for forwarding of a packet to the egress node;

determining whether a backup entry for the egress node is to be included in the bit indexed routing table;

in response to a determination that a backup entry is to be included, generating or updating the backup entry in the bit indexed routing table, wherein

the backup entry comprises information identifying the bit position, the egress node, and a backup neighbor node for forwarding of a packet to the egress node when a path through the primary neighbor node becomes unavailable;

receiving a packet comprising a packet bit string; and

forwarding the packet according to information in either the primary entry or the backup entry.

2. The method of claim 1 , further comprising determining the primary neighbor node.

3. The method of claim 1 , further comprising determining the backup neighbor node.

4. The method of claim 1 , further comprising:

generating or updating a primary entry for the egress node in a bit indexed forwarding table for the forwarding node;

determining whether a backup path exists for the egress node; and

in response to a determination that a backup path exists for the egress node, generating or updating a backup entry for the egress node in the bit indexed forwarding table.

5. The method of claim 4 , wherein the primary entry for the egress node in the bit indexed forwarding table comprises information identifying the bit position and the primary neighbor node.

6. The method of claim 5 , wherein the primary entry for the egress node in the bit indexed forwarding table further comprises information identifying bit positions mapped to one or more additional egress nodes reachable via the primary neighbor node.

7. The method of claim 4 , wherein the backup entry for the egress node in the bit indexed forwarding table comprises information identifying the bit position and the backup neighbor node.

8. The method of claim 7 , wherein the backup entry for the egress node in the bit indexed forwarding table further comprises information identifying bit positions mapped to one or more additional egress nodes reachable via the backup neighbor node.

9. A network device, comprising:

a network interface adapted for communication with one or more nodes of a network configured for bit indexed forwarding;

device memory configured to store a bit indexed routing table for a forwarding node of the network; and

a processor operably coupled to the network interface and the memory locations, wherein the processor is configured to

receive an advertisement from an egress node of the network, wherein the advertisement identifies a mapping of the egress node to a bit position of a packet bit string to be carried by a packet through the network,

generate or update a primary entry for the egress node in the bit indexed routing table, wherein the primary entry comprises information identifying the bit position, the egress node, and a primary neighbor node for forwarding of a packet to the egress node;

determine whether a backup entry for the egress node is to be included in the bit indexed routing table;

in response to a determination that a backup entry is to be included, generate or update the backup entry in the bit indexed routing table, wherein the backup entry comprises information identifying the bit position, the egress node, and a backup neighbor node for forwarding of a packet to the egress node when a path through the primary neighbor node becomes unavailable;

receive a packet comprising a packet bit string; and

forward the packet according to information in either the primary entry or the backup entry.

10. The network device of claim 9 , wherein the processor is further configured to determine the primary neighbor node.

11. The network device of claim 9 , wherein the processor is further configured to determine the backup neighbor node.

12. The network device of claim 9 , further comprising additional device memory configured to store a bit indexed forwarding table for the forwarding node of the network, and wherein the processor is further configured to

generate or update a primary entry for the egress node in the bit indexed forwarding table,

determine whether a backup path exists for the egress node, and

in response to a determination that a backup path exists for the egress node, generate or update a backup entry for the egress node in the bit indexed forwarding table.

13. The network device of claim 12 , wherein the primary entry for the egress node in the bit indexed forwarding table comprises information identifying the bit position and the primary neighbor node.

14. The network device of claim 13 , wherein the primary entry for the egress node in the bit indexed forwarding table further comprises information identifying bit positions mapped to one or more additional egress nodes reachable via the primary neighbor node.

15. The network device of claim 12 , wherein the backup entry for the egress node in the bit indexed forwarding table comprises information identifying the bit position and the backup neighbor node.

16. The network device of claim 15 , wherein the backup entry for the egress node in the bit indexed forwarding table further comprises information identifying bit positions mapped to one or more additional egress nodes reachable via the backup neighbor node.

17. A non-transitory computer readable storage medium comprising program instructions, wherein the program instructions are operable, when executed by a processor for a forwarding node of a network configured for bit indexed forwarding, to perform a method comprising:

receiving an advertisement, wherein

the advertisement is received from an egress node of the network, and

the advertisement identifies a mapping of the egress node to a bit position of a packet bit string to be carried by a packet through the network;

generating or updating a primary entry for the egress node in a bit indexed routing table for the forwarding node, wherein

the primary entry comprises information identifying the bit position, the egress node, and a primary neighbor node for forwarding of a packet to the egress node;

determining whether a backup entry for the egress node is to be included in the bit indexed routing table;

in response to a determination that a backup entry is to be included, generating or updating the backup entry in the bit indexed routing table, wherein

the backup entry comprises information identifying the bit position, the egress node, and a backup neighbor node for forwarding of a packet to the egress node when a path through the primary neighbor node becomes unavailable;

receiving a packet comprising a packet bit string; and

forwarding the packet according to information in either the primary entry or the backup entry.

18. The non-transitory computer readable storage medium of claim 17 , wherein the method further comprises determining the primary neighbor node.

19. The non-transitory computer readable storage medium of claim 17 , wherein the method further comprises determining the backup neighbor node.

20. The non-transitory computer readable storage medium of claim 17 , wherein the method further comprises:

generating or updating a primary entry for the egress node in a bit indexed forwarding table for the forwarding node;

determining whether a backup path exists for the egress node; and

in response to a determination that a backup path exists for the egress node, generating or updating a backup entry for the egress node in the bit indexed forwarding table.

Continuity (7)
Continuation 14603547 · Jan 23, 2015
Continuation In Part 14488790 · Sep 17, 2014
Continuation In Part 14488761 · Sep 17, 2014
Continuation In Part 14488810 · Sep 17, 2014
Provisional Application 61931473 · Jan 24, 2014
Provisional Application 61878693 · Sep 17, 2013
Related Publication 20180278470A1 · Sep 27, 2018