IP Library Granted Patent US 10,764,076
Granted Patent B2
US 10,764,076 · App. 16/237,575 · Granted Sep 1, 2020

Bit indexed explicit replication for layer 2 networking

Inventors: Ijsbrand Wijnands (Leuven, BE); Gregory J. Shepherd (Eugene, OR); Nagendra Kumar Nainar (Morrisville, NC)
Assignee: Cisco Technology, Inc.
H04L12/1886H04L12/18H04L45/16H04L45/66H04L45/74H04L45/50
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,764,076
App. No.
16/237,575
Granted
Sep 1, 2020
Kind
B2
Abstract

Functionality for creating a bit routing table for use in a bit-indexed explicit replication (“BIER”) environment in disclosed herein. In one embodiment, this functionality includes receiving information from a host, and determining whether the information comprises a MAC address that is a bit-indexed explicit replication (“BIER”) MAC address. In response to determining that the information comprises a BIER MAC address, this functionality creates an entry corresponding to the MAC address in a bit routing table. This functionality also analyzes the information to determine a bit position that is associated with the host, and also determines a port via which the host is reachable. The functionality updates the bit routing table by storing information identifying the bit position and the port in the entry, such that the bit position and the port both correspond to the MAC address. This functionality can be used to route packets in a BIER environment.

Claims (122)

1. A method comprising:

receiving information from a host;

determining whether the information comprises a bit-indexed explicit replication (“BIER”) MAC address, wherein

the BIER MAC address comprises bit position information that identifies a bit position associated with the host, wherein

the bit position information can be used to update a bit routing table that stores bit position-to-port mappings;

in response to determining that the information comprises a BIER MAC address, storing routing information pertaining to the BIER MAC address in the bit routing table wherein

the routing information comprises

a bit position that is associated with the host, and

a port via which the host is reachable;

creating a bit forwarding table, wherein

the bit forwarding table is created, at least in part, by sorting the bit routing table; and

subsequent to receiving a multicast data packet that comprises a bit mask, forwarding the multicast data packet to a second host, wherein

the forwarding is performed, at least in part, by using the bit forwarding table and the bit mask.

2. The method of claim 1 , wherein

the information received from the host is an address announcement, and

the address announcement is received in response to an address query.

3. The method of claim 2 , wherein

the address announcement was sent by one of:

a Layer 3 device coupled to the Layer 2 domain,

a second host in the Layer 2 domain, or

a switch.

4. The method of claim 1 , wherein

the information comprises a data frame; and

the method further comprises

examining a source MAC field of the data frame to determine a MAC address that is associated with the host.

5. The method of claim 1 , wherein

the determining comprises examining an organizationally unique identifier (OUI), wherein

the OUI indicates that the BIER MAC address uniquely identifies a BIER-enabled host within a Layer 2 domain, and

the OUI further indicates that the BIER MAC address comprises information identifying a set and a bit position associated with the BIER-enabled host.

6. The method of claim 1 , wherein

the information further comprises a set identifier,

the set identifier uniquely identifies a set of bit positions associated with a set plurality of hosts, and

the bit position uniquely identifies the host within the set plurality of hosts associated with the set of bit positions.

7. The method of claim 1 , wherein

the BIER MAC address comprises a binary value, and

the bit position that is associated with the host is determined, at least in part, by decoding the binary value.

8. The method of claim 1 , wherein

the port is determined based on at least one of:

detecting that the information was received via the port, or

querying an address table to determine the port associated with the BIER MAC address.

9. A networking device comprising:

a microprocessor, and

a non-transitory computer readable storage medium, wherein

the non-transient computer readable storage medium comprises program instructions executable to perform a method comprising:

receiving information from a host;

determining whether the information comprises a MAC address that is a bit-indexed explicit replication (“BIER”) MAC address, wherein

the BIER MAC address comprises bit position information that identifies a bit position associated with the host, wherein

the bit position information can be used to update a bit routing table that stores bit position-to-port mappings;

in response to determining that the information comprises a BIER MAC address, storing routing information pertaining to the BIER MAC address in the bit routing table wherein

the routing information comprises

a bit position that is associated with the host, and

a port via which the host is reachable;

creating a bit forwarding table, wherein

the bit forwarding table is created, at least in part, by sorting the bit routing table; and

subsequent to receiving a multicast data packet that comprises a bit mask, forwarding the multicast data packet to a second host, wherein

the forwarding is performed, at least in part, by using the bit forwarding table and the bit mask.

10. The networking device of claim 9 , wherein

the information received from the host is an address announcement,

the address announcement is received in response to an address query, and

the address announcement was sent by one of:

a Layer 3 device coupled to the Layer 2 domain,

a second host in the Layer 2 domain, or

a switch.

11. The networking device of claim 9 , wherein

the information comprises a data frame; and

the method further comprises

examining a source MAC field of the data frame to determine a MAC address that is associated with the host.

12. The networking device of claim 9 , wherein

the determining comprises examining an organizationally unique identifier (OUI), wherein

the OUI indicates that the BIER MAC address uniquely identifies a BIER-enabled host within a Layer 2 domain, and

the OUI further indicates that the BIER MAC address comprises information identifying a set and a bit position associated with the BIER-enabled host.

13. The networking device of claim 9 , wherein

the information further comprises a set identifier,

the set identifier uniquely identifies a set of bit positions associated with a set plurality of hosts,

the bit position uniquely identifies the host within the plurality of hosts associated with the set of bit positions,

the BIER MAC address comprises a binary value, and

the bit position that is associated with the host is determined, at least in part, by decoding the binary value.

14. The networking device of claim 9 , wherein

the port is determined based on at least one of:

detecting that the information was received via the port, or

querying an address table to determine the port associated with the BIER MAC address.

15. A system comprising:

a microprocessor, and

a non-transitory computer readable storage medium, wherein

the non-transient computer readable storage medium comprises program instructions executable to perform a method comprising:

receiving information from a host;

determining whether the information comprises a MAC address that is a bit-indexed explicit replication (“BIER”) MAC address, wherein

the BIER MAC address comprises bit position information that identifies a bit position associated with the host, wherein

the bit position information can be used to update a bit routing table that stores bit position-to-port mappings;

in response to determining that the information comprises a BIER MAC address, storing routing information pertaining to the BIER MAC address in the bit routing table wherein

the routing information comprises

a bit position that is associated with the host, and

a port via which the host is reachable;

creating a bit forwarding table, wherein

the bit forwarding table is created, at least in part, by sorting the bit routing table; and

subsequent to receiving a multicast data packet that comprises a bit mask, forwarding the multicast data packet to a second host, wherein

the forwarding is performed, at least in part, by using the bit forwarding table and the bit mask.

16. The system of claim 15 , wherein

the information received from the host is an address announcement,

the address announcement is received in response to an address query, and

the address announcement was sent by one of:

a Layer 3 device coupled to the Layer 2 domain,

a second host in the Layer 2 domain, or

a switch.

17. The system of claim 15 , wherein

the information comprises a data frame; and

the method further comprises

examining a source MAC field of the data frame to determine a MAC address that is associated with the host.

18. The system of claim 15 , wherein

the determining comprises examining an organizationally unique identifier (OUI), wherein

the OUI indicates that the BIER MAC address uniquely identifies a BIER-enabled host within a Layer 2 domain, and

the OUI further indicates that the BIER MAC address comprises information identifying a set and a bit position associated with the BIER-enabled host.

19. The system of claim 15 , wherein

the information further comprises a set identifier,

the set identifier uniquely identifies a set of bit positions associated with a plurality of hosts,

the bit position uniquely identifies the host within the plurality of hosts associated with the set of bit positions,

the BIER MAC address comprises a binary value, and

the bit position that is associated with the host is determined, at least in part, by decoding the binary value.

20. The system of claim 15 , wherein

the port is determined based on at least one of:

detecting that the information was received via the port, or

querying an address table to determine the port associated with the BIER MAC address.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2020
From: WIJNANDS, IJSBRAND; NAINAR, NAGENDRA KUMAR; SHEPHERD, GREGORY J.
To: CISCO TECHNOLOGY, INC.
Reel/Frame 053341/0746 →
Continuity (7)
Continuation 14536153 · Nov 7, 2014
Continuation In Part 14888810 · Sep 17, 2014
Continuation In Part 14488790 · Sep 17, 2014
Continuation In Part 14488761 · Sep 17, 2014
Provisional Application 61931473 · Jan 24, 2014
Provisional Application 61878693 · Sep 17, 2013
Related Publication 20190215176A1 · Jul 11, 2019