IP Library Granted Patent US 11,106,614
Granted Patent B2
US 11,106,614 · App. 16/715,082 · Granted Aug 31, 2021

Asymmetric logical unit access path selection system

Inventors: Ramesh Kumar Subbiah (Tamil Nadu, IN); Vibin Varghese (Tamil Nadu, IN)
Assignee: Dell Products L.P.
G06F13/4022G06F13/4027
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,106,614
App. No.
16/715,082
Granted
Aug 31, 2021
Kind
B2
Abstract

An ALUA path selection system includes a networking device in a networking fabric that couples a host device to a storage subsystem. The networking device receives a host device communication generated by the host device and retrieves a host device hop count that identifies a number of hops between the host device and the networking device. The networking device also receives a storage subsystem communication generated by the storage subsystem and retrieves a storage subsystem hop count that identifies a number of hops between the storage subsystem and the networking device. When the networking device receives a hop count request from the host device, it transmits the host device hop count and/or the storage subsystem hop count to the host device, and the host device uses the host device hop count and/or the storage subsystem hop count to select an active-optimized path to a LUN included in the storage subsystem.

Claims (78)

1. An Asymmetric Logical Unit Access (ALUA) path selection system, comprising:

a host device;

a storage subsystem;

at least one first Fiber Channel over Ethernet (FCoE) Initialization Protocol (FIP) Snooping Bridge (FSB) device that is coupled to the host device;

at least one second FSB device that is coupled to the storage subsystem; and

a first FCoE networking device that is included in a first networking fabric, that is coupled the host device via the at least one first FSB device, and that is coupled to the storage device via the at least one second FSB device, wherein the first networking device is configured to:

receive, via the at least one first FSB device, a first host device communication generated by the host device;

retrieve, from the first host device communication, a first host device hop count that identifies a number of hops between the host device and the first FCoE networking device;

receive, via the at least one second FSB device, a first storage subsystem communication generated by the storage subsystem;

retrieve, from the first storage subsystem communication, a first storage subsystem hop count that identifies a number of hops between the storage subsystem and the first FCoE networking device;

receive, from the host device, a first hop count request; and

transmit, in response to the first hop count request, at least one of the first host device hop count and the first storage subsystem hop count, wherein the host device is configured to use the at least one of the first host device hop count and the first storage subsystem hop count to select an active-optimized path to a Logical Unit Number (LUN) included in the storage subsystem.

2. The system of claim 1 , further comprising:

at least one third FSB device that is coupled to the host device;

at least one fourth FSB device that is coupled to the storage subsystem; and

a second FCoE networking device that is included in a second networking fabric, that is coupled the host device via the at least one third FSB device, and that is coupled to the storage device via the at least one fourth FSB device, wherein the second FCoE networking device is configured to:

receive, via at the least one third FSB device, a second host device communication generated by the host device;

retrieve, from the second host device communication, a second host device hop count that identifies a number of hops between the host device and the second FCoE networking device;

receive, via the at least one fourth FSB device, a second storage subsystem communication generated by the storage subsystem;

retrieve, from the second storage subsystem communication, a second storage subsystem hop count that identifies a number of hops between the storage subsystem and the second FCoE networking device;

receive, from the host device, a second hop count request; and

transmit, in response to the second hop count request, at least one of the second host device hop count and the second storage subsystem hop count, wherein the host device is configured to use the at least one of the second host device hop count and the second storage subsystem hop count to select the active-optimized path to the LUN included in the storage subsystem.

3. The system of claim 1 , further comprising:

wherein each at least one first FSB device is configured to:

receive the first host device communication that was generated by the host device;

increment a hop counter in the first host device communication; and

transmit the first host device communication to the first FCoE networking device, wherein the first FCoE networking device is configured to retrieve the first host device hop count from the hop counter in the first host device communication.

4. The system of claim 1 , further comprising:

wherein each at least one first FSB device is configured to:

receive the first storage subsystem communication that was generated by the storage subsystem;

increment a hop counter in the first storage subsystem communication; and

transmit the first storage subsystem communication to the first FCoE networking device, wherein the first FCoE networking device is configured to retrieve the first storage subsystem hop count from the hop counter in the first storage subsystem communication.

5. The system of claim 1 , wherein the first host device communication is a host device login communication generated and transmitted by the host device, and wherein the first storage subsystem communication is a storage subsystem login communication generated and transmitted by the storage subsystem.

6. The system of claim 1 , wherein the first FCoE networking device is configured to:

store each of the first host device hop count and the first storage subsystem hop count in a name server database; and

retrieve the at least one of the first host device hop count and the first storage subsystem hop count for transmittal to the host device.

7. The system of claim 1 , wherein the host device is configured to use the at least one of the first host device hop count and the first storage subsystem hop count to determine that the first FCoE networking device provides a path to the storage subsystem with a lowest available hop count and, in response, select the path provided by the first FCoE networking device as the active-optimized path to the LUN included in the storage subsystem.

8. An Information Handling System (IHS), comprising:

a processing system; and

a memory system that is coupled to the processing system and that includes instructions that, when executed by the processing system, cause the processing system to provide a path selection engine that is configured to:

receive, via at least one first Fiber Channel over Ethernet (FCoE) Initialization Protocol (FIP) Snooping Bridge (FSB) device, a host device communication generated by a host device;

retrieve, from the host device communication, a host device hop count that identifies a number of hops between the host device and the processing system;

receive, via at least one second FSB device, a storage subsystem communication generated by a storage subsystem;

retrieve, from the storage subsystem communication, a storage subsystem hop count that identifies a number of hops between the storage subsystem and the processing system;

receive, from the host device, a hop count request; and

transmit, in response to the hop count request, at least one of the host device hop count and the storage subsystem hop count, wherein the at least one of the host device hop count and the storage subsystem hop count are configured for use by the host device to select an active-optimized path to a Logical Unit Number (LUN) included in the storage subsystem.

9. The IHS of claim 8 , wherein the path selection engine that is configured to: retrieve the host device hop count from a hop counter in the host device communication that was incremented by the at least one first FSB device that couples the host device to the processing system.

10. The IHS of claim 8 , wherein the path selection engine that is configured to: retrieve the storage subsystem hop count from a hop counter in the storage subsystem communication that was incremented by the at least one second FSB device that couples the storage subsystem to the processing system.

11. The IHS of claim 8 , wherein the host device communication is a host device login communication generated and transmitted by the host device, and wherein the storage subsystem communication is a storage subsystem login communication generated and transmitted by the storage subsystem.

12. The IHS of claim 8 , wherein the path selection engine that is configured to: store each of the host device hop count and the storage subsystem hop count in a name server database; and retrieve the at least one of the host device hop count and the storage subsystem hop count for transmittal to the host device.

13. The IHS of claim 8 , wherein the at least one of the host device hop count and the storage subsystem hop count are configured for use by the host device to determine that the processing system provides a path to the storage subsystem with a lowest available hop count and, in response, select the path provided by the processing system as the active-optimized path to the LUN included in the storage subsystem.

14. A method for path selection in an Asymmetric Logical Unit Access (ALUA) system, comprising:

receiving, by a first Fiber Channel over Ethernet (FCoE) networking device via at least one first FCoE Initialization Protocol (FIP) Snooping Bridge (FSB) device, a first host device communication generated by a host device;

retrieving, by the first FCoE networking device from the first host device communication, a first host device hop count that identifies a number of hops between the host device and the first FCoE networking device;

receiving, by the first FCoE networking device via at least one second FSB device, a first storage subsystem communication generated by a storage subsystem;

retrieving, by the first FCoE networking device from the first storage subsystem communication, a first storage subsystem hop count that identifies a number of hops between the storage subsystem and the first FCoE networking device;

receiving, by the first FCoE networking device from the host device, a first hop count request; and

transmitting, by the first FCoE networking device in response to the first hop count request, at least one of the first host device hop count and the first storage subsystem hop count, wherein the at least one of the first host device hop count and the first storage subsystem hop count are configured for use by the host device to select an active-optimized path to a Logical Unit Number (LUN) included in the storage subsystem.

15. The method of claim 14 , further comprising:

receiving, by a second FCoE networking device via at least one third FSB device, a second host device communication generated by the host device;

retrieving, by the second FCoE networking device from the second host device communication, a second host device hop count that identifies a number of hops between the host device and the second FCoE networking device;

receiving, by the second FCoE networking device via at least one fourth FSB device, a second storage subsystem communication generated by the storage subsystem;

retrieving, by the second FCoE networking device from the second storage subsystem communication, a second storage subsystem hop count that identifies a number of hops between the storage subsystem and the second FCoE networking device;

receiving, by the second FCoE networking device from the host device, a second hop count request; and

transmitting, by the second FCoE networking device in response to the second hop count request, at least one of the second host device hop count and the second storage subsystem hop count, wherein the at least one of the second host device hop count and the second storage subsystem hop count are configured for use by the host device to select the active-optimized path to the LUN included in the storage subsystem.

16. The method of claim 14 , further comprising:

receiving, by the at least one first FSB device that couples the host device to the first FCoE networking device, the first host device communication that was generated by the host device;

incrementing, by each at least one first FSB device, a hop counter in the first host device communication; and

transmitting, by each at least one first FSB device, the first host device communication to the first FCoE networking device, wherein the first FCoE networking device is configured to retrieve the first host device hop count from the hop counter in the first host device communication.

17. The method of claim 14 , further comprising:

receiving, by at least one first FSB device that couples the storage subsystem to the first FCoE networking device, the first storage subsystem communication that was generated by the storage subsystem;

incrementing, by each at least one first FSB device, a hop counter in the first storage subsystem communication; and

transmitting, by each at least one first FSB device, the first storage subsystem communication to the first FCoE networking device, wherein the first FCoE networking device is configured to retrieve the first storage subsystem hop count from the hop counter in the first storage subsystem communication.

18. The method of claim 14 , wherein the first host device communication is a host device login communication generated and transmitted by the host device, and wherein the first storage subsystem communication is a storage subsystem login communication generated and transmitted by the storage subsystem.

19. The method of claim 14 , further comprising:

storing, by the first FCoE networking device, each of the first host device hop count and the first storage subsystem hop count in a name server database; and

retrieving, by the first FCoE networking device, the at least one of the first host device hop count and the first storage subsystem hop count for transmittal to the host device.

20. The method of claim 14 , wherein the at least one of the first host device hop count and the first storage subsystem hop count are configured for use by host device to determine that the first FCoE networking device provides a path to the storage subsystem with a lowest available hop count and, in response, select the path provided by the first FCoE networking device as the active-optimized path to the LUN included in the storage subsystem.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2019
From: SUBBIAH, RAMESH KUMAR; VARGHESE, VIBIN
To: DELL PRODUCTS L.P.
Reel/Frame 051304/0321 →