Patents by Inventor Arieh Don

Arieh Don 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: 20200228625
    Abstract: Techniques for processing I/O operations may include: receiving an I/O operation directed to a logical device having an associated service level objective with a target I/O response time; performing first processing that determines an estimated response time for the I/O operation, and determining, based on the estimated response time for the I/O operation and the associated service level objective, whether to delay the I/O operation by an additional amount of time thereby increasing a measured response time for the I/O operation by the additional amount. The first processing may include determining a fixed baseline amount of time for the I/O operation; determining a cumulative amount of time estimated to service pending I/O operation queued for service prior to the I/O operation; and determining an expected service time estimated for servicing the I/O operation. Moving averages maintained for different I/O types and sizes may be used in determining I/O service times.
    Type: Application
    Filed: January 11, 2019
    Publication date: July 16, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: Dharmesh J. Desai, Raghuram Adabala, Sichao Zhu, Arieh Don, Jaeyoo Jung
  • Patent number: 10705733
    Abstract: Embodiments provide for a primary storage array having multiple storage tiers. The multiple storage tiers include one or more performance tiers and at least one deduplicated storage tier storing deduplicated data. One embodiment provides for a data storage system including management logic to manage the deduplicated storage tier. The management logic can receive a request to store deduplicated data and respond to the request to store the deduplicated data based on workload statistics associated with the data. In one embodiment the response to the request includes storing at least a portion of the deduplicated data to a first storage device in the second set of storage devices and the workload statistics include input/output (I/O) statistics associated with the unit of deduplicated data. In other embodiments the response includes reallocating drives between storage tiers and/or providing migration hints with respect to data on the deduplicated storage tier.
    Type: Grant
    Filed: September 29, 2016
    Date of Patent: July 7, 2020
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Stephen Smaldone, Ian Wigmore, Arieh Don
  • Publication number: 20200210240
    Abstract: Example embodiments of the present invention provide a method, a system, and a computer program product for managing tasks in a system. The method comprises running a first task on a system, wherein the first task has a first priority of execution time and the execution of which first task locks a resource on the system, and running a second task on the system, wherein the second task has a second priority of execution time earlier than the first priority of execution time of the first task and the execution of which second task requires the resource on the system locked by the first task. The system then may promote the first task having the later first priority of execution time to a new priority of execution time at least as early as the second priority of execution time of the second task and resume execution of the first task having the later first priority of execution time.
    Type: Application
    Filed: March 11, 2020
    Publication date: July 2, 2020
    Inventors: Alexandr Veprinsky, Felix Shvaiger, Anton Kucherov, Arieh Don
  • Publication number: 20200213274
    Abstract: A storage system in one embodiment comprises at least one storage array comprising a plurality of storage devices. The storage array is configured to communicate over one or more networks with a plurality of host devices. The storage array is further configured to receive one or more commands from a given one of the host devices directing that a particular user-defined name be assigned to a particular one of the storage devices, and responsive to receipt of the one or more commands, to determine if any other user-defined name is already assigned to the particular storage device, and if there is no other user-defined name already assigned to the particular storage device, to assign the particular user-defined name to the particular storage device and to store information characterizing the assignment of the particular user-defined name to the particular storage device in persistent memory of the storage array.
    Type: Application
    Filed: March 12, 2020
    Publication date: July 2, 2020
    Inventors: Maneesh Pusalkar, Arieh Don, Vinay Rao, Yaron Dar
  • Publication number: 20200204495
    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: Application
    Filed: December 24, 2018
    Publication date: June 25, 2020
    Inventors: Sanjib Mallick, Vinay G. Rao, Arieh Don
  • Publication number: 20200204475
    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 multi-path input-output driver configured to schedule input-output operations for delivery to the storage system over the network. The multi-path input-output driver is further configured to measure latencies of respective ones of a plurality of paths from the host device to the storage system, to schedule particular ones of the input-output operations for delivery to the storage system over particular ones of the paths based at least in part on the measured latencies, and to control transmission of the particular input-output operations over the particular paths in accordance with the scheduling.
    Type: Application
    Filed: December 24, 2018
    Publication date: June 25, 2020
    Inventors: Sanjib Mallick, Vinay G. Rao, Subin George, Arieh Don
  • Patent number: 10684922
    Abstract: Systems and methods for replicating data are disclosed. Data stored in a compressed form on a source storage array or device can be read and transmitted to a destination storage array or device. The replication of data is achieved without having to decompress the data.
    Type: Grant
    Filed: July 13, 2018
    Date of Patent: June 16, 2020
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Jehuda Shemer, Felix Shvaiger, Arieh Don, Anton Kucherov
  • Patent number: 10684782
    Abstract: One example method includes receiving an IO associated with a process initiated by an application, where the IO is identified by a tag that corresponds to the process. The method further includes saving the tag on a device that is an element of a storage group (SG) that is specific to the application, and correlating the tag with a data protection process that is associated with the application. When a request is received to perform an SG protection process, the SG protection process is performed on the tagged device.
    Type: Grant
    Filed: August 2, 2018
    Date of Patent: June 16, 2020
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Arieh Don, Jehuda Shemer, Yaron Dar
  • Patent number: 10678440
    Abstract: I/O storage processing behavior is controlled on a storage system based on an application instance of an I/O request. I/O storage processing behavior may be associated with application instances on a host by creating a table or other data structure that assigns identifiers to each application instance and specifies associate behavior(s) with the application instance. The table may associate behavior to application instances based on logical groupings of application instances, which may be based on existing defined groups or other logical entities, for example, a container or VM. A host may communicate the table to a storage system, and the storage system may store information from the table. An I/O request on the host may be tagged with an ID from the table, and sent to the storage system, which controls the I/O storage processing of the I/O request according to the tagged ID.
    Type: Grant
    Filed: July 26, 2018
    Date of Patent: June 9, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Kurumurthy Gokam, Arieh Don, Gopinath Marappan
  • Patent number: 10678431
    Abstract: Embodiments provide for a primary storage array having multiple storage tiers. The multiple storage tiers include one or more performance tiers and at least one deduplicated storage tier storing deduplicated data. One embodiment provides for a data storage system including a first storage tier including a first set of storage devices; a second storage tier including a second set of storage devices, the second storage tier including deduplicated data; and a quality of service (QoS) manager to manage data migration between the first storage tier and the second storage tier, the QoS manager to maintain deduplication statistics for the deduplicated data, wherein the QoS manager, based on the deduplication statistics, is to partially migrate a data extent between the first storage tier and the second storage tier, the data extent including data stored at a range of storage addresses.
    Type: Grant
    Filed: September 29, 2016
    Date of Patent: June 9, 2020
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Stephen Smaldone, Ian Wigmore, Arieh Don
  • Patent number: 10673690
    Abstract: Connectivity loss on a storage network may be reliably determined. For one or more host ports connected to a storage system, the frequency with which status communications are received from the host port may be determined. Status communications from a host port then may be monitored to determine if a predefined number of status communications within a predefined period of time have not been received. If so, it may be determined whether a change in storage system permissions concerning use of ports potentially caused the one or more status communications to not be received. If not, it may be determined whether one or more communications associated with a change in configuration of a switch have been received, in which case a predefined amount of time may be allowed to pass to allow the switch change communications to complete; after which status communications from the host port may again be monitored.
    Type: Grant
    Filed: November 1, 2018
    Date of Patent: June 2, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: John S. Copley, Subin George, Arieh Don
  • Patent number: 10652206
    Abstract: A storage system in one embodiment comprises at least one storage array comprising a plurality of storage devices. The storage array is configured to communicate over one or more networks with a plurality of host devices. The storage array is further configured to receive one or more commands from a given one of the host devices directing that a particular user-defined name be assigned to a particular one of the storage devices, and responsive to receipt of the one or more commands, to determine if any other user-defined name is already assigned to the particular storage device, and if there is no other user-defined name already assigned to the particular storage device, to assign the particular user-defined name to the particular storage device and to store information characterizing the assignment of the particular user-defined name to the particular storage device in persistent memory of the storage array.
    Type: Grant
    Filed: October 27, 2017
    Date of Patent: May 12, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Maneesh Pusalkar, Arieh Don, Vinay Rao, Yaron Dar
  • Publication number: 20200145282
    Abstract: Connectivity loss on a storage network may be reliably determined. For one or more host ports connected to a storage system, the frequency with which status communications are received from the host port may be determined. Status communications from a host port then may be monitored to determine if a predefined number of status communications within a predefined period of time have not been received. If so, it may be determined whether a change in storage system permissions concerning use of ports potentially caused the one or more status communications to not be received. If not, it may be determined whether one or more communications associated with a change in configuration of a switch have been received, in which case a predefined amount of time may be allowed to pass to allow the switch change communications to complete; after which status communications from the host port may again be monitored.
    Type: Application
    Filed: November 1, 2018
    Publication date: May 7, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: John S. Copley, Subin George, Arieh Don
  • Publication number: 20200133895
    Abstract: Multiple virtual host ports corresponding to a same physical host port may be determined by or on behalf of a storage system, for example, in response to logging the one or more virtual host ports into the storage system. For one or more virtual host ports, it may be determined whether the virtual host port is connected to a same fabric port as another virtual host port, where a fabric port is a port of a fabric configured to connect to a virtual host port. If two virtual host ports are determined to be connected to a same fabric port, it may be concluded that the two virtual host ports correspond to (e.g., share) a same physical host port. One or more actions may be taken on a storage network based at least in part on a determination that two virtual host ports are sharing a same physical host port.
    Type: Application
    Filed: October 31, 2018
    Publication date: April 30, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: Owen Crowley, Erik P. Smith, Scott Rowlands, Arieh Don
  • Publication number: 20200136897
    Abstract: Single points of failure (SPoFs) may be determined for I/O connectivity on a storage network. I/O path information may be determined for a storage device, for example, as a result of a host system logging into the storage network, and may be updated in response to events on the storage network. From this determined I/O path information, one or more SPoFs between a storage device and an application layer may be determined if, for the I/O path information collectively, it is determined that there is only one of any of the path components between the storage device and the application layer. The I/O path information may be displayed in a manner that facilitates a user identifying that there is an SPoF on an I/O path between a storage device and an application layer of a host system. Based on the determination of an SPoF, an alert may be issued.
    Type: Application
    Filed: October 31, 2018
    Publication date: April 30, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: Erik P. Smith, Scott Rowlands, Vincent H. Westin, Kevin Martin, Arieh Don
  • Publication number: 20200133553
    Abstract: Techniques for migrating data of a logical device from a source to a target system may include: obtaining a map indicating unused data portions of a logical device; issuing read commands from the target system to the source system to only read data from the source copy of the logical device for logical addresses that are not marked in the map as unused data portions; receiving the read data at the target system; writing the read data to second logical addresses of the target copy of the logical device on the target system; and marking logical addresses indicated by the map as corresponding to the unused data portions. The source system may also determine whether all data of a received read request that reads data from the logical device is included in an unused data portion and if so, return no read data and a specialized error condition.
    Type: Application
    Filed: October 25, 2018
    Publication date: April 30, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: Subin George, Deepak Vokaliga, Jaeyoo Jung, Arieh Don
  • Patent number: 10637917
    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 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 particular ports of the storage system over the network in accordance with a load balancing algorithm. The multi-path input-output driver is further configured to receive notification from one or more of the ports indicating that at least a given one of the ports has exceeded a designated threshold level of port load, and to adjust the load balancing algorithm based at least in part on the received notification.
    Type: Grant
    Filed: April 30, 2018
    Date of Patent: April 28, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Sanjib Mallick, Vinay G. Rao, Jaeyoo Jung, Arieh Don
  • Patent number: 10628221
    Abstract: Example embodiments of the present invention provide a method, a system, and a computer program product for managing tasks in a system. The method comprises running a first task on a system, wherein the first task has a first priority of execution time and the execution of which first task locks a resource on the system, and running a second task on the system, wherein the second task has a second priority of execution time earlier than the first priority of execution time of the first task and the execution of which second task requires the resource on the system locked by the first task. The system then may promote the first task having the later first priority of execution time to a new priority of execution time at least as early as the second priority of execution time of the second task and resume execution of the first task having the later first priority of execution time.
    Type: Grant
    Filed: September 30, 2015
    Date of Patent: April 21, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Alexandr Veprinsky, Felix Shvaiger, Anton Kucherov, Arieh Don
  • Publication number: 20200110717
    Abstract: Techniques for transmitting data may comprise: receiving a first data transfer rate indicating a communication rate at which a first entity communicates with a second entity over a communications fabric; receiving a second data transfer rate indicating a communication rate at which the second entity communicates with the first entity over the communications fabric; and performing first processing to send first data from the first entity to the second entity over the communications fabric, said first processing including: determining whether the first data transfer rate is greater than the second data transfer rate; and responsive to determining the first data transfer rate is greater than the second transfer rate, performing second processing by the first entity that controls and limits, in accordance with the second data transfer rate, a rate at which the first data is transmitted from the first entity to the second entity.
    Type: Application
    Filed: October 9, 2018
    Publication date: April 9, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: Deepak Vokaliga, Subin George, Arieh Don
  • Publication number: 20200106698
    Abstract: An illustrative embodiment includes 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 determine fabric identifiers for respective ones of a plurality of paths from the host device to the storage system, and to select particular ones of the paths for delivery of the input-output operations to the storage system based at least in part on the fabric identifiers. The fabric identifiers may be determined for the respective paths, for example, based at least in part on responses to a predetermined command sent over the paths by the multi-path input-output driver.
    Type: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Vinay G. Rao, Subin George, Scott Rowlands, Arieh Don