Sequence tagging system and method for transport offload engine data lists
AssigneeNVIDIA Corporation
InventorsMichael Ward Johnson, Andrew Currid, Mrudula Kanuri, John Shigeto Minami
Life of this patent
Estimating the term…
Abstract
A system and method are provided for communicating data in a network utilizing a transport offload engine. Included is a data list object that describes how data communicated in a network is to be stored (i.e. placed, etc.) in memory (i.e. application memory). Stored in association (i.e. located, kept together, etc.) with the data list object is a sequence object. Such sequence object identifies a sequence space associated with the data to be stored using the data list object. To this end, the sequence object is used by a transport offload engine to determine whether or not incoming data is to be stored using the data list object.
Claims32
A data structure embodied on a tangible computer readable medium for use in association with a transport offload engine, comprising:
- a data list object that describes how data communicated in a network is stored in memory;
- and
- a sequence object stored in association with the data list object, the sequence object for identifying a sequence space associated with the data to be stored using the data list object;
- wherein the sequence object is used by a transport offload engine to determine whether incoming data is to be stored using the data list object;
- wherein the sequence object is kept as a tag together with the data list object in order to form a tagged data list object;
- wherein the sequence object includes a sequence object number that identifies a point in the sequence space and a sequence object length that identifies a length of the sequence space, and wherein the data structure is utilized such that it is determined whether the incoming data is in the sequence space associated with the data list object by determining whether a data sequence number falls within the sequence space as defined by the sequence object number and the sequence object length.
A transport offload sub-system, comprising:
- a transport offload engine in communication with a hardware processor and a network, the transport offload engine capable of using:
- a data list object that describes how data communicated in a network is stored in memory, and
- a sequence object stored in association with the data list object, the sequence object for identifying a sequence space associated with the data to be stored using the data list object;
- wherein the sequence object is used by the transport offload engine to determine whether incoming data is to be stored in association with the data list object;
- wherein the transport offload sub-system is operable such that the sequence object is kept as a tag together with the data list object in order to form a tagged data list object;
- wherein the sequence object includes a sequence object number that identifies a point in the sequence space and a sequence object length that identifies a length of the sequence space, and wherein the transport offload sub-system is operable such that is determined whether the incoming data is in the sequence space associated with the data list object by determining whether a data sequence number falls within the sequence space as defined by the sequence object number and the sequence object length.
A system, comprising:
- a hardware processor;
- a transport offload engine in communication with the processor via a bus, the transport offload engine capable of using:
- a data list object that describes how data communicated in a network is stored in memory, and
- a sequence object stored in association with the data list object, the sequence object for identifying a sequence space associated with the data to be stored using the data list object;
- wherein the sequence object is used by the transport offload engine to determine whether incoming data is to be stored in association with the data list object;
- wherein the system is operable such that the sequence object is kept as a tag together with the data list object in order to form a tagged data list object;
- wherein the sequence object includes a sequence object number that identifies a point in the sequence space and a sequence object length that identifies a length of the sequence space, and wherein the system is operable such that it is determined whether the incoming data is in the sequence space associated with the data list object by determining whether a data sequence number falls within the sequence space as defined by the sequence object number and the sequence object length.
A method for using tagged data list objects in managing network communications, comprising:
- receiving data from a network;
- identifying a data sequence number associated with the data;
- and
- determining whether the data resides in a sequence space associated with a data list object based on a sequence object of the data list object and the data sequence number associated with the data, utilizing a hardware processor;
- wherein the sequence object is kept as a tag together with the data list object in order to form a tagged data list object;
- wherein the sequence object includes a sequence object number that identifies a point in the sequence space and a sequence object length that identifies a length of the sequence space, and wherein it is determined whether the data is in the sequence space associated with the data list object by determining whether a data sequence number falls within the sequence space as defined by the sequence object number and the sequence object length.
A method, comprising:
- receiving data from a network;
- identifying a data number associated with the data;
- and
- determining whether the data resides in a space associated with a data list object based on an object of the data list object and the data number associated with the data, utilizing a hardware processor;
- wherein the object is kept as a tag together with the data list object in order to form a tagged data list object;
- wherein the object includes an object number that identifies a point in the space and an object length that identifies a length of the space, and wherein it is determined whether the data is in the space associated with the data list object by determining whether a data number falls within the space as defined by the object number and the object length.
Dependencies are inferred from the claim text.