# US 2014/0192633 A1 · System and method for providing fast and efficient flushing of a forwarding database in a network processor

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

- Number: US 2014/0192633 A1
- Document ID: US20140192633A1
- Status: Published application
- Kind: A1
- Application number: 13/737,163
- Filed: 2013-01-09
- Published: 2014-07-10
- Earliest claimed: 2013-01-09
- Assignees: LSI Corporation
- Applicants: Lsi Corporation
- Inventors: Vishal D. Ajmera; Santosh Narayanan; Benzeer B. Pazhayakath
- Web page: https://patentgrep.com/patent/US20140192633A1

## CPC

- H04L 45/22: {Alternate routing}
- H04L 45/02: Topology update or discovery
- H04L 45/28: using route fault recovery
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Aspects of the disclosure pertain to a system and method for providing fast and efficient flushing of a forwarding database in a network processor. The present disclosure provides a deterministic mechanism to implement a flush operation for flushing the forwarding database. A dual FDB approach, a means for switching from one FDB to another in the event of a failure, and FDB flush operation as a background task are key features of this disclosure. The effective time for completing the flush operation is within a sub-50 millisecond time frame and is independent of the number of entries in the forwarding database. The flush operation may be performed using software.

## Claims

### Claim 1

A method for providing protection switching via a processor of a node included in a plurality of nodes configured in a ring topology, the method comprising:
receiving a notification that a link failure has occurred within the ring topology;
providing a protection domain output via a first lookup table of the processor;
receiving the protection domain output via a second lookup table of the processor; and
based upon the received protection domain output, providing an output via the second lookup table.

### Claim 2 (depends on 1)

The method as claimed in claim 1, further comprising:
based upon the second lookup table output, disconnecting a first forwarding database from a packet processing path.

### Claim 3 (depends on 2)

The method as claimed in claim 2, further comprising:
based upon the second lookup table output, connecting a second forwarding database to the packet processing path.

### Claim 4 (depends on 3)

The method as claimed in claim 3, further comprising:
flushing data entries from the first forwarding database.

### Claim 5 (depends on 4)

The method as claimed in claim 4, wherein flushing data entries from the first forwarding database includes:
initiating a control plane-based removal of the data entries from the first forwarding database.

### Claim 6 (depends on 4)

The method as claimed in claim 4, wherein flushing data entries from the first forwarding database includes:
automatically removing the data entries when pre-determined aging times associated with the data entries expire.

### Claim 7 (depends on 4)

The method as claimed in claim 4, wherein the data entries are Media Access Control data entries.

### Claim 8 (depends on 1)

The method as claimed in claim 1, wherein the first lookup table is a Virtual Local Area Network-level lookup table.

### Claim 9

A non-transitory computer-readable medium having computer-executable instructions for performing a method for providing protection switching via a processor of a node included in a plurality of nodes configured in a ring topology, the method comprising:
receiving a notification that a link failure has occurred within the ring topology;
providing a protection domain output via a first lookup table of the processor;
receiving the protection domain output via a second lookup table of the processor; and
based upon the received protection domain output, providing an output via the second lookup table.

### Claim 10 (depends on 9)

The non-transitory computer-readable medium as claimed in claim 9, the method further comprising:
based upon the second lookup table output, disconnecting a first forwarding database from a packet processing path.

### Claim 11 (depends on 10)

The non-transitory computer-readable medium as claimed in claim 10, the method further comprising:
based upon the second lookup table output, connecting a second forwarding database to the packet processing path.

### Claim 12 (depends on 11)

The non-transitory computer-readable medium as claimed in claim 11, the method further comprising:
flushing data entries from the first forwarding database.

### Claim 13 (depends on 12)

The non-transitory computer-readable medium as claimed in claim 12, wherein flushing data entries from the first forwarding database includes:
initiating a control plane-based removal of the data entries from the first forwarding database.

### Claim 14 (depends on 12)

The non-transitory computer-readable medium as claimed in claim 12, wherein flushing data entries from the first forwarding database includes:
automatically removing the data entries when pre-determined aging times associated with the data entries expire.

### Claim 15 (depends on 12)

The non-transitory computer-readable medium as claimed in claim 12, wherein the data entries are Media Access Control data entries.

### Claim 16 (depends on 9)

The non-transitory computer-readable medium as claimed in claim 9, wherein the first lookup table is a Virtual Local Area Network-level lookup table.

### Claim 17

A network processor for implementation within a node of a ring topology and for providing protection switching, the network processor comprising:
a memory;
a first forwarding database and a second forwarding database, the first and second forwarding databases being stored in the memory;
a first lookup table and a second lookup table, the first and second lookup tables being stored in the memory; and
control programming for performing the following steps: receiving a notification that a link failure has occurred within the ring topology; providing a protection domain output via the first lookup table; receiving the protection domain output via the second lookup table; based upon the received protection domain output, providing an output via the second lookup table; based upon the second lookup table output, disconnecting the first forwarding database from a packet processing path; based upon the second lookup table output, connecting the second forwarding database to the packet processing path; and flushing data entries from the first forwarding database,
wherein flushing data entries from the first forwarding database includes: initiating a control plane-based removal of the data entries from the first forwarding database, or automatically removing the data entries when pre-determined aging times associated with the data entries expire.

### Claim 18 (depends on 17)

The network processor as claimed in claim 17, wherein the data entries are Media Access Control data entries.

### Claim 19 (depends on 17)

The network processor as claimed in claim 17, wherein the first lookup table is a Virtual Local Area Network-level lookup table.

### Claim 20 (depends on 17)

The network processor as claimed in claim 17, wherein the ring topology is an Ethernet ring topology and protection switching being provided is Ethernet Ring Protection Switching.
