System and method for optimizing multi-pathing support in a distributed storage system environment
First Claim
1. A method for directing a data access request to one of a plurality of network elements operatively connected to one or more destination storage elements of a cluster, comprising:
- identifying a destination storage element connected through a storage adapter to a storage device with data requested by the data access request;
identifying a first network element configured to receive the data access request through a first network adapter, the first network element sharing a first connection with the destination storage element using a cluster switching fabric;
identifying a second network element configured to receive the data access request through a second network adapter, the second network element sharing a second connection with the destination storage element without use of the cluster switching fabric;
determining that the second network element, and not the first network element, is identified in a list of local destination storage element indices provided by one or more of the plurality of network elements indicating that each of the one or more network elements shares a respective second connection with a respective disk storage element; and
in response to determining that the second network element, and not the first network element, is identified in the list, designating the second network element instead of the first network element to receive the data access request, wherein the second connection is a higher speed connection than the first connection.
2 Assignments
0 Petitions
Accused Products
Abstract
A Multi-Pathing Optimization Module (MPOM) interfaces with a client to route a data access request along a most optimal path to a storage system serving data container stored on a striped volume set (SVS). The MPOM constructs and references a Location Data Structure (LDS) containing striping rules associated with the SVS, a list of network elements (N-blades) operatively connected to the client, and a list of disk elements (D-blades) sharing a node of the storage system with the listed N-blades. The MPOM executes a Client_Locate( ) function on a per data access request basis to identify the D-blade serving the volume which will receive the request. When possible, the MPOM routes the data access request directly to the N-blade sharing a node with the identified D-blade, thereby using the most optimal path from the client to the SVS.
76 Citations
43 Claims
-
1. A method for directing a data access request to one of a plurality of network elements operatively connected to one or more destination storage elements of a cluster, comprising:
-
identifying a destination storage element connected through a storage adapter to a storage device with data requested by the data access request; identifying a first network element configured to receive the data access request through a first network adapter, the first network element sharing a first connection with the destination storage element using a cluster switching fabric; identifying a second network element configured to receive the data access request through a second network adapter, the second network element sharing a second connection with the destination storage element without use of the cluster switching fabric; determining that the second network element, and not the first network element, is identified in a list of local destination storage element indices provided by one or more of the plurality of network elements indicating that each of the one or more network elements shares a respective second connection with a respective disk storage element; and in response to determining that the second network element, and not the first network element, is identified in the list, designating the second network element instead of the first network element to receive the data access request, wherein the second connection is a higher speed connection than the first connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A system for directing a data access request from a client to one of a plurality of network elements operatively connected to one or more destination storage elements of a storage system cluster, comprising:
-
means for identifying a destination storage element serving a storage device with data requested by the data access request; means for identifying a first network element configured to receive the data access request, the first network element sharing a first connection with the destination storage element using a cluster switching fabric; means for identifying a second network element configured to receive the data access request, the second network element sharing a second connection with the destination storage element without use of the cluster switching fabric; means for determining, by a processor, that the second network element, and not the first network element, is identified in a list of local destination storage element indices provided by one or more of the plurality of network elements indicating that each of the one or more network elements shares a respective second connection with a respective destination storage element; and means for designating the second network element instead of the first network element to receive the data access request in response to determining that the second network element and not the first network element is identified in the list, wherein the second connection is a higher speed connection than the first connection. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A system for directing a data access request received from a client, comprising:
-
at least one processor; a multi-pathing optimization module (MPOM) configured to operatively connect to a cluster of nodes, the cluster of nodes including a plurality of network elements configured to operatively interconnect to one or more destination storage elements, wherein the cluster is configured to serve a data container stored on a plurality of storage devices; the MPOM further configured to identify a first network element of the plurality of network elements sharing a first connection with a destination storage element using a cluster switching fabric, the MPOM further configured to identify a second network element sharing a second connection with the destination storage element without use of the cluster switching fabric, the MPOP further configured to determine that the second network element and not the first network element is identified in a list of local destination storage element indices provided by one or more of the plurality of network elements indicating that each of the one or more network elements shares a respective second connection with a respective disk storage element, the MPOM further configured to designate the second network element instead of the first network element to receive the data access request in response to determining that the second network element and not the first network element is identified in the list, wherein the second connection is a higher speed connection than the first connection. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43)
-
Specification