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).
-
Patent number: 11256446Abstract: 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: GrantFiled: August 3, 2020Date of Patent: February 22, 2022Assignee: EMC IP Holding Company LLCInventors: 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
-
Publication number: 20220035573Abstract: 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: ApplicationFiled: August 3, 2020Publication date: February 3, 2022Inventors: Rimpesh Patel, Amit Pundalik Anchi
-
Patent number: 11151071Abstract: 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: GrantFiled: May 27, 2020Date of Patent: October 19, 2021Assignee: EMC IP Holding Company LLCInventors: Rimpesh Patel, Amit Pundalik Anchi
-
Patent number: 11086785Abstract: 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: GrantFiled: September 24, 2019Date of Patent: August 10, 2021Assignee: EMC IP Holding Company LLCInventors: Amit Pundalik Anchi, Rimpesh Patel
-
Patent number: 11080215Abstract: 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: GrantFiled: March 31, 2020Date of Patent: August 3, 2021Assignee: EMC IP Holding Company LLCInventors: Rimpesh Patel, Amit Pundalik Anchi
-
Patent number: 11044313Abstract: 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 includes 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. The multi-path input-output driver is configured to analyze an input-output load pattern of the host device for a predetermined period of time and to categorize the input-output load pattern into one of a plurality of predetermined load pattern categories based at least in part on the analysis. The multi-path input-output driver is configured to transmit information specifying the categorization of the input-output load pattern to the storage system. The storage system is configured to adjust its processing of input-output operations based at least in part on the categorization of the input-output load pattern.Type: GrantFiled: October 9, 2018Date of Patent: June 22, 2021Assignee: EMC IP Holding Company LLCInventors: Rimpesh Patel, Arnab Tah
-
Publication number: 20210181947Abstract: 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: ApplicationFiled: December 11, 2019Publication date: June 17, 2021Inventors: Rimpesh Patel, Amit Pundalik Anchi, Arnab Tah
-
Publication number: 20210099520Abstract: 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: ApplicationFiled: September 30, 2019Publication date: April 1, 2021Inventors: Amit Pundalik Anchi, Rimpesh Patel
-
Publication number: 20210089460Abstract: 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: ApplicationFiled: September 24, 2019Publication date: March 25, 2021Inventors: Amit Pundalik Anchi, Rimpesh Patel
-
Patent number: 10949262Abstract: An apparatus comprises a host device configured to communicate over a network with a storage system. The host device comprises a multipath input-output driver configured to control delivery of input-output operations from the host device to the storage system over selected ones of a plurality of paths through the network. The input-output operations being generated by a plurality of applications of the host device and the multipath input-output driver having a plurality of dispatch resources. The host device is further configured to establish a plurality of application buckets for respective different application priority levels; and to allocate one or more dispatch resources to one or more of the plurality of applications depending upon the respective different application priority levels. In addition, the host device is configured to assign different ones of the applications of the host device to different ones of the application buckets.Type: GrantFiled: August 14, 2019Date of Patent: March 16, 2021Assignee: EMC IP Holding Company LLCInventors: Amit Pundalik Anchi, Rimpesh Patel
-
Publication number: 20210049046Abstract: An apparatus comprises a host device configured to communicate over a network with a storage system. The host device comprises a multipath input-output driver configured to control delivery of input-output operations from the host device to the storage system over selected ones of a plurality of paths through the network. The input-output operations being generated by a plurality of applications of the host device and the multipath input-output driver having a plurality of dispatch resources. The host device is further configured to establish a plurality of application buckets for respective different application priority levels; and to allocate one or more dispatch resources to one or more of the plurality of applications depending upon the respective different application priority levels. In addition, the host device is configured to assign different ones of the applications of the host device to different ones of the application buckets.Type: ApplicationFiled: August 14, 2019Publication date: February 18, 2021Applicant: EMC IP Holding Company LLCInventors: Amit Pundalik Anchi, Rimpesh Patel
-
Publication number: 20200112608Abstract: 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 includes 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. The multi-path input-output driver is configured to analyze an input-output load pattern of the host device for a predetermined period of time and to categorize the input-output load pattern into one of a plurality of predetermined load pattern categories based at least in part on the analysis. The multi-path input-output driver is configured to transmit information specifying the categorization of the input-output load pattern to the storage system. The storage system is configured to adjust its processing of input-output operations based at least in part on the categorization of the input-output load pattern.Type: ApplicationFiled: October 9, 2018Publication date: April 9, 2020Inventors: Rimpesh Patel, Arnab Tah
-
Patent number: 10439878Abstract: 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 includes 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. The multi-path input-output driver is further configured to detect at least first and second input-output operations from respective ones of at least first and second different processes executing on the host device, to assign a first policy identifier to the first input-output operation from the first process, and to assign a second policy identifier different than the first policy identifier to the second input-output operation from the second process. The input-output operations are queued in different ones of the queues of the set of input-output queues based at least in part on their respective assigned policy identifiers.Type: GrantFiled: May 31, 2018Date of Patent: October 8, 2019Assignee: EMC IP Holding Company LLCInventors: Arnab Tah, Rimpesh Patel