IP Library Granted Patent US 7,711,001
Granted Patent B2
US 7,711,001 · App. 11/844,106 · Granted May 4, 2010

Portable networking interface method and apparatus for distributed switching system

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 7,711,001
App. No.
11/844,106
Granted
May 4, 2010
Kind
B2
Abstract

An apparatus and method to provide a portable networking interface for distributed switching systems. Two Application Program Interfaces (APIs) are defined for communication to a Forwarding Database Distribution Library (FDDL). The FDDL sits between network client applications and the switch device driver in order to provide a uniform interface to the switch device driver. Towers may be added to the FDDL to provide additional functionality specific to certain client applications.

Claims (78)

1. A network switch comprising:

a CPU;

a memory system having circuitry operable to attach to the CPU;

a switch fabric system having circuitry operable to attach to the CPU;

a port controller having circuitry operable to attach to the switch fabric system;

a software application operable to execute on the CPU;

a Forwarding Database Distribution Library (FDDL) system operable to execute on the CPU;

a switch device driver operable to execute on the CPU;

wherein the software application is operable to communicate with the FDDL system, the FDDL system is operable to communicate with the switch device driver, and the switch device driver is operable to communicate with the switch fabric;

wherein the FDDL system defines an FDDL API for communication with the software application, and the FDDL system defines a Switch Services API for communication with the switch device driver.

2. A network switch comprising:

a CPU;

a memory system having circuitry operable to attach to the CPU;

a switch fabric system having circuitry operable to attach to the CPU;

a port controller having circuitry operable to attach to the switch fabric system;

a software application operable to execute on the CPU;

a Forwarding Database Distribution Library (FDDL) system operable to execute on the CPU;

a switch device driver operable to execute on the CPU; and

a second software application operable to execute on the CPU, wherein the second software application communicates with the FDDL system;

wherein the software application is operable to communicate with the FDDL system, the FDDL system is operable to communicate with the switch device driver, and the switch device driver is operable to communicate with the switch fabric;

wherein the FDDL system defines an FDDL API for communication with the software application and the second software application, and the FDDL system defines a Switch Services API for communication with the switch device driver.

3. A network switch comprising:

a CPU;

a memory system having circuitry operable to attach to the CPU;

a switch fabric system having circuitry operable to attach to the CPU;

a port controller having circuitry operable to attach to the switch fabric system;

a software application operable to execute on the CPU;

a Forwarding Database Distribution Library (FDDL) system operable to execute on the CPU;

a switch device driver operable to execute on the CPU;

an independent software application operable to execute on the CPU;

an independent software application shim operable to execute on the CPU;

wherein the software application is operable to communicate with the FDDL system, the FDDL system is operable to communicate with the switch device driver, and the switch device driver is operable to communicate with the switch fabric;

wherein the independent software application communicates with the independent software application shim and the independent software application shim communicates with the switch device driver; and

a second software application operable to execute on the CPU, wherein the FDDL system defines an FDDL API for communication with the software application and the second software application, and the FDDL system defines a Switch Services API for communication with the switch device driver.

4. A network switch comprising:

a CPU;

a memory system having circuitry operable to attach to the CPU;

a switch fabric system having circuitry operable to attach to the CPU;

a port controller having circuitry operable to attach to the switch fabric system;

a protocol means for providing a service to a network system;

a Forwarding Database Distribution Library (FDDL) means for communicating with the protocol means; and

a switch device driver means for communicating with the FDDL means and the port controller;

wherein the FDDL means defines an FDDL API for communication with the software application, and the FDDL means defines a Switch Services API for communication with the switch device driver.

5. A network switch comprising:

a CPU;

a memory system having circuitry operable to attach to the CPU;

a switch fabric system having circuitry operable to attach to the CPU;

a port controller having circuitry operable to attach to the switch fabric system;

a protocol means for providing a service to a network system;

a Forwarding Database Distribution Library (FDDL) means for communicating with the protocol means;

a switch device driver means for communicating with the FDDL means and the port controller; and

a second protocol means for providing a second service to the network system, wherein the FDDL means communicates with the second protocol means;

wherein the FDDL means defines an FDDL API for communication with the protocol means and the second protocol means, and the FDDL system defines a Switch Services API for communication with the switch device driver means.

6. A network system comprising:

a network switch comprising a CPU, a memory system having circuitry operable to attach to the CPU, a switch fabric system having circuitry operable to attach to the CPU, a port controller having circuitry operable to attach to the switch fabric system, a software application operable to execute on the CPU, a Forwarding Database Distribution Library (FDDL) system operable to execute on the CPU, and a switch device driver operable to execute on the CPU, wherein the software application is operable to communicate with the FDDL system, the FDDL system is operable to communicate with the switch device driver, and the switch device driver is operable to communicate with the switch fabric;

a backbone; and

a workstation,

wherein the workstation is logically connected to the backbone, and

wherein the backbone is logically connected to the port controller of the network switch;

wherein the FDDL system defines an FDDL API for communication with the software application, and the FDDL system defines a Switch Services API for communication with the switch device driver.

7. A network system comprising:

a network switch comprising a CPU, a memory system having circuitry operable to attach to the CPU, a switch fabric system having circuitry operable to attach to the CPU a port controller having circuitry operable to attach to the switch fabric system, a software application operable to execute on the CPU, a Forwarding Database Distribution Library (FDDL) system operable to execute on the CPU, and a switch device driver operable to execute on the CPU, wherein the software application is operable to communicate with the FDDL system, the FDDL system is operable to communicate with the switch device driver, and the switch device driver is operable to communicate with the switch fabric;

a backbone;

a workstation; and

a second software application operable to execute on the CPU, wherein the second software application communicates with the FDDL system;

wherein the workstation is logically connected to the backbone,

wherein the backbone is logically connected to the port controller of the network switch; and

wherein the FDDL system defines an FDDL API for communication with the software application and the second software application, and the FDDL system defines a Switch Services API for communication with the switch device driver.

8. A network system comprising:

a network switch comprising a CPU, a memory system having circuitry operable to attach to the CPU, a switch fabric system having circuitry operable to attach to the CPU a port controller having circuitry operable to attach to the switch fabric system, a software application operable to execute on the CPU, a Forwarding Database Distribution Library (FDDL) system operable to execute on the CPU, and a switch device driver operable to execute on the CPU, wherein the software application is operable to communicate with the FDDL system, the FDDL system is operable to communicate with the switch device driver, and the switch device driver is operable to communicate with the switch fabric;

a backbone;

a workstation,

an independent software application operable to execute on the CPU;

an independent software application shim operable to execute on the CPU;

wherein the workstation is logically connected to the backbone,

wherein the backbone is logically connected to the port controller of the network switch; and

wherein the independent software application communicates with the independent software application shim and the independent software application shim communicates with the switch device driver; and

a second software application operable to execute on the CPU, wherein the FDDL system defines an FDDL API for communication with the software application and the second software application, and the FDDL system defines a Switch Services API for communication with the switch device driver.

Assignments (2)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: FACEBOOK, INC.
Reel/Frame 027991/0615 →