Patents by Inventor Sanjib Mallick

Sanjib Mallick 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: 20210203595
    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, wherein the paths are associated with respective initiator-target pairs, the initiators being implemented on the host device and the targets being implemented on the storage system. The processing device is further configured to identify one or more of the plurality of paths that each exhibits at least a threshold amount of mismatch between a negotiated rate of its initiator and a negotiated rate of its target, and to modify path selection in the host device to at least temporarily avoid selecting the one or more identified paths. The processing device illustratively comprises at least a portion of the host device.
    Type: Application
    Filed: December 26, 2019
    Publication date: July 1, 2021
    Inventors: Vinay G. Rao, Sanjib Mallick, Arieh Don
  • Patent number: 11050825
    Abstract: An apparatus comprises a first host device that is configured to communicate over a network with a storage system. The first host device is configured to obtain information on a bandwidth usage by a second host device of one or more ports of the storage system and to determine a bandwidth limit of the one or more ports of the storage system. The first host device is further configured to submit data to the one or more ports at a given bandwidth that is determined based at least in part on the obtained information and the determined bandwidth limit of the one or more ports of the storage system.
    Type: Grant
    Filed: January 30, 2020
    Date of Patent: June 29, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Gopinath Marappan, Sanjib Mallick, Maneesh Pusalkar
  • Patent number: 11044347
    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 an MPIO driver that is configured to deliver input-output operations from the host device to the storage system over the network. The MPIO driver is configured to obtain a command generated by the host device under a first protocol for communicating with one or more of the storage devices. The command is directed to a target storage device of the plurality of storage devices. The target storage device is configured to communicate using a second protocol that is different than the first protocol. The MPIO driver is further configured to convert the command for communication under the second protocol and to provide the converted command to the target storage device.
    Type: Grant
    Filed: April 1, 2019
    Date of Patent: June 22, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Kundan Kumar, Shubham Sharma, Sanjib Mallick
  • Publication number: 20210181965
    Abstract: An apparatus comprises at least one processing device comprising a processor coupled to a memory. The processing device is configured to control performance of a migration process in which a source logical storage device of a first storage system is migrated to a target logical storage device of a second storage system. In conjunction with the migration process, the processing device is further configured to update a management header of the target logical storage device to include an identifier of the target logical storage device, to store an identifier of the source logical storage device, and responsive to a read of the management header of the target logical storage device, to return the identifier of the source logical storage device in place of the identifier of the target logical storage device. Other illustrative embodiments include methods and computer program products.
    Type: Application
    Filed: December 11, 2019
    Publication date: June 17, 2021
    Inventors: Amit Pundalik Anchi, Vinay G. Rao, Sanjib Mallick, Arieh Don
  • Patent number: 11032373
    Abstract: An apparatus comprises at least one processing device that is 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, wherein the paths are associated with respective initiator-target pairs, the initiators being implemented on the host device and the targets being implemented on the storage system. The at least one processing device is further configured to identify a particular one of the initiators that comprises multiple virtual initiators having respective virtual identifiers, to determine a negotiated rate of the particular initiator, to determine a negotiated rate of a corresponding one of the targets, and to limit amounts of bandwidth utilized by the multiple virtual initiators in communicating with the corresponding target based at least in part on the negotiated rate of the particular initiator and the negotiated rate of the corresponding target.
    Type: Grant
    Filed: October 12, 2020
    Date of Patent: June 8, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Sanjib Mallick, Vinay G. Rao, Krishna Deepak Nuthakki, Arieh Don
  • Publication number: 20210157502
    Abstract: An apparatus comprises a host device configured to communicate over a network with first and second storage systems. The host device detects an association in at least one of the first and second storage systems between a source logical storage device of the first storage system and a target logical storage device of the second storage system, and responsive to the detected association, establishes a migration session in the host device for migration of the source logical storage device to the target logical storage device. The host device also obtains an indication from at least one of the first and second storage systems that a corresponding migration session has been activated in the first and second storage systems, and activates the previously-established migration session in the host device based at least in part on the obtained indication for migration of the source logical storage device to the target logical storage device.
    Type: Application
    Filed: November 27, 2019
    Publication date: May 27, 2021
    Inventors: Vinay G. Rao, Sanjib Mallick, Arieh Don
  • Publication number: 20210157744
    Abstract: Techniques for processing I/O operations may include: issuing, by a process of an application on a host, an I/O operation; determining, by a driver on the host, that the I/O operation is a read operation directed to a logical device used as a log to log writes performed by the application, wherein the read operation reads first data stored at one or more logical addresses of the logical device; storing, by the driver, an I/O flag in the I/O operation, wherein the I/O flag has a first flag value denoting an expected read frequency associated with the read operation; sending the I/O operation from the host to the data storage system; and performing first processing of the I/O operation on the data storage system, wherein said first processing includes using the first flag value in connection with caching the first data in a cache of the data storage system.
    Type: Application
    Filed: November 22, 2019
    Publication date: May 27, 2021
    Applicant: EMC IP Holding Company LLC
    Inventors: GABRIEL BENHANOKH, Sanjib Mallick, Arieh Don
  • Patent number: 11016783
    Abstract: An apparatus comprises a host device configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device is further configured to execute multiple 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 store for each of one or more of the storage devices information specifying one or more of the processes executing on the host device that are permitted to access that storage device, and for each of at least a subset of the IO operations, to determine the particular storage device to which the IO operation is directed, to identify the process that generated the IO operation, and to control delivery of the IO operation based at least in part on whether or not the stored information indicates that the identified process is permitted to access the particular storage device.
    Type: Grant
    Filed: July 25, 2019
    Date of Patent: May 25, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Vinay G. Rao, Sanjib Mallick, Stephen D. Smaldone, Arieh Don
  • Patent number: 11012510
    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 selected ones of a plurality of paths through the network, where the paths are associated with respective initiator-target pairs, and each of a plurality of targets of the initiator-target pairs comprises a corresponding port of the storage system. The MPIO driver is further configured to obtain from the storage system information characterizing failure status of at least a subset of the targets, and to update availability status of the paths based at least in part on the obtained information.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: May 18, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Manikandan Sethuraman, Peniel Charles, Sanjib Mallick
  • Patent number: 11012512
    Abstract: A host device comprises a processor coupled to a memory. The host device is configured, for each of a plurality of initiators of the host device from which write operations are sent to a storage system for processing, to repeatedly send to the storage system a command to obtain from the storage system write pressure information maintained by the storage system for that initiator, and responsive to the write pressure information obtained from the storage system for a corresponding one of the initiators indicating that the corresponding initiator is associated with a write pressure condition, to at least temporarily reduce a rate at which the write operations are sent from the corresponding initiator to the storage system. The operations of repeatedly sending the command, and at least temporarily reducing the rate, are illustratively performed by at least one multi-path input-output driver of a multi-path layer of the host device.
    Type: Grant
    Filed: May 20, 2020
    Date of Patent: May 18, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Sanjib Mallick, Krishna Deepak Nuthakki, Arieh Don
  • Publication number: 20210109658
    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 selected ones of a plurality of paths through the network. The MPIO driver is further configured to determine IO processing performance for each of at least a subset of the paths, and to dynamically adjust a path selection algorithm utilized in selecting particular ones of the paths for delivery of the IO operations from the host device to the storage system based at least in part on the determined performance. For example, dynamically adjusting a path selection algorithm illustratively comprises activating a particular one of a plurality of distinct path selection algorithms available to the MPIO driver and/or adjusting one or more parameters of a given path selection algorithm.
    Type: Application
    Filed: October 11, 2019
    Publication date: April 15, 2021
    Inventors: Sanjib Mallick, Vinay G. Rao, Arieh Don
  • Publication number: 20210099521
    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 selected ones of a plurality of paths through the network, where the paths are associated with respective initiator-target pairs, and each of a plurality of targets of the initiator-target pairs comprises a corresponding port of the storage system. The MPIO driver is further configured to obtain from the storage system information characterizing failure status of at least a subset of the targets, and to update availability status of the paths based at least in part on the obtained information.
    Type: Application
    Filed: September 30, 2019
    Publication date: April 1, 2021
    Inventors: Manikandan Sethuraman, Peniel Charles, Sanjib Mallick
  • Patent number: 10963165
    Abstract: Service level objectives (SLOs) defined for a storage system are associated with VMs running on hosts. For an I/O operation for a virtual machine (VM) running on a host system, storage processing is performed on the I/O operation in accordance with the SLO defined for the VM. The same storage system-defined SLOs may be applied to VMs running on multiple host systems. SLOs may be maintained by the storage array and shared with one or more host systems in I/O communication with the storage system. SLOs may be defined using a user interface of a storage system, host system, virtualizer control station or other component of a storage network, and communicated to the storage system, which may maintain the SLOs, and may disseminate them to one or more hosts. The SLOs then may be associated with VMs running on the hosts and tagged to I/O communications corresponding to the VMs.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: March 30, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Adnan Sahin, Owen Martin, Sanjib Mallick, Arieh Don
  • Patent number: 10963284
    Abstract: Service level objectives (SLOs) defined for a storage system are associated with virtual machines running on hosts. For an I/O operation for a virtual machine (VM) running on a host system, storage processing is performed on the I/O operation in accordance with the SLO defined for the VM. The same storage system-defined SLOs may be applied to VMs running on multiple host systems. SLOs may be maintained by the storage array and shared with one or more host systems in I/O communication with the storage system. SLOs may be defined using a user interface of a storage system, host system, virtualizer control station or other component of a storage network, and communicated to the storage system, which may maintain the SLOs, and may disseminate them to one or more hosts. The SLOs then may be associated with VMs running on the hosts and tagged to I/O communications corresponding to the VMs.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: March 30, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Adnan Sahin, Owen Martin, Sanjib Mallick, Arieh Don
  • Patent number: 10936335
    Abstract: An apparatus in one embodiment comprises a host device that includes a set of input-output (IO) queues and a current multi-path input-output (MPIO) driver configured to select IO operations from the set of IO queues for delivery to the storage system. The current MPIO driver groups a plurality of paths from the host device to a logical volume of the storage system into a current multi-path logical device. The host device installs a target MPIO driver and migrates control of the multi-path logical device to the target MPIO driver from the current MPIO driver where the migration comprises generating a duplicate multi-path logical device for the target multi-path input-output driver, adding a new path to the current multi-path logical device that routes input-output operations to the duplicate multi-path logical device, and removing one or more paths of the current multi-path logical device other than the added new path.
    Type: Grant
    Filed: January 30, 2019
    Date of Patent: March 2, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Sanjib Mallick, Kurumurthy Gokam
  • Patent number: 10936220
    Abstract: An apparatus comprises a host device configured to communicate over a network with a storage system. The host device comprises a plurality of nodes each comprising a plurality of processing devices and at least one communication adapter. The host device comprises a multi-path input-output (MPIO) driver that is configured to obtain an input-output (IO) operation that targets a given logical volume. The MPIO driver identifies a source node and a plurality of paths between the source node and the given logical volume. The MPIO driver determines a load factor and a distance for each identified path. The MPIO driver determines a weight associated with each identified path based at least in part on the determined load factor and distance and selects a target path based at least in part on the determined weight. The MPIO driver delivers the obtained IO operation to the given logical volume via the selected target path.
    Type: Grant
    Filed: May 2, 2019
    Date of Patent: March 2, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Sanjib Mallick, Kundan Kumar, Vinay G. Rao
  • Patent number: 10936522
    Abstract: An apparatus comprises a host device configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device is configured to implement a multi-path input-output driver for delivery of input-output operations from the host device to the storage system over the network. The multi-path input-output driver is configured to perform, in user space of the host device, discovery of paths to logical storage volumes of the storage system, to identify two or more of the paths providing connection to a given one of the logical storage volumes, to generate, in the user space of the host device, a given multi-path logical device grouping the identified two or more paths providing connection to the given logical storage volume, and to submit input-output operations directed to the given logical storage volume via the given multi-path logical device in the user space of the host device.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: March 2, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Md Haris Iqbal, Kundan Kumar, Sanjib Mallick
  • Publication number: 20210026650
    Abstract: An apparatus comprises a host device configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device is further configured to execute multiple 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 store for each of one or more of the storage devices information specifying one or more of the processes executing on the host device that are permitted to access that storage device, and for each of at least a subset of the IO operations, to determine the particular storage device to which the IO operation is directed, to identify the process that generated the IO operation, and to control delivery of the IO operation based at least in part on whether or not the stored information indicates that the identified process is permitted to access the particular storage device.
    Type: Application
    Filed: July 25, 2019
    Publication date: January 28, 2021
    Inventors: Vinay G. Rao, Sanjib Mallick, Stephen D. Smaldone, Arieh Don
  • Patent number: 10880217
    Abstract: An apparatus 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 maintain payload size counters to track outstanding command payload for respective ones of a plurality of paths from the host device to the storage system, to detect an oversubscription condition relating to at least one of the paths based at least in part on values of one or more of the payload size counters, and to initiate one or more automated actions responsive to the detected oversubscription condition.
    Type: Grant
    Filed: December 24, 2018
    Date of Patent: December 29, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Sanjib Mallick, Vinay G. Rao, Arieh Don
  • Publication number: 20200372401
    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 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 multi-path input-output driver is further configured to collect information characterizing input-output patterns for each of a plurality of different applications executing on the host device, and to provide the collected information to a machine learning system. The machine learning system utilizes the collected information to generate one or more application predictions based at least in part on analysis of observed input-output patterns. The collected information in some embodiments comprises statistical distributions of numbers of input-output operations having payload sizes falling into specified ranges over a given time period.
    Type: Application
    Filed: May 23, 2019
    Publication date: November 26, 2020
    Inventors: Sanjib Mallick, Vinay G. Rao, Gopinath Marappan, Arieh Don