IP Library › Granted Patent US 12,619,374
Granted Patent B2
US 12,619,374 · App. 18/519,353 · Granted May 5, 2026

Host multi-path layer with dynamic adjustment of zone sets through interaction with a centralized discovery controller

Inventors: Amit Pundalik Anchi (Bangalore, IN); Rimpesh Patel (Bangalore, IN)
Assignee: Dell Products L.P.
G06F3/0655G06F3/0604G06F3/067
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 12,619,374
App. No.
18/519,353
Granted
May 5, 2026
Kind
B2
Abstract

An apparatus in an illustrative embodiment comprises at least one processing device that includes a processor coupled to a memory. The at least one processing device is configured to implement a centralized discovery controller for coupling to a host and to a storage system accessed by the host. The centralized discovery controller is configured to receive, from at least one of the host and the storage system, information indicating a need for an adjustment in at least one zone set, a given such zone set specifying a plurality of endpoints including one or more host endpoints and one or more storage system endpoints, and responsive to the received information, to automatically initiate the adjustment in the at least one zone set. The host endpoints illustratively comprise respective host initiators and the storage system endpoints illustratively comprise respective storage system targets.

Claims (42)

1 . An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured:

to implement a centralized discovery controller for coupling to a host and to a storage system accessed by the host;

wherein the centralized discovery controller is configured:

to receive discovery requests from the host and to provide, in response to each of one or more of the discovery requests, information identifying at least one storage system endpoint to which the host is permitted to connect;

to receive, from at least one of the host and the storage system, information indicating a need for an adjustment in at least one zone set, a given such zone set specifying a plurality of endpoints including one or more host endpoints and one or more storage system endpoints; and

responsive to the received information, to automatically initiate the adjustment in the at least one zone set;

wherein the information indicating a need for an adjustment in at least one zone set comprises a request from the host, generated based at least in part on a condition detected by the host, to move at least one endpoint from a configured zone set maintained for the host in the centralized discovery controller to an active zone set maintained for the host in the centralized discovery controller, the request being sent from the host to the centralized discovery controller to direct the centralized discovery controller to modify the configured zone set and the active zone set as requested by the host, the modification of the configured zone set and the active zone set being carried out in the centralized discovery controller through adjustment of the configured zone set and the active zone set in at least one zoning database maintained by the centralized discovery controller.

2 . The apparatus of claim 1 wherein the at least one processing device comprises at least a portion of a switch fabric over which the host communicates with the storage system.

3 . The apparatus of claim 1 wherein the host endpoints comprise respective host initiators and the storage system endpoints comprise respective storage system targets.

4 . The apparatus of claim 1 wherein the centralized discovery controller is further configured to identify particular targets of the storage system that are accessible to the host.

5 . The apparatus of claim 1 wherein the information indicating the need for the adjustment in the at least one zone set is received in the centralized discovery controller from a multi-path input-output driver of the host and wherein the multi-path input-output driver controls delivery of input-output operations from the host to the storage system over selected paths.

6 . The apparatus of claim 5 wherein the information indicating the need for the adjustment in the at least one zone set is generated by the multi-path input-output driver based at least in part on an issue detected by the multi-path input-output driver, wherein the issue detected by the multi-path input-output driver comprises at least one of:

a loss of at least a threshold number of connections between one or more host endpoints and one or more storage system endpoints;

at least a threshold amount of change in a workload of at least one application executing on the host; and

at least a threshold amount of performance degradation associated with one or more fabric performance impact notifications (FPINs) relating to a storage area network (SAN) over which the host communicates with the storage system.

7 . The apparatus of claim 1 wherein the information indicating the need for the adjustment in the at least one zone set comprises a request from the host for the centralized discovery controller to initiate a particular type of adjustment in the at least one zone set.

8 . The apparatus of claim 7 wherein the particular type of adjustment comprises at least one of an addition of at least one endpoint to a given zone set and a deletion of at least one endpoint from the given zone set.

9 . The apparatus of claim 7 wherein the request for the centralized discovery controller to initiate a particular type of adjustment in the at least one zone set comprises at least one command sent from a multi-path input-output driver of the host utilizing a particular storage access protocol.

10 . The apparatus of claim 7 wherein the request for the centralized discovery controller to initiate a particular type of adjustment in the at least one zone set comprises a request to modify a status of at least one endpoint from a configured status to an active status for the at least one zone set.

11 . The apparatus of claim 1 wherein the information indicating the need for the adjustment in the at least one zone set comprises a request from the storage system for the centralized discovery controller to initiate a particular type of adjustment in the at least one zone set.

12 . The apparatus of claim 1 wherein the information indicating the need for the adjustment in the at least one zone set comprises at least one Asynchronous Event Notification (AEN) sent from one of the host and the storage system and associated with at least one corresponding Asynchronous Event Request (AER) previously sent by the centralized discovery controller to one of the host and the storage system.

13 . The apparatus of claim 12 wherein the AEN is sent from the storage system to the centralized discovery controller and indicates a detected condition relating to one or more storage system endpoints that will adversely impact one or more connections between the host and the storage system.

14 . The apparatus of claim 13 wherein responsive to receipt of the AEN from the storage system, the centralized discovery controller automatically initiates the adjustment in the at least one zone set at least in part by sending an AEN to the host, wherein the host, responsive to receipt of the AEN from the centralized discovery controller, sends a log page command to the centralized discovery controller to determine one or more new endpoints to which it should connect to alleviate the detected condition.

15 . 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 at least one processing device comprising a processor coupled to a memory, causes the at least one processing device:

to implement a centralized discovery controller for coupling to a host and to a storage system accessed by the host;

wherein the centralized discovery controller is configured:

to receive discovery requests from the host and to provide, in response to each of one or more of the discovery requests, information identifying at least one storage system endpoint to which the host is permitted to connect;

to receive, from at least one of the host and the storage system, information indicating a need for an adjustment in at least one zone set, a given such zone set specifying a plurality of endpoints including one or more host endpoints and one or more storage system endpoints; and

responsive to the received information, to automatically initiate the adjustment in the at least one zone set;

wherein the information indicating a need for an adjustment in at least one zone set comprises a request from the host, generated based at least in part on a condition detected by the host, to move at least one endpoint from a configured zone set maintained for the host in the centralized discovery controller to an active zone set maintained for the host in the centralized discovery controller, the request being sent from the host to the centralized discovery controller to direct the centralized discovery controller to modify the configured zone set and the active zone set as requested by the host, the modification of the configured zone set and the active zone set being carried out in the centralized discovery controller through adjustment of the configured zone set and the active zone set in at least one zoning database maintained by the centralized discovery controller.

16 . The computer program product of claim 15 wherein the information indicating the need for the adjustment in the at least one zone set comprises a request from one of the host and the storage system for the centralized discovery controller to initiate a particular type of adjustment in the at least one zone set.

17 . The computer program product of claim 15 wherein the information indicating the need for the adjustment in the at least one zone set comprises at least one Asynchronous Event Notification (AEN) sent from one of the host and the storage system and associated with at least one corresponding Asynchronous Event Request (AER) previously sent by the centralized discovery controller to one of the host and the storage system.

18 . A method comprising:

implementing a centralized discovery controller for coupling to a host and to a storage system accessed by the host, the centralized discovery controller being configured to receive discovery requests from the host and to provide, in response to each of one or more of the discovery requests, information identifying at least one storage system endpoint to which the host is permitted to connect;

receiving, in the centralized discovery controller from at least one of the host and the storage system, information indicating a need for an adjustment in at least one zone set, a given such zone set specifying a plurality of endpoints including one or more host endpoints and one or more storage system endpoints; and

responsive to the received information, automatically initiating in the centralized discovery controller the adjustment in the at least one zone set;

wherein the information indicating a need for an adjustment in at least one zone set comprises a request from the host, generated based at least in part on a condition detected by the host, to move at least one endpoint from a configured zone set maintained for the host in the centralized discovery controller to an active zone set maintained for the host in the centralized discovery controller, the request being sent from the host to the centralized discovery controller to direct the centralized discovery controller to modify the configured zone set and the active zone set as requested by the host, the modification of the configured zone set and the active zone set being carried out in the centralized discovery controller through adjustment of the configured zone set and the active zone set in at least one zoning database maintained by the centralized discovery controller; and

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

19 . The method of claim 18 wherein the information indicating the need for the adjustment in the at least one zone set comprises a request from one of the host and the storage system for the centralized discovery controller to initiate a particular type of adjustment in the at least one zone set.

20 . The method of claim 18 wherein the information indicating the need for the adjustment in the at least one zone set comprises at least one Asynchronous Event Notification (AEN) sent from one of the host and the storage system and associated with at least one corresponding Asynchronous Event Request (AER) previously sent by the centralized discovery controller to one of the host and the storage system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 27, 2023
From: ANCHI, AMIT PUNDALIK; PATEL, RIMPESH
To: DELL PRODUCTS L.P.
Reel/Frame 065665/0369 →
Continuity (1)
Related Publication 20250173087A1 · May 29, 2025
References Cited (69)
US 9495486B1 · Aluru · 2016 [cited by examiner]
US 10310760B1 · Dreier et al. · 2019 [cited by applicant]
US 10893105B1 · Bono et al. · 2021 [cited by applicant]
US 11418594B1 · Rao · 2022 [cited by examiner]
US 11422718B1 · Chauhan · 2022 [cited by examiner]
US 11550511B2 · Mallick et al. · 2023 [cited by applicant]
US 11631003B2 · Martin et al. · 2023 [cited by applicant]
US 11733912B2 · Chen et al. · 2023 [cited by applicant]
US 11762595B1 · Achkinazi et al. · 2023 [cited by applicant]
US 20030149773A1 · Harbin et al. · 2003 [cited by applicant]
US 20070079081A1 · Gladwin et al. · 2007 [cited by applicant]
US 20090154472A1 · Chung et al. · 2009 [cited by applicant]
US 20090254572A1 · Redlich et al. · 2009 [cited by applicant]
US 20110138144A1 · Tamura et al. · 2011 [cited by applicant]
US 20130055249A1 · Vaghani et al. · 2013 [cited by applicant]
US 20130198312A1 · Tamir et al. · 2013 [cited by applicant]
US 20130226887A1 · Braam et al. · 2013 [cited by applicant]
US 20150012607A1 · Cayton et al. · 2015 [cited by applicant]
US 20170177216A1 · Freyensee et al. · 2017 [cited by applicant]
US 20170177222A1 · Singh et al. · 2017 [cited by applicant]
US 20180205635A1 · Kim et al. · 2018 [cited by applicant]
US 20180239539A1 · He et al. · 2018 [cited by applicant]
US 20190102093A1 · Parnell et al. · 2019 [cited by applicant]
US 20190146675A1 · Subramanian et al. · 2019 [cited by applicant]
US 20190377696A1 · Patel et al. · 2019 [cited by applicant]
US 20200019521A1 · Solanki et al. · 2020 [cited by applicant]
US 20200026606A1 · Farnum et al. · 2020 [cited by applicant]
US 20200225863A1 · Veluswamy et al. · 2020 [cited by applicant]
US 20200326868A1 · Yang et al. · 2020 [cited by applicant]
US 20200349094A1 · Smith · 2020 [cited by examiner]
US 20200351221A1 · Subramani · 2020 [cited by examiner]
US 20210034270A1 · Gupta · 2021 [cited by examiner]
US 20210288878A1 · Smith · 2021 [cited by examiner]
US 20210311899A1 · Smith · 2021 [cited by examiner]
US 20210405915A1 · Agarwal · 2021 [cited by applicant]
US 20210406678A1 · Martin et al. · 2021 [cited by applicant]
US 20220066957A1 · Patel · 2022 [cited by examiner]
US 20220091761A1 · Patel · 2022 [cited by examiner]
US 20220171538A1 · Charles · 2022 [cited by examiner]
US 20220174094A1 · Subbiah · 2022 [cited by examiner]
US 20220283729A1 · Desanti · 2022 [cited by examiner]
US 20220300176A1 · Smith · 2022 [cited by examiner]
US 20220374167A1 · Mallick et al. · 2022 [cited by applicant]
US 20230229341A1 · Chen et al. · 2023 [cited by applicant]
US 20230297238A1 · Mallick et al. · 2023 [cited by applicant]
US 20230325084A1 · Achkinazi et al. · 2023 [cited by applicant]
JP 2011118712A · 2011 [cited by applicant]
Excerpt of NVM Express Base Specification Rev. 1.4; Published 2021; incorporated by reference in Smith '899 (Year: 2021). [cited by examiner]
Storpool Storage, “Demystifying: What is NVMeOF?” https://storpool.com/blog/demystifying-what-is-nvmeof, Sep. 12, 2017, 4 pages. [cited by applicant]
VMware, “VMware ESX Server,” Product Datasheet, 2007, 4 pages. [cited by applicant]
Wikipedia, “Host Adapter,” https://en.wikipedia.org/wiki/Host_adapter, Jul. 19, 2021, 4 pages. [cited by applicant]
Wikipedia, “iSCSI,” https://en.wikipedia.org/wiki/ISCSI, Dec. 22, 2021, 10 pages. [cited by applicant]
Wikipedia, “NVM Express,” https://en.wikipedia.org/wiki/NVM_Express, Jan. 13, 2022, 18 pages. [cited by applicant]
A. S. Gillis, “NVMe Over Fabrics (NVMe-oF),” https://searchstorage.techtarget.com/definition/NVMe-over-Fabrics-Nonvolatile-Memory-Express-over-Fabrics?vgnextfmt=print, Jan. 15, 2020, 5 pages. [cited by applicant]
Wikipedia, “Remote Direct Memory Access,” https://en.wikipedia.org/wiki/Remote_direct_memory_access, Jan. 30, 2021, 3 pages. [cited by applicant]
M. Hoyt, “ScaleIO Tech Overview and Concepts: SDS-SAN vs SDS-Array,” https://www.thinkahead.com/TheLAB/scaleio-tech-overview-concepts-sds-san-vs-sds-array/, Apr. 5, 2017, 16 pages. [cited by applicant]
EMC Corporation, “EMC ScaleIO Architectural and Functional Overview,” EMC White Paper, Dec. 2013, 13 pages. [cited by applicant]
Dell EMC, “Dell EMC VxFlex OS: Networking Best Practices and Design Considerations,” Dell EMC White Paper, Jul. 2018, 38 pages. [cited by applicant]
R. Kerns, “What is Block I/O?” searchstorage.techtarget.com/answer/What-is-block-I-O, Oct. 19, 2005, 2 pages. [cited by applicant]
Janalta Interactive, “Client-Side” https://www.techopedia.com/definition/439/client-side, Accessed Jan. 14, 2022, 8 pages. [cited by applicant]
EMC Corporation, “EMC ScaleIO Design Considerations and Best Practices,” EMC White Paper, Jun. 2016, 30 pages. [cited by applicant]
Mellanox Technologies, “RoCE vs. iWARP Competitive Analysis,” White Paper, Feb. 2017, 6 pages. [cited by applicant]
NVM Express, “NVM Express Base Specification, Revision 2.0c,” NVM Express, Oct. 4, 2022, 458 pages. [cited by applicant]
Dell Technologies, “Dell PowerFlex,” Spec Sheet, Aug. 2023, 14 pages. [cited by applicant]
H. Strass, “An Introduction to NVMe,” https://labs.seagate.com/portfolio/an-introduction-to-nvme/, May 2016, 8 pages. [cited by applicant]
U.S. Appl. No. 17/964,560 filed in the name of Igor Achkinazi et al. on Oct. 12, 2022, and entitled “Host-Based Locality Determination Using Locality Log Pages.” [cited by applicant]
U.S. Appl. No. 18/335,240 filed in the name of Igor Achkinazi et al. on Jun. 15, 2023, and entitled “Storage System with Automated Filtering of Discovery Information Utilizing Specified Configuration Domains.” [cited by applicant]
U.S. Appl. No. 18/244,454 filed in the name of Sanjib Mallick et al. on Sep. 11, 2023, and entitled “Host Multi-Path Layer with Proxy Volume Redirection for Enhanced Scalability of Distributed Storage Systems.” [cited by applicant]
U.S. Appl. No. 18/499,333 filed in the name of James R. Salvadore et al. on Nov. 1, 2023, and entitled “Host Multi-Path Layer with Congestion Mitigation through Interaction with Centralized Discovery Controller.” [cited by applicant]