Source: https://patents.google.com/patent/US20030079033A1/en
Timestamp: 2018-09-19 11:22:08
Document Index: 369600711

Matched Legal Cases: ['§120', '§120', '§119', '§119', '§119', '§120', '§120', '§120', '§119']

The present application claims the benefit under 35 U.S.C. §120 of U.S. patent application Ser. No. 09/514,425, filed Feb. 28, 2000, which in turn claims the benefit under 35 U.S.C. §120 of: a) U.S. patent application Ser. No. 09/141,713, filed Aug. 28, 1998, now U.S. Pat. No. 6,389,479, which in turn claims the benefit under 35 U.S.C. §119 of provisional application 60/098,296, filed Aug. 27, 1998; b) U.S. patent application Ser. No. 09/067,544, filed Apr. 27, 1998, now U.S. Pat. No. 6,226,680, which in turn claims the benefit under 35 U.S.C. §119 of provisional application 60/061,809, filed Oct. 14, 1997; and c) U.S. patent application Ser. No. 09/384,792, filed Aug. 27, 1999, which in turn claims the benefit under 35 U.S.C. §119 of provisional application 60/098,296, filed Aug. 27, 1998. [0001]
The present application also claims the benefit under 35 U.S.C. §120 of U.S. patent application Ser. No. 09/464,283, filed Dec. 15, 1999, which in turn claims the benefit under 35 U.S.C. §120 of U.S. patent application Ser. No. 09/439,603, filed Nov. 12, 1999, now U.S. Pat. No. 6,247,060, which in turn claims the benefit under 35 U.S.C. §120 of U.S. patent application Ser. No. 09/067,544, filed Apr. 27, 1998, now U.S. Pat. No. 6,226,680, which in turn claims the benefit under 35 U.S.C. §119 of provisional application 60/061,809, filed Oct. 14, 1997. [0002]
In accordance with the present invention, means for offloading some of the most time consuming protocol processing from a host CPU to a specialized device designed for network communication processing are provided. The host has a protocol processing stack that provides instructions not only to process network messages but also to allocate processing of certain network messages to the specialized network communication device. By allocating some of the most common and time consuming network processes to the network communication device, while retaining the ability to handle less time intensive and more varied processing on the host stack, the network communication device can be relatively simple and cost effective. The host CPU, operating according to the instructions from the stack, and the specialized network communication device together determine whether and to what extent a given message is processed by the host CPU or by the network communication device.[0008]
1] TCP_OFFLOAD_HANDOUT1 (this is the first phase of a two-phase handshake used in the connection handout); [0039]
2] TCP_OFFLOAD_HANDOUT2 (this is the second phase of the two-phase handshake used in the connection handout); [0040]
3] TCP_OFFLOAD_FLUSH (this command is used to flush a connection); [0041]
4] TCP_OFFLOAD_SENDMDL (this command is used to send fast-path data); [0042]
5] TCP_OFFLOAD_RCVMDL (this is the command used to pass an MDL scatter gather list to the INIC/CPD for receive data); [0043]
6] TCP_OFFLOAD_WINUPDATE (this command is used to send a TCP window update to the INIC/CPD); and [0044]
7] TCP_OFFLOAD_CLOSE (This command is used to close a TCP connection that is on the INIC/CPD). [0045]
1) TCP_OFFLOAD_FRAME_INTERLOCK (this is part of the two-phase handshake used in the connection handout ); [0047]