Distributing tasks in data communications
First Claim
1. A method comprising:
- registering a capability of a first device;
receiving a packet of data including a task to be handled; and
determining whether to assign the task to the first device based on the capability.
1 Assignment
0 Petitions
Accused Products
Abstract
A capability of a device may be registered to an adapter. This capability may characterize the device in terms of tasks performing abilities that may be available or associated therewith. When a packet of data including a task to be handled is received at the adapter, based on the capability registered earlier for the device, the adapter may determine whether to assign the task to the device. An indication, such as packet processing information may be derived from the packet to assist in distribution of the task. By comparing the indication with the capability, the task may be offloaded to the device based on the comparison. Using the device for a networked device, in one embodiment, one or more network communication tasks associated with data communications may be distributed and optionally performed within an adapter. In this way, the networked device may be spared of undertaking network communication tasks that are conventionally performed within the networked device.
59 Citations
35 Claims
-
1. A method comprising:
-
registering a capability of a first device;
receiving a packet of data including a task to be handled; and
determining whether to assign the task to the first device based on the capability.
-
-
2. The method of claim I including:
-
providing an indication in said packet to assist in distribution of the task; and
comparing the indication with the capability to selectively offload the task to said first device based on the comparison. - View Dependent Claims (3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
providing an interface capable of interacting with a program and registering a capability of a device for said program;
registering said program to the interface to cooperate with the device;
receiving a data packet including data to enable a flow for the data packet across a stack of a first and a second layers of a network protocol based on said data;
deriving from said data one or more protocol tasks for the data packet;
in response to the capability of the device, issuing a request to the interface to determine whether to assign said one or more protocol tasks to the device;
in response to said request, comparing said one or more protocol tasks derived from the data packet to the capability of the device to selectively offload at least one protocol task of said one or more protocol tasks to the device; and
supporting an inline offloading of said at least one protocol task to the device. - View Dependent Claims (10)
-
-
11. An apparatus comprising:
-
a first device including a capability; and
an interface operably coupled to said first device to receive a packet of data including a task to be handled and determine whether to assign the task to the first device based on the capability. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A processor-based system comprising:
-
a first device including a first capability to perform inline cryptographic tasks;
a second device including a second capability to perform asynchronous cryptographic tasks; and
a storage device storing a program and a module, said storage device operably coupled to said first and second devices wherein said program to receive a packet of data including a task to be handled for said program, and said module to interface with said program and said first and second devices to determine whether to assign the task to said first device over said second device based on the first and second capabilities. - View Dependent Claims (20)
-
-
21. An article comprising a medium storing instructions that, if executed, enable a processor-based system to perform steps comprising:
-
registering a capability of a first device;
receiving a packet of data including a task to be handled;
determining whether to assign the task to the first device based on the capability;
providing an indication in said packet to assist in distribution of the task; and
comparing the indication with the capability to selectively offload the task to said first device based on the comparison. - View Dependent Claims (22, 23, 24, 25)
-
-
26. A method comprising:
-
receiving a packet including a first data indicating that the packet belongs to a group of packets and a second data indicating a sequence number for the packet; and
uniquely identifying the packet among the group of packets based on said first and second data. - View Dependent Claims (27, 28, 29, 30)
-
-
31. A method comprising:
-
providing a packet of data including a field to communicate a first data;
populating said field with a second data to enable a flow of the packet from a first to a second layer within a network protocol stack. - View Dependent Claims (32, 33, 34, 35)
-
Specification