IP Library Granted Patent US 10,530,692
Granted Patent B2
US 10,530,692 · App. 15/244,613 · Granted Jan 7, 2020

Software FIB ARP FEC encoding

Inventors: Kalyan Nidumolu (Fremont, CA); Navdeep Bhatia (Sunnyvale, CA)
Assignee: Arista Networks, Inc.
H04L45/745H04L12/4641H04L45/741H04L45/66
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,530,692
App. No.
15/244,613
Granted
Jan 7, 2020
Kind
B2
Abstract

Described herein are various embodiments of a network element to process routing entries in a forwarding information base (FIB) for hosts that are directly attached to a multi-layer network element to encode address resolution protocol (ARP) data into forwarding equivalence class (FEC) entries for the directly attached hosts. One embodiment provides for a network element comprising a control plane including a forwarding agent and a data plane coupled to the control plane. The data plane can include a forwarding engine to forward a unit of network data from an ingress interface to an egress interface. The forwarding agent can be configured to program the forwarding engine with a forwarding information base having data-link layer forwarding data encoded into a network-layer forwarding entry.

Claims (53)

1. A network device, comprising:

a memory; and

a processing device coupled to the memory, the processing device to:

program a forwarding engine of a data plane with forwarding information, wherein the forwarding information comprises:

a forwarding information base comprising a plurality of forwarding entries; and

a forwarding equivalence class (FEC) table comprising a plurality of FEC entries, wherein:

data link layer forwarding data is encoded into the FEC entries;

each forwarding entry in the forwarding information base is associated with a corresponding FEC entry; and

each FEC comprises an identifier for a virtual network.

2. The network device of claim 1 , wherein each forwarding entry comprises:

an Internet Protocol (IP) prefix; and

a route type associated with the IP prefix.

3. The network device of claim 2 , wherein each forwarding entry associates a respective prefix with the corresponding FEC entry.

4. The network device of claim 2 , wherein each forwarding entry further comprises:

an identifier for the corresponding FEC entry.

5. The network device of claim 2 , wherein:

the route type comprises an attached route type;

the attached route type is for a host that is coupled to a port of the network device.

6. The network device of claim 1 , wherein the FEC includes a single FEC entry per virtual network.

7. The network device of claim 1 , wherein the data link layer forwarding data is derived from an address resolution protocol table.

8. The network device of claim 1 , wherein each FEC entry is further associated with a media access control (MAC) address and a physical port.

9. The network device as in claim 6 , wherein to program the forwarding engine of the data plane with the forwarding information, the processing device is further to:

derive an IP address based on an IP prefix;

derive an Ethernet address from the IP address and a virtual network identifier;

derive a physical port from the virtual network identifier and the Ethernet address.

10. The method of claim 1 , wherein at least one FEC entry is associated with multiple forwarding entries.

11. The network device of claim 1 , wherein the memory and the processing device are included in a control plane of the network device.

12. The network device of claim 1 , wherein the forwarding engine is to forward a unit of network data based on the forwarding information base and the FEC table.

13. A method, comprising:

programing a forwarding engine of a data plane with forwarding information, wherein the forwarding information comprises:

a forwarding information base comprising a plurality of forwarding entries;

and a forwarding equivalence class (FEC) table comprising a plurality of FEC entries, wherein:

data link layer forwarding data is encoded into the FEC entries;

each forwarding entry in the forwarding information base is associated with a corresponding FEC entry; and

each FEC entry comprises an identifier for a virtual network; and

forwarding network data based on the forwarding information.

14. The method of claim 13 , wherein each forwarding entry comprises:

an Internet Protocol (IP) prefix; and

a route type associated with the IP prefix.

15. The method of claim 14 , wherein each forwarding entry associates a respective prefix with the corresponding FEC entry.

16. The method of claim 14 , wherein each forwarding entry further comprises:

an identifier for the corresponding FEC entry.

17. The method of claim 13 , wherein the FEC includes a single FEC entry per virtual network.

18. The method of claim 13 , wherein each FEC entry is further associated with a media access control (MAC) address and a physical port.

19. The method of claim 13 , wherein at least one FEC entry is associated with multiple forwarding entries.

20. A non-transitory machine-readable medium having executable instructions to cause one or more processing units to perform a method to process control plane data in a network element, the method comprising:

programing a forwarding engine of a data plane with forwarding information, wherein the forwarding information comprises:

a forwarding information base comprising a plurality of forwarding entries;

and a forwarding equivalence class (FEC) table comprising a plurality of FEC entries, wherein:

data link layer forwarding data is encoded into the FEC entries;

each forwarding entry in the forwarding information base is associated with a corresponding FEC entry; and

each FEC entry comprises an identifier for a virtual network; and

forwarding network data based on the forwarding information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2016
From: NIDUMOLU, KALYAN; BHATIA, NAVDEEP
To: ARISTA NETWORKS, INC.
Reel/Frame 039511/0233 →
Continuity (2)
Provisional Application 62214724 · Sep 4, 2015
Related Publication 20170070431A1 · Mar 9, 2017