Patents by Inventor Rimpesh Patel

Rimpesh Patel has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20240118820
    Abstract: An apparatus in one embodiment includes at least one processing device comprising a processor coupled to a memory. The at least one processing device is configured to obtain in a host device information characterizing local-remote designations of respective first and second storage systems, one of which is designated as local and one of which is designated as remote, and to adjust path selection in a multi-path layer of the host device based at least in part on the obtained information characterizing the local-remote designations of the respective first and second storage systems. In some embodiments, a given logical storage device is accessible to the multi-path layer of the host device via a first set of paths to the first storage system and a second set of paths to the second storage system, and adjusting path selection in the multi-path layer comprises adjusting weights assigned to respective ones of the paths.
    Type: Application
    Filed: October 10, 2022
    Publication date: April 11, 2024
    Inventors: Rimpesh Patel, Amit Pundalik Anchi, Vinay G. Rao
  • Patent number: 11762588
    Abstract: An apparatus comprises at least one processing device. The at least one processing device is configured to obtain storage-side performance information maintained by a storage system in conjunction with processing of input-output operations directed to the storage system by a host device over a network, to dynamically select a particular one of a plurality of distinct load balancing policies available in the host device based at least in part on the obtained storage-side performance information, and to apply the selected load balancing policy in directing additional input-output operations from the host device to the storage system. At least one of the load balancing policies comprises a storage cache aware load balancing policy that causes different ones of the input-output operations to be directed to different cache entities of the storage system based at least in part on cache-related performance metrics of the obtained storage-side performance information.
    Type: Grant
    Filed: July 23, 2021
    Date of Patent: September 19, 2023
    Assignee: EMC IP Holding Company LLC
    Inventors: Amit Pundalik Anchi, Rimpesh Patel, Sanjib Mallick
  • Publication number: 20230221890
    Abstract: An apparatus in one embodiment comprises at least one processing device configured to detect a plurality of asynchronous events in a storage system, wherein the storage system is configured to provide respective individual asynchronous event notifications for the detected asynchronous events to a host device in response to receipt of corresponding asynchronous event requests from the host device. The at least one processing device is further configured to determine that multiple ones of the asynchronous events have been detected in the storage system without receipt of respective ones of the corresponding asynchronous event requests from the host device, and to provide to the host device in response to a particular one of the asynchronous event requests received from the host device a summary notification comprising information indicative of the multiple detected asynchronous events. The at least one processing device illustratively comprises at least one storage controller of the storage system.
    Type: Application
    Filed: January 12, 2022
    Publication date: July 13, 2023
    Inventors: Amit Pundalik Anchi, Rimpesh Patel, Ramprasad Shetty, Arieh Don
  • Patent number: 11656987
    Abstract: A method in one embodiment comprises separating logical block addresses of one or more storage devices of a storage system into a plurality of ranges of logical block addresses using a designated chunk size, the chunk size denoting a particular number of logical block addresses. The method further comprises assigning different ones of the ranges of logical block addresses to different ones of a plurality of cache entities of the storage system, to select paths for delivery of respective input-output operations from a host device to the storage system based at least in part on the assigning, detecting particular ones of the input-output operations that each overlap with two or more adjacent ranges of the plurality of ranges, and responsive to the detected input-output operations exceeding a threshold, modifying the chunk size and repeating at least portions of the separating, assigning, selecting and detecting utilizing the modified chunk size.
    Type: Grant
    Filed: October 18, 2021
    Date of Patent: May 23, 2023
    Assignee: Dell Products L.P.
    Inventors: Rimpesh Patel, Amit Pundalik Anchi, Sanjib Mallick
  • Publication number: 20230120010
    Abstract: A method in one embodiment comprises separating logical block addresses of one or more storage devices of a storage system into a plurality of ranges of logical block addresses using a designated chunk size, the chunk size denoting a particular number of logical block addresses. The method further comprises assigning different ones of the ranges of logical block addresses to different ones of a plurality of cache entities of the storage system, to select paths for delivery of respective input-output operations from a host device to the storage system based at least in part on the assigning, detecting particular ones of the input-output operations that each overlap with two or more adjacent ranges of the plurality of ranges, and responsive to the detected input-output operations exceeding a threshold, modifying the chunk size and repeating at least portions of the separating, assigning, selecting and detecting utilizing the modified chunk size.
    Type: Application
    Filed: October 18, 2021
    Publication date: April 20, 2023
    Inventors: Rimpesh Patel, Amit Pundalik Anchi, Sanjib Mallick
  • Publication number: 20220398038
    Abstract: An apparatus comprises at least one processing device. The at least one processing device is configured to obtain storage-side performance information maintained by a storage system in conjunction with processing of input-output operations directed to the storage system by a host device over a network, to dynamically select a particular one of a plurality of distinct load balancing policies available in the host device based at least in part on the obtained storage-side performance information, and to apply the selected load balancing policy in directing additional input-output operations from the host device to the storage system. At least one of the load balancing policies comprises a storage cache aware load balancing policy that causes different ones of the input-output operations to be directed to different cache entities of he storage system based at least in part on cache-related performance metrics of the obtained storage-side performance information.
    Type: Application
    Filed: July 23, 2021
    Publication date: December 15, 2022
    Inventors: Amit Pundalik Anchi, Rimpesh Patel, Sanjib Mallick
  • Patent number: 11494091
    Abstract: An apparatus comprises a processing device configured to control delivery of input-output operations from a host device to a storage system over selected ones of a plurality of paths through a network. The processing device is further configured to receive first and second data outputs corresponding to a plurality of groups of the storage system, to compute first and second pluralities of checksums for respective ones of the groups based on the first and second data outputs, and to determine for the respective ones of the groups whether given ones of the second plurality of checksums differ from given ones of the first plurality of checksums. The control of delivery of the input-output operations is based at least in part on the determination. The plurality of groups each correspond to a plurality of storage devices and the second data output is received after the first data output.
    Type: Grant
    Filed: January 19, 2021
    Date of Patent: November 8, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Rimpesh Patel, Amit Pundalik Anchi
  • Patent number: 11449440
    Abstract: An apparatus includes at least one processing device, with the at least one processing device comprising a processor and a memory coupled to the processor. The at least one processing device is configured to generate a data copy offload command to offload a data copy operation from a host device to a storage system, the command comprising a multi-protocol indicator that specifies that data is to be copied from a source logical storage device that utilizes a first access protocol to a destination logical storage device that utilizes a second access protocol different than the first access protocol, and to send the data copy offload command from the host device to the storage system over a network for performance of the offloaded data copy operation in the storage system in accordance with the command. The first and second access protocols illustratively comprise respective SCSI and NVMe access protocols.
    Type: Grant
    Filed: January 19, 2021
    Date of Patent: September 20, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Amit Pundalik Anchi, Rimpesh Patel
  • Publication number: 20220229785
    Abstract: An apparatus includes at least one processing device, with the at least one processing device comprising a processor and a memory coupled to the processor. The at least one processing device is configured to generate a data copy offload command to offload a data copy operation from a host device to a storage system, the command comprising a multi-protocol indicator that specifies that data is to be copied from a source logical storage device that utilizes a first access protocol to a destination logical storage device that utilizes a second access protocol different than the first access protocol, and to send the data copy offload command from the host device to the storage system over a network for performance of the offloaded data copy operation in the storage system in accordance with the command. The first and second access protocols illustratively comprise respective SCSI and NVMe access protocols.
    Type: Application
    Filed: January 19, 2021
    Publication date: July 21, 2022
    Inventors: Amit Pundalik Anchi, Rimpesh Patel
  • Publication number: 20220229562
    Abstract: An apparatus comprises a processing device configured to control delivery of input-output operations from a host device to a storage system over selected ones of a plurality of paths through a network. The processing device is further configured to receive first and second data outputs corresponding to a plurality of groups of the storage system, to compute first and second pluralities of checksums for respective ones of the groups based on the first and second data outputs, and to determine for the respective ones of the groups whether given ones of the second plurality of checksums differ from given ones of the first plurality of checksums. The control of delivery of the input-output operations is based at least in part on the determination. The plurality of groups each correspond to a plurality of storage devices and the second data output is received after the first data output.
    Type: Application
    Filed: January 19, 2021
    Publication date: July 21, 2022
    Inventors: Rimpesh Patel, Amit Pundalik Anchi
  • Patent number: 11392459
    Abstract: A host device is configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device comprises a multi-path input-output (MPIO) driver configured to control delivery of input-output (IO) operations from the host device to the storage system over a plurality of paths through the network. The MPIO driver is further configured to identify whether given ones of a plurality of initiators associated with the paths comprise given ones of a plurality of virtual initiator instances, and to identify given ones of a plurality of virtual IO servers corresponding to the given ones of the virtual initiator instances. The MPIO driver is also configured to detect a failure of an IO operation over a first path, and to select a second path for retrying the IO operation based on the identification of the virtual IO servers corresponding to the virtual initiator instances.
    Type: Grant
    Filed: September 14, 2020
    Date of Patent: July 19, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Rimpesh Patel, Amit Pundalik Anchi
  • Patent number: 11320994
    Abstract: An apparatus comprises at least one processing device that is configured to monitor, in a multi-path layer thereof, a storage area network (SAN) through which one or more host devices access storage devices of a storage system, and responsive to at least one particular detected condition of the SAN, to generate in the multi-path layer one or more notifications for delivery to the storage system. The storage system implements one or more dynamic configuration changes relating to the SAN based at least in part on the one or more notifications generated in the multi-path layer. The multi-path layer illustratively comprises at least one multi-path input-output driver implemented in a corresponding one of the host devices and configured to control delivery of input-output operations to the storage devices of the storage system over selected ones of a plurality of paths through the SAN.
    Type: Grant
    Filed: September 18, 2020
    Date of Patent: May 3, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Rimpesh Patel, Amit Pundalik Anchi, Peniel Charles
  • Publication number: 20220091761
    Abstract: An apparatus comprises at least one processing device that is configured to monitor, in a multi-path layer thereof, a storage area network (SAN) through which one or more host devices access storage devices of a storage system, and responsive to at least one particular detected condition of the SAN, to generate in the multi-path layer one or more notifications for delivery to the storage system. The storage system implements one or more dynamic configuration changes relating to the SAN based at least in part on the one or more notifications generated in the multi-path layer. The multi-path layer illustratively comprises at least one multi-path input-output driver implemented in a corresponding one of the host devices and configured to control delivery of input-output operations to the storage devices of the storage system over selected ones of a plurality of paths through the SAN.
    Type: Application
    Filed: September 18, 2020
    Publication date: March 24, 2022
    Inventors: Rimpesh Patel, Amit Pundalik Anchi, Peniel Charles
  • Publication number: 20220083423
    Abstract: A host device is configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device comprises a multi-path input-output (MPIO) driver configured to control delivery of input-output (IO) operations from the host device to the storage system over a plurality of paths through the network. The MPIO driver is further configured to identify whether given ones of a plurality of initiators associated with the paths comprise given ones of a plurality of virtual initiator instances, and to identify given ones of a plurality of virtual IO servers corresponding to the given ones of the virtual initiator instances. The MPIO driver is also configured to detect a failure of an IO operation over a first path, and to select a second path for retrying the IO operation based on the identification of the virtual IO servers corresponding to the virtual initiator instances.
    Type: Application
    Filed: September 14, 2020
    Publication date: March 17, 2022
    Inventors: Rimpesh Patel, Amit Pundalik Anchi
  • Patent number: 11256446
    Abstract: A host device is configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device comprises a multi-path input-output (MPIO) driver configured to control delivery of input-output (IO) operations from the host device to the storage system over a plurality of paths through the network. The MPIO driver is further configured to identify whether given ones of a plurality of initiators associated with the paths comprise given ones of a plurality of virtual initiator instances, and to identify given ones of a plurality of physical initiator components corresponding to the given ones of the virtual initiator instances. The MPIO driver is also configured to detect a failure of an IO operation over a first path, and to select a second path for retrying the IO operation based on the identification of the physical initiator components corresponding to the virtual initiator instances.
    Type: Grant
    Filed: August 3, 2020
    Date of Patent: February 22, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Rimpesh Patel, Amit Pundalik Anchi
  • Patent number: 11256421
    Abstract: An apparatus comprises at least one processing device that includes a processor coupled to a memory. The processing device is configured to control delivery of input-output (IO) operations from a host device to at least one storage system over selected ones of a plurality of paths through a network, and to detect initiation of a non-disruptive upgrade of the host device. The processing device is further configured to identify, responsive to the detected initiation, one or more of the plurality of paths that will become temporarily unavailable in conjunction with the non-disruptive upgrade, and to modify path selection in the host device to avoid selecting the identified paths for at least a portion of a time period during which the non-disruptive upgrade is in progress. The processing device illustratively comprises at least a portion of the host device, including a multi-path input-output (MPIO) driver that performs at least a portion of the detection, identification and modification.
    Type: Grant
    Filed: December 11, 2019
    Date of Patent: February 22, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Rimpesh Patel, Amit Pundalik Anchi, Arnab Tah
  • Publication number: 20220035573
    Abstract: A host device is configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device comprises a multi-path input-output (MPIO) driver configured to control delivery of input-output (IO) operations from the host device to the storage system over a plurality of paths through the network. The MPIO driver is further configured to identify whether given ones of a plurality of initiators associated with the paths comprise given ones of a plurality of virtual initiator instances, and to identify given ones of a plurality of physical initiator components corresponding to the given ones of the virtual initiator instances. The MPIO driver is also configured to detect a failure of an IO operation over a first path, and to select a second path for retrying the IO operation based on the identification of the physical initiator components corresponding to the virtual initiator instances.
    Type: Application
    Filed: August 3, 2020
    Publication date: February 3, 2022
    Inventors: Rimpesh Patel, Amit Pundalik Anchi
  • Patent number: 11151071
    Abstract: An apparatus comprises a host device configured to communicate over a network with a storage system. The host device comprises a multi-path input-output (MPIO) driver configured to control delivery of input-output (TO) operations to the storage system over selected ones of a plurality of paths through the network. The MPIO driver is further configured to determine mappings between ranges of logical block addresses (LBAs) of logical storage volumes and respective ones of a plurality of cache entities of the storage system, to select, for a first IO operation comprising a first set of LBAs of a first logical storage volume, a first one of the paths associated with a first one of the cache entities, and to select, for a second IO operation comprising the first set of LBAs of a second logical storage volume, a second one of the paths associated with a second one of the cache entities.
    Type: Grant
    Filed: May 27, 2020
    Date of Patent: October 19, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Rimpesh Patel, Amit Pundalik Anchi
  • Patent number: 11086785
    Abstract: A host device is configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device executes one or more processes that generate input-output (IO) operations for delivery to the storage system. The host device comprises a multi-path input-output (MPIO) driver configured to access for each of one or more of the storage devices a stored mapping between ranges of logical block addresses of the storage device and respective ones of a plurality of cache entities of the storage system, and for each of at least a subset of the IO operations, to identify a particular one of the cache entities based at least in part on a logical block address of the IO operation and the stored mapping, and to select a particular path for delivery of the IO operation to the storage system based at least in part on the identified cache entity.
    Type: Grant
    Filed: September 24, 2019
    Date of Patent: August 10, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Amit Pundalik Anchi, Rimpesh Patel
  • Patent number: 11080215
    Abstract: A host device is configured to monitor host device operating parameters relating to its interaction with a storage system over a plurality of intervals, and for each of the intervals, to aggregate threshold-based assessments of respective ones of the monitored host device operating parameters and to classify the intervals based at least in part on the aggregated threshold-based assessments. The host device is further configured to identify a particular future interval for use as a change interval for changing one or more characteristics of an operating environment of the host device based at least in part on the classified intervals. Aggregating the threshold-based assessments and classifying based on the aggregated assessments for a given interval illustratively comprises computing a bit value for the given interval as a function of the aggregated assessments, and updating a bitmap to include the computed bit value in an entry corresponding to the given interval.
    Type: Grant
    Filed: March 31, 2020
    Date of Patent: August 3, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Rimpesh Patel, Amit Pundalik Anchi