IP Library Granted Patent US 10,476,960
Granted Patent B1
US 10,476,960 · App. 15/967,632 · Granted Nov 12, 2019

Host device configured to automatically discover new paths responsive to storage system prompt

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 10,476,960
App. No.
15/967,632
Granted
Nov 12, 2019
Kind
B1
Abstract

An apparatus in one embodiment comprises a host device configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device comprises a set of input-output queues and a multi-path input-output driver configured to select input-output operations from the set of input-output queues for delivery to the storage system over the network. The multi-path input-output driver is further configured to receive per-host path change information from the storage system indicating a change in at least one path from the host device to the storage system, to automatically initiate a path discovery scan in the host device based at least in part on the received per-host path change information, and to add one or more new paths identified in the path discovery scan to a set of active paths for the host device. The per-host path change information received from the storage system may comprise a value of a path change counter maintained by the storage system for the host device.

Claims (48)

1. An apparatus comprising:

a host device configured to communicate over a network with a storage system comprising a plurality of storage devices;

the host device comprising:

a set of input-output queues; and

a multi-path input-output driver configured to select input-output operations from the set of input-output queues for delivery to the storage system over the network;

wherein the multi-path input-output driver is further configured:

to receive per-host path change information from the storage system indicating a change in at least one path from the host device to the storage system;

to automatically initiate a path discovery scan in the host device based at least in part on the received per-host path change information; and

to add one or more new paths identified in the path discovery scan to a set of active paths for the host device.

2. The apparatus of claim 1 further comprising one or more additional host devices each configured to communicate over the network with the storage system and wherein each additional host device comprises a set of input-output queues and a multi-path input-output driver configured to select input-output operations from the set of input-output queues for delivery to the storage system over the network.

3. The apparatus of claim 1 wherein the multi-path input-output driver of the host device is configured to periodically send a predetermined command to the storage system and further wherein the per-host path change information is transmitted by the storage system to the multi-path input-output driver of the host device responsive to receipt of the predetermined command by the storage system.

4. The apparatus of claim 3 wherein the predetermined command comprises at least one of the following commands:

a vendor unique mode sense command;

a vendor unique log sense command; and

another type of vendor unique command.

5. The apparatus of claim 1 wherein the per-host path change information received from the storage system indicates at least one of addition of one or more new paths from the host device to the storage system and deletion of one or more existing paths from the host device to the storage system.

6. The apparatus of claim 5 wherein the addition of one or more new paths or the deletion of one or more existing paths results from respective addition or deletion of at least a portion of a storage array to or from the storage system.

7. The apparatus of claim 6 wherein at least one new storage array is added to the storage system in conjunction with configuration of the storage system for at least one of a migration operation and a replication operation.

8. The apparatus of claim 1 wherein the per-host path change information received from the storage system comprises a value of a path change counter maintained by the storage system for the host device.

9. The apparatus of claim 8 wherein the multi-path input-output driver in automatically initiating a path discovery scan in the host device based at least in part on the received per-host path change information is further configured:

to store a first value of the path change counter received in a first response of the storage system to a first instance of a predetermined command sent to the storage system;

to compare the stored first value of the path change counter to a second value of the path change counter received in a second response of the storage system to a second instance of the predetermined command sent to the storage system; and

to automatically initiate the path discovery scan in the host device responsive to detection of a difference between the first and second values of the path change counter.

10. The apparatus of claim 1 wherein the path discovery scan is further configured to identify one or more new logical storage volumes associated with the one or more new paths identified in the path discovery scan.

11. The apparatus of claim 1 wherein the multi-path input-output driver comprises a user-space portion and a kernel-space portion.

12. The apparatus of claim 11 wherein automatically initiating a path discovery scan in the host device based at least in part on the received per-host path change information comprises the kernel-space portion of the multi-path input-output driver detecting a difference between the received per-host path change information and previously-received per-host path change information and instructing the user-space portion of the multi-path input-output driver to run the path discovery scan responsive to the detected difference.

13. The apparatus of claim 1 wherein for each of the one or more new paths identified in the path discovery scan, the host device is configured to execute a host registration operation for that path.

14. The apparatus of claim 13 wherein the host registration operation for a given new path provides notification to the storage system that the host device has discovered the new path.

15. A method comprising:

configuring a multi-path input-output driver of a host device to communicate with a storage system over a network;

wherein the multi-path input-output driver performs the following steps:

receiving per-host path change information from the storage system indicating a change in at least one path from the host device to the storage system;

automatically initiating a path discovery scan in the host device based at least in part on the received per-host path change information; and

adding one or more new paths identified in the path discovery scan to a set of active paths for the host device.

16. The method of claim 15 wherein the per-host path change information received from the storage system comprises a value of a path change counter maintained by the storage system for the host device.

17. The method of claim 16 wherein automatically initiating a path discovery scan in the host device based at least in part on the received per-host path change information comprises:

storing a first value of the path change counter received in a first response of the storage system to a first instance of a predetermined command sent to the storage system;

comparing the stored first value of the path change counter to a second value of the path change counter received in a second response of the storage system to a second instance of the predetermined command sent to the storage system; and

automatically initiating the path discovery scan in the host device responsive to detection of a difference between the first and second values of the path change counter.

18. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code, when executed by a host device comprising a multi-path input-output driver, the host device being configured to communicate over a network with a storage system, causes the multi-path input-output driver:

to receive per-host path change information from the storage system indicating a change in at least one path from the host device to the storage system;

to automatically initiate a path discovery scan in the host device based at least in part on the received per-host path change information; and

to add one or more new paths identified in the path discovery scan to a set of active paths for the host device.

19. The computer program product of claim 18 wherein the per-host path change information received from the storage system comprises a value of a path change counter maintained by the storage system for the host device.

20. The computer program product of claim 19 wherein automatically initiating a path discovery scan in the host device based at least in part on the received per-host path change information comprises:

storing a first value of the path change counter received in a first response of the storage system to a first instance of a predetermined command sent to the storage system;

comparing the stored first value of the path change counter to a second value of the path change counter received in a second response of the storage system to a second instance of the predetermined command sent to the storage system; and

automatically initiating the path discovery scan in the host device responsive to detection of a difference between the first and second values of the path change counter.

Assignments (8)
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 (046366/0014) Recorded May 20, 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 060450/0306 →
RELEASE OF SECURITY INTEREST AT REEL 046286 FRAME 0653 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0093 →
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 21, 2019
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 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Jun 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046286/0653 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jun 1, 2018
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 046366/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2018
From: RAO, VINAY G.; MALLICK, SANJIB; DON, ARIEH
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 045677/0184 →