IP Library Granted Patent US 7,639,715
Granted Patent B1
US 7,639,715 · App. 11/223,693 · Granted Dec 29, 2009

Dedicated application interface for network systems

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,639,715
App. No.
11/223,693
Granted
Dec 29, 2009
Kind
B1
Abstract

Method and system for receiving and sending network packets from a network is provided. The system includes, a host processor that executes an operating system for a host system and at least one application that runs in a context that is different from a context of the operating system; and a network adapter with a hardware device that can run a network protocol stack, wherein the application can access the network adapter directly via an application specific interface layer without using the operating system.

Claims (28)

1. A system coupled to a network for receiving and sending network packets, comprising:

a host processor that executes an operating system within an operating system context, and a plurality of applications, each application being executed within an application context that is different from the operating system context; and

a network adapter having a TCP/IP offload engine (TOE) that executes a TCP/IP network protocol stack to process TCP/IP packets instead of the operating system,

wherein each of the plurality of applications communicate with the network adapter via its own dedicated application specific TOE driver and the operating system interfaces with the network adapter via a separate operating system interface;

wherein the network adapter includes a plurality of dedicated interface modules, each dedicated interface module communicates with the corresponding dedicated application specific TOE driver for each of the plurality of applications; and

wherein each of the plurality of applications establishes a connection directly with the network adapter via the dedicated application specific TOE drivers and the corresponding dedicated interface modules, without using the operating system.

2. The system of claim 1 , wherein plural applications running on the host computing system can access the network adapter via application specific interface layers.

3. A method for network communication, comprising:

initializing a socket call from at least one of a plurality of applications, each application executed in an application context that is different from an operating system context in a host computing system;

interfacing an operating system of the host computing system with a network adapter via an operating system interface; and

establishing a direct communication connection between the at least one of the plurality of applications and a TCP/IP offload engine on the network adapter via an application specific TOE driver on the host computing system dedicated to the at least one of the plurality of applications and a corresponding interface module on the network adapter, without using the operating system running on the host computing system.

4. The method of claim 3 , wherein context switching between the application and the operating system is not needed to transfer packets using the network adapter.

5. A host computing system coupled to a network for receiving and transferring network packets, comprising:

a host processor that executes an operating system within an operating system context, and a plurality of applications, each application being executed within an application context that is different from the operating system context; and

a network adapter having a TCP/IP offload engine (TOE) for executing a network protocol stack to process TCP/IP packets instead of the operating system, wherein the network protocol stack is a TCP/IP stack and wherein each of the plurality of applications communicate with the network adapter via its own dedicated application specific TOE driver and the operating system interfaces with the network adapter via a separate operating system interface,

wherein the network adapter includes a plurality of dedicated interface modules, each dedicated interface module communicates with the corresponding dedicated application specific TOE driver for each of the plurality of applications, and

wherein each of the plurality of applications establishes a connection directly with the network adapter using the dedicated application specific TOE drivers and the corresponding dedicated interface modules via an application specific interface layer running a program code within the appropriate application contexts without using the operating system.

6. A network adapter for offloading network protocol processing from a host system, comprising:

a TCP/IP offload engine that offloads network protocol processing from a host processor of the host system having an operating system executing within an operating system context, and a plurality of applications that execute within application contexts that are different from the operating system context, wherein the network protocol is a TCP/IP stack, and wherein the TCP/IP offload engine processes TCP/IP packets instead of the host system;

wherein the plurality of applications communicate directly with the network adapter via a plurality of corresponding dedicated application drivers, and the operating system interfaces with the network adapter via a separate operating system interface;

wherein the network adapter includes a plurality of interface modules, each interface module communicates with a corresponding one of the dedicated application drivers for each of the plurality of applications; and

wherein each of the plurality of applications establishes a connection directly with the network adapter via the dedicated application drivers and the corresponding interface modules, without using the operating system.

7. A system coupled to a network for receiving and sending network packets, comprising:

a host processor that executes an operating system within an operating system context, and a plurality of applications, each application being executed within an application context that is different from the operating system context; and

a network adapter including a TCP/IP offload engine interfacing with a network to process TCP/IP packets instead of the operating system, wherein each of the plurality of applications communicate with the network adapter via a dedicated application specific TOE driver and the operating system interfaces with the network adapter via a separate operating system interface;

wherein the network adapter includes a plurality of application specific interface modules, each application specific interface module communications with the corresponding dedicated application specific TOE driver for each of the plurality of applications; and

wherein each of the plurality of applications establishes a connection directly with the network adapter via the dedicated application specific TOE drivers and the corresponding application specific interface modules, without using the operating system.

8. The system of claim 7 , wherein plural applications running on the host computing system can access the network adapter via application specific interface layers.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CHANGE OF NAME Recorded Oct 8, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047205/0953 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
MERGER Recorded Oct 18, 2017
From: QLOGIC CORPORATION
To: CAVIUM, INC.
Reel/Frame 044812/0504 →
SECURITY AGREEMENT Recorded Mar 1, 2017
From: QLOGIC CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 041854/0119 →