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: 20250028464Abstract: 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 maintain in a host device a data structure characterizing an ordered arrangement of available initiator-target pairs corresponding to respective paths between the host device and a storage system, to obtain a data copy offload command to offload a data copy operation from the host device to the storage system, to select a particular path for delivery of the data copy offload command from the host device to the storage system based at least in part on the ordered arrangement of available initiator-target pairs characterized by the data structure, and to send the data copy offload command from the host device to the storage system using the selected path.Type: ApplicationFiled: July 17, 2023Publication date: January 23, 2025Inventors: Rimpesh Patel, Amit Pundalik Anchi
-
Patent number: 12131022Abstract: 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 asymmetric access state information for one or more logical storage devices each accessible in at least first and second storage systems, and to determine, based at least in part on the asymmetric access state information obtained for the one or more logical storage devices, local-remote designations of respective ones of the first and second storage systems. The asymmetric access state information for a given one of the logical storage devices illustratively comprises, for each of two or more storage controllers of each of the first and second storage systems, information indicating whether a corresponding set of paths is in an active-optimized (AO) state or an active-non-optimized (ANO) state.Type: GrantFiled: January 12, 2023Date of Patent: October 29, 2024Assignee: Dell Products L.P.Inventors: Rimpesh Patel, Amit Pundalik Anchi, Vinay G. Rao
-
Publication number: 20240241638Abstract: 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 asymmetric access state information for one or more logical storage devices each accessible in at least first and second storage systems, and to determine, based at least in part on the asymmetric access state information obtained for the one or more logical storage devices, local-remote designations of respective ones of the first and second storage systems. The asymmetric access state information for a given one of the logical storage devices illustratively comprises, for each of two or more storage controllers of each of the first and second storage systems, information indicating whether a corresponding set of paths is in an active-optimized (AO) state or an active-non-optimized (ANO) state.Type: ApplicationFiled: January 12, 2023Publication date: July 18, 2024Inventors: Rimpesh Patel, Amit Pundalik Anchi, Vinay G. Rao
-
Patent number: 12032842Abstract: 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: GrantFiled: October 10, 2022Date of Patent: July 9, 2024Assignee: Dell Products L.P.Inventors: Rimpesh Patel, Amit Pundalik Anchi, Vinay G. Rao
-
Patent number: 12010172Abstract: 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 ports of the storage system over selected ones of a plurality of paths through the network. The MPIO driver of the host device is further configured, for each of at least a subset of the ports, to obtain from the storage system information characterizing a current number of host devices connected to the port and a current available capacity measure of the port, and to limit an amount of the IO operations that are delivered over one or more of the paths to the port based at least in part on the obtained information.Type: GrantFiled: September 30, 2019Date of Patent: June 11, 2024Assignee: EMC IP Holding Company LLCInventors: Amit Pundalik Anchi, Rimpesh Patel
-
Publication number: 20240118820Abstract: 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: ApplicationFiled: October 10, 2022Publication date: April 11, 2024Inventors: Rimpesh Patel, Amit Pundalik Anchi, Vinay G. Rao
-
Patent number: 11762588Abstract: 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: GrantFiled: July 23, 2021Date of Patent: September 19, 2023Assignee: EMC IP Holding Company LLCInventors: Amit Pundalik Anchi, Rimpesh Patel, Sanjib Mallick
-
Publication number: 20230221890Abstract: 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: ApplicationFiled: January 12, 2022Publication date: July 13, 2023Inventors: Amit Pundalik Anchi, Rimpesh Patel, Ramprasad Shetty, Arieh Don
-
Patent number: 11656987Abstract: 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: GrantFiled: October 18, 2021Date of Patent: May 23, 2023Assignee: Dell Products L.P.Inventors: Rimpesh Patel, Amit Pundalik Anchi, Sanjib Mallick
-
Publication number: 20230120010Abstract: 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: ApplicationFiled: October 18, 2021Publication date: April 20, 2023Inventors: Rimpesh Patel, Amit Pundalik Anchi, Sanjib Mallick
-
Publication number: 20220398038Abstract: 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: ApplicationFiled: July 23, 2021Publication date: December 15, 2022Inventors: Amit Pundalik Anchi, Rimpesh Patel, Sanjib Mallick
-
Patent number: 11494091Abstract: 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: GrantFiled: January 19, 2021Date of Patent: November 8, 2022Assignee: EMC IP Holding Company LLCInventors: Rimpesh Patel, Amit Pundalik Anchi
-
Patent number: 11449440Abstract: 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: GrantFiled: January 19, 2021Date of Patent: September 20, 2022Assignee: EMC IP Holding Company LLCInventors: Amit Pundalik Anchi, Rimpesh Patel
-
Publication number: 20220229785Abstract: 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: ApplicationFiled: January 19, 2021Publication date: July 21, 2022Inventors: Amit Pundalik Anchi, Rimpesh Patel
-
Publication number: 20220229562Abstract: 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: ApplicationFiled: January 19, 2021Publication date: July 21, 2022Inventors: Rimpesh Patel, Amit Pundalik Anchi
-
Patent number: 11392459Abstract: 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: GrantFiled: September 14, 2020Date of Patent: July 19, 2022Assignee: EMC IP Holding Company LLCInventors: Rimpesh Patel, Amit Pundalik Anchi
-
Patent number: 11320994Abstract: 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: GrantFiled: September 18, 2020Date of Patent: May 3, 2022Assignee: EMC IP Holding Company LLCInventors: Rimpesh Patel, Amit Pundalik Anchi, Peniel Charles
-
Publication number: 20220091761Abstract: 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: ApplicationFiled: September 18, 2020Publication date: March 24, 2022Inventors: Rimpesh Patel, Amit Pundalik Anchi, Peniel Charles
-
Publication number: 20220083423Abstract: 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: ApplicationFiled: September 14, 2020Publication date: March 17, 2022Inventors: Rimpesh Patel, Amit Pundalik Anchi
-
Patent number: 11256421Abstract: 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: GrantFiled: December 11, 2019Date of Patent: February 22, 2022Assignee: EMC IP Holding Company LLCInventors: Rimpesh Patel, Amit Pundalik Anchi, Arnab Tah