Systems, apparatus, and methods for processing I/O requests
First Claim
Patent Images
1. A storage management device for accessing at least one logical unit, comprising:
- a plurality of input/output (I/O) processing modules, comprising;
a host interface in communication with a host for receiving I/O requests, and extracting a plurality of ordered operation commands associated with each I/O request, including an identification operation command and other operation commands, the plurality of ordered operation commands processed to execute the I/O request, wherein at least one of the I/O requests incurs a copy-on-write operation;
an I/O manager in communication with the host interfaces of the I/O processing modules, the I/O manager for processing the extracted operation commands first using a logical unit number (LUN) queue and thereafter using one or more operation-type queues, wherein an identification operation command in the plurality of ordered operation commands is stored in the LUN queue, and the other operation commands are stored in one or more of the one or more operation-type queues, and wherein each of the one or more operation-type queues stores operation commands of a single specific operation type; and
a physical store interface in communication with the I/O managers of the I/O processing modules, the physical store interface for communicating with at least one logical unit in response to the processed operation commands; and
an internal network for communication among the I/O processing modules.
9 Assignments
0 Petitions
Accused Products
Abstract
A method, apparatus, and system for accessing units of storage in at least one logical unit by processing I/O requests directed to the logical units using a LUN queue and an operation-type queue. By using the queues to process the I/O requests, the requests can be processed without address collisions.
334 Citations
10 Claims
-
1. A storage management device for accessing at least one logical unit, comprising:
-
a plurality of input/output (I/O) processing modules, comprising; a host interface in communication with a host for receiving I/O requests, and extracting a plurality of ordered operation commands associated with each I/O request, including an identification operation command and other operation commands, the plurality of ordered operation commands processed to execute the I/O request, wherein at least one of the I/O requests incurs a copy-on-write operation; an I/O manager in communication with the host interfaces of the I/O processing modules, the I/O manager for processing the extracted operation commands first using a logical unit number (LUN) queue and thereafter using one or more operation-type queues, wherein an identification operation command in the plurality of ordered operation commands is stored in the LUN queue, and the other operation commands are stored in one or more of the one or more operation-type queues, and wherein each of the one or more operation-type queues stores operation commands of a single specific operation type; and a physical store interface in communication with the I/O managers of the I/O processing modules, the physical store interface for communicating with at least one logical unit in response to the processed operation commands; and an internal network for communication among the I/O processing modules. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of accessing units of storage in a logical unit, the method comprising the steps of:
-
receiving input/output (I/O) requests from a host; classifying received I/O requests based on a target logical unit associated with the I/O requests; extracting ordered operation commands associated with the I/O requests into an identification operation command and other operation commands for each I/O request, the ordered operation commands processed to execute the I/O request, wherein at least one of the ordered operation commands comprises a copy-on-write operation command; processing the extracted operation commands using one or more logical unit number (LUN) queues and one or more operation-type queues, wherein the identification operation command in the plurality of ordered operation commands is stored in one or more one of the more LUN queues, and the other operation commands are stored in one or more of the one or more operation-type queues, and wherein each of the one or more operation-type queues stores operation commands of a single specific operation type; and communicating with at least one logical unit to access units of storage in response to the I/O requests. - View Dependent Claims (8, 9)
-
-
10. A storage network, comprising:
- a plurality of logical units; and
a storage management device, comprising;a plurality of input/output (I/O) processing modules, comprising; a host interface in communication with a host for receiving I/O requests and extracting ordered operation commands associated with each I/O request into an identification operation command and other operation commands for each I/O request, the ordered operation commands processed to execute the I/O request, wherein at least one of the I/O requests incurs a copy-on-write operation; an I/O manager in communication with the host interfaces of the I/O processing modules, the I/O manager for processing the extracted operation commands using a logical unit number (LUN) queue and one or more operation-type queues, wherein an identification operation command in the plurality of ordered operation commands is stored in the LUN queue, and the other operation commands are stored in one or more of the one or more operation-type queues, and wherein each of the one or more operation-type queues stores operation commands of a single specific operation type; and a physical store interface in communication with the I/O managers of the I/O processing modules, the physical store interface for communicating with at least one logical unit in response to the processed operation commands; and an internal network for communication among the I/O processing modules.
- a plurality of logical units; and
Specification