Distributed intelligent network
First Claim
Patent Images
1. A network appliance, comprising:
- a processor, which is configured to execute storage commands in one or more storage devices; and
a Host Bus Adapter (HBA), which is configured to receive from a network switch over a network communication frames from one or more applications and to offload the processor by;
reassembling sequences of the communication frames so as to produce respective exchanges that specify the storage commands;
distinguishing between first exchanges corresponding to first storage commands that are intended for processing by the network appliance, and second exchanges corresponding to second storage commands that are not intended for processing by the network appliance, by identifying a first frame of each sequence of the communication frames, extracting from the first frame one or more attributes that are specified only in the first frame, and applying to the extracted attributes a filtering criterion that is defined over the attributes; and
forwarding only the first exchanges, and not the second exchanges, from the HBA to the processor, so as to cause the processor to execute the first storage commands specified by the first exchanges, and redirecting back to the network switch the communication frames that are not passed through to the processor.
1 Assignment
0 Petitions
Accused Products
Abstract
A network appliance (40) includes a processor (48) and a Host Bus Adapter (HBA-44). The processor is configured to execute storage commands in one or more storage devices (28A, 28B). The HBA is coupled to a network (32) so as to receive communication frames sent over the network to the network appliance, and is configured to filter the received communication frames so as to pass through to the processor only a subset of the received communication frames, which correspond to the storage commands that have been sent by one or more applications for processing by the network appliance.
109 Citations
16 Claims
-
1. A network appliance, comprising:
-
a processor, which is configured to execute storage commands in one or more storage devices; and a Host Bus Adapter (HBA), which is configured to receive from a network switch over a network communication frames from one or more applications and to offload the processor by; reassembling sequences of the communication frames so as to produce respective exchanges that specify the storage commands; distinguishing between first exchanges corresponding to first storage commands that are intended for processing by the network appliance, and second exchanges corresponding to second storage commands that are not intended for processing by the network appliance, by identifying a first frame of each sequence of the communication frames, extracting from the first frame one or more attributes that are specified only in the first frame, and applying to the extracted attributes a filtering criterion that is defined over the attributes; and forwarding only the first exchanges, and not the second exchanges, from the HBA to the processor, so as to cause the processor to execute the first storage commands specified by the first exchanges, and redirecting back to the network switch the communication frames that are not passed through to the processor. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A storage method, comprising:
-
in a network appliance that includes a Host Bus Adapter (HBA) and a processor, receiving from a network switch over a network communication frames from one or more applications; reassembling, by the HBA, sequences of the communication frames so as to produce respective exchanges that specify storage commands to be executed in one or more storage devices; distinguishing, by the HBA, between first exchanges corresponding to first storage commands that are intended for processing by the network appliance, and second exchanges corresponding to second storage commands that are not intended for processing by the network appliance, by identifying a first frame of each sequence of the communication frames, extracting from the first frame one or more attributes that are specified only in the first frame, and applying to the extracted attributes a filtering criterion that is defined over the attributes; offloading the processor by forwarding only the first exchanges, and not the second exchanges, from the HBA to the processor; and executing, using the processor, the first storage commands specified by the first exchanges that were forwarded by the HBA, and redirecting back to the network switch the communication frames that are not passed through to the processor. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A storage network, comprising:
-
a network switch, which is configured to receive from one or more applications communication frames that convey storage commands for execution in one or more storage devices, and to forward the communication frames irrespective of the storage commands to which the frames belong; and a network appliance, comprising; a processor, which is configured to execute the storage commands in the one or more storage devices; and a Host Bus Adapter (HBA), which is configured to receive the communication frames from the network switch, and to offload the processor by; reassembling sequences of the communication frames so as to produce respective exchanges that specify the storage commands; distinguishing between first exchanges corresponding to first storage commands that are intended for processing by the network appliance, and second exchanges corresponding to second storage commands that are not intended for processing by the network appliance, by identifying a first frame of each sequence of the communication frames, extracting from the first frame one or more attributes that are specified only in the first frame, and applying to the extracted attributes a filtering criterion that is defined over the attributes; and forwarding only the first exchanges, and not the second exchanges, from the HBA to the processor, so as to cause the processor to execute the first storage commands specified by the first exchanges, and redirecting back to the network switch the communication frames that are not passed through to the processor. - View Dependent Claims (12, 13)
-
-
14. A storage method, comprising:
-
in a network switch, receiving from one or more applications communication frames that convey storage commands for execution in one or more storage devices, and forwarding the communication frames irrespective of the storage commands to which the frames belong; receiving the forwarded communication frames in a network appliance that includes a Host Bus Adapter (HBA) and a processor; reassembling, by the HBA of the network appliance, sequences of the communication frames so as to produce respective exchanges that specify storage commands to be executed in the one or more storage devices; distinguishing, by the HBA, between first exchanges corresponding to first storage commands that are intended for processing by the network appliance, and second exchanges corresponding to second storage commands that are not intended for processing by the network appliance, by identifying a first frame of each sequence of the communication frames, extracting from the first frame one or more attributes that are specified only in the first frame, and applying to the extracted attributes a filtering criterion that is defined over the attributes; offloading the processor of the network appliance by forwarding only the first exchanges, and not the second exchanges, from the HBA to the processor; and executing, using the processor, the first storage commands specified by the first exchanges that were forwarded by the HBA, and redirecting back to the network switch the communication frames that are not passed through to the processor. - View Dependent Claims (15, 16)
-
Specification