EFFICIENT CONNECTION MANAGEMENT IN A SAS TARGET
First Claim
1. A method for data storage, comprising:
- pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device;
executing in a memory of the storage device, using the hardware-implemented front-end, storage commands that are received in the storage device and are associated with the connections having the pre-configured contexts; and
upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, triggering software of the storage device to configure the context in the hardware-implemented front-end, and then executing the storage command using the hardware-implemented front-end in accordance with the context configured by the software.
2 Assignments
0 Petitions
Accused Products
Abstract
A method includes pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device. Storage commands, which are received in the storage device and are associated with the connections having the pre-configured contexts, are executed in a memory of the storage device using the hardware-implemented front-end. Upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, software of the storage device is triggered to configure the context in the hardware-implemented front-end, and the storage command is then executed using the hardware-implemented front-end in accordance with the context configured by the software.
15 Citations
22 Claims
-
1. A method for data storage, comprising:
-
pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device; executing in a memory of the storage device, using the hardware-implemented front-end, storage commands that are received in the storage device and are associated with the connections having the pre-configured contexts; and upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, triggering software of the storage device to configure the context in the hardware-implemented front-end, and then executing the storage command using the hardware-implemented front-end in accordance with the context configured by the software. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data storage apparatus, comprising:
-
a Central Processing Unit (CPU); and a hardware-implemented front-end, which is pre-configured with multiple contexts of respective connections conducted between one or more hosts and the apparatus, and which is arranged to execute in a memory of the apparatus storage commands that are received in the apparatus and are associated with the connections having the pre-configured contexts, and, upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, to trigger software running in the CPU to configure the context in the hardware-implemented front-end, and then to execute the storage command in accordance with the context configured by the software. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for data storage, comprising:
-
in a hardware-implemented front-end of a storage device, opening at least one connection, executing in a memory of the storage device storage commands associated with at least one connection, closing the at least one connection after executing the storage commands, and caching one or more contexts of respective one or more connections that were most recently closed; receiving a storage command associated with a given connection that is not currently open; checking the given connection against the cached contexts; and upon identifying that the given connection is one of the one or more connections that were most recently closed, re-opening the given connection using one of the cached contexts and executing the storage command using the hardware-implemented front-end in accordance with the one of the contexts. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A data storage apparatus, comprising:
-
an interface, which is arranged to communicate with one or more hosts; and a hardware-implemented front-end, which is arranged to open at least one connection, to execute in a memory of the apparatus storage commands associated with the at least one connection, to close the at least one connection after executing the storage commands, to cache one or more contexts of respective one or more connections that were most recently closed, to receive a storage command associated with a given connection that is not currently open, to check the given connection against the cached contexts, and, upon identifying that the given connection is one of the one or more connections that were most recently closed, to re-open the given connection using one of the cached contexts and to execute the storage command in accordance with the one of the cached contexts. - View Dependent Claims (19, 20, 21, 22)
-
Specification