# US 2021/0344597 A1 · Selective route download traffic sampling

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0344597 A1
- Document ID: US20210344597A1
- Status: Published application
- Kind: A1
- Application number: 17/373,240
- Filed: 2021-07-12
- Published: 2021-11-04
- Earliest claimed: 2015-12-11
- Assignees: Arista Networks, Inc.
- Applicants: Arista Networks, Inc.
- Inventors: Lincoln Travis Dale
- Web page: https://patentgrep.com/patent/US20210344597A1

## CPC

- H04L 45/748: using longest matching prefix
- H04L 45/38: {Flow based routing}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A network device includes a forwarding information base (FIB). The FIB includes a first number of entries and a default entry. The network device includes a routing information base that includes a second number of entries. The network device includes a FIB entry optimizer that ranks a first portion of the second number of entries based on access information of the first number of entries; ranks a second portion of the second number of entries based on access information of the default entry; and updates at least one entry of the FIB based on the ranks of the first portion of the second number of entries and the ranks of the second portion of the second number of entries. The first number of entries is less than the second number of entries.

## Claims

### Claim 1

A method of programming a forwarding information base (FIB), comprising:
comparing, by a FIB entry optimizer, a first ranking of a first entry of a routing information base (RIB) not associated with any entry of a forwarding table of a FIB to a second ranking of a second entry of the RIB that is associated with a first entry of the FIB;
making a first determination, by the FIB entry optimizer, that the first ranking is greater than the second ranking based on the comparison;
deprogramming, by the FIB entry optimizer, a first entry of the FIB in response to the first determination; and
programming, by the FIB entry optimizer, a first new entry of the FIB based on the first entry of the RIB,
wherein the first ranking is greater than the second ranking.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
comparing, by the FIB entry optimizer, a third ranking of a third entry of the RIB not associated with any entry of the forwarding table of the FIB to the first ranking of the first entry of the RIB that is associated with the first new entry of the FIB;
making a second determination, by the FIB entry optimizer, that the third ranking is greater than the first ranking based on the comparison;
deprogramming, by the FIB entry optimizer, the first new entry of the FIB in response to the first determination; and
programming, by the FIB entry optimizer, a second new entry of the FIB based on the third entry of the RIB,
wherein the third ranking is greater than the first ranking.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
comparing, by the FIB entry optimizer, a third ranking of a third entry of the RIB not associated with any entry of the forwarding table of the FIB to the first ranking of the first entry of the RIB that is associated with the first new entry of the FIB;
making a second determination, by the FIB entry optimizer, that the third ranking less than the first ranking based on the comparison;
making a third determination, by the FIB entry optimizer, that no entry of the forwarding table of the FIB is to be deprogrammed based on the second determination,
wherein the third ranking is less than the first ranking.

### Claim 4 (depends on 1)

The method of claim 1, wherein the first ranking is based on, at least in part, an access information of the first entry of the RIB.

### Claim 5 (depends on 4)

The method of claim 4, wherein the access information is based on, at least in part, on an access rate of a default entry of the forwarding table of the FIB.

### Claim 6 (depends on 5)

The method of claim 5, wherein the default entry comprises a next-hop, wherein the default entry matches any packet including a routing prefix that does not match any other entry of the forwarding table of the FIB.

### Claim 7 (depends on 5)

The method of claim 5, wherein the access rate is determined by:
configuring, by the FIB entry optimizer, an access list module of the FIB to notify the FIB of route prefixes that cause accesses of the default entry of the forwarding table;
receiving, by the FIB entry optimizer, at least one notification comprising a route prefix; and
incrementing, by the FIB entry optimizer, the first ranking in response to receiving the at least one notification.

### Claim 8 (depends on 7)

The method of claim 7, wherein the FIB entry optimizer further configures the access list module to sample the accesses of the default entry of the forwarding table and notify the FIB entry optimizer based on the samples.

### Claim 9 (depends on 5)

The method of claim 5, wherein the access rate is determined by:
configuring, by the FIB entry optimizer, a traffic agent to notify the FIB of network traffic associated with the first entry of the RIB;
receiving, by the FIB entry optimizer, at least one notification; and
incrementing, by the FIB entry optimizer, the first ranking in response to receiving the at least one notification.

### Claim 10 (depends on 9)

The method of claim 9, wherein the FIB entry optimizer further configures the traffic agent to sample the network traffic and notify the FIB entry optimizer based on the samples.

### Claim 11 (depends on 1)

The method of claim 1, wherein the second ranking is based on, at least in part, an estimated access information of the second entry.

### Claim 12 (depends on 11)

The method of claim 11, wherein the estimated access information is based on, at least in part, on an access rate of an entry of the forwarding table of the FIB associated with the second entry of the RIB.

### Claim 13 (depends on 12)

The method of claim 12, wherein the entry of the forwarding table of the FIB comprises a routing prefix and a next-hop, wherein the entry of the forwarding table of the FIB matches any packet including a routing prefix that matches the routing prefix of the entry of the forwarding table of the FIB.

### Claim 14 (depends on 12)

The method of claim 12, wherein the access rate is determined by:
configuring, by the FIB entry optimizer, an access list module of the FIB to notify the FIB of route prefixes that cause accesses of the entry of the forwarding table of the FIB;
receiving, by the FIB entry optimizer, at least one notification comprising a route prefix; and
incrementing, by the FIB entry optimizer, the second ranking in response to receiving the at least one notification.

### Claim 15 (depends on 14)

The method of claim 14, wherein the FIB entry optimizer further configures the access list module to sample the accesses of the entry of the forwarding table and notify the FIB entry optimizer based on the samples.

### Claim 16 (depends on 12)

The method of claim 12, wherein the access rate is determined by:
configuring, by the FIB entry optimizer, a traffic agent to notify the FIB of network traffic associated with the second entry of the RIB;
receiving, by the FIB entry optimizer, at least one notification; and
incrementing, by the FIB entry optimizer, the second ranking in response to receiving the at least one notification.

### Claim 17 (depends on 16)

The method of claim 16, wherein the FIB entry optimizer further configures the traffic agent to sample the network traffic associated with the entry of the forwarding table and notify the FIB entry optimizer based on the sampling.

### Claim 18

A network device, comprising:
a forwarding information base (FIB) comprising a first plurality of entries and a default entry;
a routing information base (RIB) comprising a second plurality of entries;
a FIB entry optimizer configured to:
rank a first portion of the second plurality of entries based on access information of the first plurality of entries;
rank a second portion of the second plurality of entries based on access information of the default entry;
update at least one entry of the FIB based on the ranks of the first portion of the second plurality of entries and the ranks of the second portion of the second plurality of entries;
wherein the first plurality of entries is less than the second plurality of entries.

### Claim 19 (depends on 18)

The network device of claim 18, wherein the FIB further comprises:
an access list module configured to notify the FIB entry optimizer of accesses of the first plurality of entries.

### Claim 20 (depends on 19)

The network device of claim 19, wherein the access list module is further configured to notify the FIB entry optimizer of accesses of the default entry.
