IP Library › Granted Patent US 7,533,176
Granted Patent B2
US 7,533,176 · App. 10/890,710 · Granted May 12, 2009

Method for supporting connection establishment in an offload of network protocol processing

Assignee: International Business Machines Corporation
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,533,176
App. No.
10/890,710
Granted
May 12, 2009
Kind
B2
Abstract

A number of improvements in network adapters that offload protocol processing from the host processor are provided. Specifically, a mechanism for improving connection establishment in a system utilizing an offload network adapter is provided. The connection establishment mechanism provides the ability to offload connection establishment and maintenance of connection state information to the offload network adapter. As a result of this offloading of connection establishment and state information maintenance, the number of communications needed between the host system and the offload network adapter may be reduced. In addition, offloading of these functions to the offload network adapter permits bulk notification of established connections and state information to the host system rather than piecemeal notifications as is present in known computing systems.

Claims (20)

1. A method of establishing a data communication connection between data processing systems, comprising:

receiving, in a host system of a first data processing system, a request for establishing a connection with a second data processing system;

forwarding the request to an offload network adapter associated with the first data processing system, wherein forwarding the request to the offload network adapter includes generating a connection establishment request descriptor based on the received request and writing the connection establishment request descriptor to an input descriptor table in an input/output accessible memory in the host system, and wherein the input descriptor table is read by the offload network adapter and written to by the host system to submit control and data interface requests;

establishing, within the offload network adapter, the connection with the second data processing system, wherein a data structure describing the connection is generated within the offload network adapter; and

informing the host system of the established connection after the connection is established within the offload network adapter, wherein informing the host system of the established connection after the connection is established within the offload network adapter includes determining whether a delay criteria has been met and writing a connection completion response descriptor to an output descriptor table in the input/output accessible memory in the host system in response to determining that the delay criteria has been met, and wherein the delay criteria is a predetermined number of connections being established since a last connection complete response descriptor was written to the output descriptor table: and wherein the output descriptor table is read by the host system and written to by the offload network adapter to indicate results of previous requests and to notify the host system of data arrivals.

2. The method of claim 1 , wherein establishing the connection with the second data processing system includes:

storing state information for the connection in the data structure.

3. The method of claim 1 , wherein informing the host system of the established connection includes:

generating a connection completion response descriptor; and

writing the connection completion response descriptor to the output descriptor table in the input/output accessible memory in the host system.

4. The method of claim 1 , wherein the request is a request to establish a plurality of connections, and wherein forwarding the request to an offload network adapter associated with the first data processing system includes:

generating a connect request descriptor identifying each of the connections in the plurality of connections that are to be established; and

writing the connect request descriptor to the input descriptor table in the input/output accessible memory in the host system.

5. The method of claim 1 , wherein the delay criteria further includes a predetermined amount of data arriving over the connection, a predetermined data pattern being detected in received data, and a predetermined amount of time since the last connection complete response descriptor was written to the output descriptor table in the input/output accessible memory in the host system.

6. The method of claim 1 , further comprising:

migrating state information for the connection from the offload network adapter to the host system.

7. The method of claim 6 , wherein migrating state information for the connection from the offload network adapter to the host system includes:

generating a connection attribute response descriptor identifying the sate of the connection; and

writing the connection attribute response descriptor to the output descriptor table in the input/output accessible memory in the host system.

8. The method of claim 1 , wherein the request for establishing a connection with a second data processing system is a listen request, and wherein establishing the connection with the second data processing system includes identifying connection requests received for a designated port number.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2004
From: FREIMUTH, DOUGLAS MORGAN; HU, ELBERT C.; MRAZ, RONALD; NAHUM, ERICH M.; PRADHAN, PRASHANT; SAHU, SAMBIT; TRACEY, JOHN MICHAEL
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 015055/0107 →
Continuity (1)
Related Publication 20060031524A1 · Feb 9, 2006