Patents by Inventor Pascal RENAULD

Pascal RENAULD 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: 10769036
    Abstract: Embodiments of the disclosure provide techniques for updating a distributed transaction log on a previously offline resource object component using distributed transaction logs from active host computer nodes from separate RAID mirror configurations. Each component object maintains a journal (log) where distributed transactions are recorded. If a component object goes offline and subsequently returns (e.g., if the node hosting the component object reboots), the component object is marked as stale. To return the component object to an active state, a distributed resources module retrieves the journals from other resource component objects from other RAID configurations where the data is mirrored. The module filters corresponding data that is missing in the journal of the previously offline corresponding object and merges the filtered data to the journal.
    Type: Grant
    Filed: November 13, 2017
    Date of Patent: September 8, 2020
    Assignee: VMware, Inc.
    Inventors: William Earl, Christos Karamanolis, Eric Knauft, Pascal Renauld
  • Patent number: 10666435
    Abstract: A tenant's clear text data in a multi-tenant storage system can be encrypted using the tenant's cryptographic key to produce encrypted yet compressible data (“cryptographic data”). The cryptographic data can be encrypted using a system cryptographic key that is managed by the multi-tenant storage system and then stored. Use of the system cryptographic key allows for subsequent maintenance activities such as deduplication and compression to be performed on data stored in the multi-tenant storage system without having to access any of the tenants' cryptographic keys.
    Type: Grant
    Filed: January 9, 2018
    Date of Patent: May 26, 2020
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Jin Zhang, Haoran Zheng, Eric Knauft, Xin Li, Pascal Renauld, Bryan Fink
  • Publication number: 20200142995
    Abstract: Techniques for intelligently scheduling resynchronization jobs in a distributed object-based storage system are provided. In one set of embodiments, a storage node of the system can create a resynchronization job for a component of an object maintained by the system, where the resynchronization job defines one or more input/output (I/O) operations to be carried out with respect to the component. If a number of currently running resynchronization jobs on the storage node has reached a threshold, the storage node can further determine a priority level associated with the object; add the resynchronization job to an object queue for the object; and if the added resynchronization job is a first job in the object queue, add the object queue as a new queue entry to a global priority queue corresponding to the priority level associated with the object.
    Type: Application
    Filed: November 6, 2018
    Publication date: May 7, 2020
    Inventors: Enning Xiang, Yiqi Xu, Eric Knauft, Pascal Renauld
  • Patent number: 10642526
    Abstract: In a storage cluster having nodes, blocks of a logical storage space of a storage object are allocated flexibly by a parent node to component nodes that are backed by physical storage. The method includes maintaining a first allocation map for the parent node, and second and third allocation maps for the first and second component nodes, respectively, executing a first write operation on the first component node and updating the second allocation map to indicate that the first block is a written block, and upon detecting that the first component node is offline, executing a second write operation that targets a second block of the logical storage space, which is allocated to the first component node, on the second component node and updating the third allocation map to indicate that the second block is a written block.
    Type: Grant
    Filed: December 22, 2017
    Date of Patent: May 5, 2020
    Assignee: VMware, Inc.
    Inventors: Eric Knauft, Mansi Shah, Jin Zhang, Christian Dickmann, Pascal Renauld, Radhika Vullikanti, Christos Karamanolis
  • Patent number: 10609139
    Abstract: Exemplary methods, apparatuses, and systems include a replica node storing a component of a storage object detecting that a primary coordinator for the storage object component is no longer available to serve as primary coordinator. The replica node is within a cluster of nodes storing components of the storage object. In response to detecting that the primary coordinator is no longer available, the replica node updates a first metadata entry indicating that a secondary coordinator for the storage object component is unhealthy. The replica node rejects connection requests from the secondary coordinator in response to the first metadata entry indicating that the secondary coordinator for the storage object component is unhealthy.
    Type: Grant
    Filed: August 10, 2017
    Date of Patent: March 31, 2020
    Assignee: VMware, Inc.
    Inventors: Enning Xiang, Pascal Renauld, Eric Knauft
  • Patent number: 10581602
    Abstract: A multi-tenant storage system can store clear text data and associated clear text checksum received from a storage tenant using their associated cryptographic key (“cryptokey”). When the clear text data is compressible, cryptographic data (“cryptodata”) is generated from a concatenation of the clear text checksum and compressed clear text data using the cryptokey. A cryptographic checksum (“cryptochecksum”) is generated from the cryptodata. When the clear text data is uncompressible, cryptographic data (“cryptodata”) is generated by encrypting the clear text data using the cryptokey with an extra verification step to make sure the clear text checksum can be rebuilt during the read request. A cryptographic checksum (“cryptochecksum”) is generated from the cryptodata. The cryptodata and associated cryptochecksum are stored in the multi-tenant storage system, so that repairs to damaged cryptodata can be made using the associated cryptochecksum.
    Type: Grant
    Filed: January 9, 2018
    Date of Patent: March 3, 2020
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Xin Li, Haoran Zheng, Eric Knauft, Jin Zhang, Pascal Renauld, Bryan Fink
  • Publication number: 20190303013
    Abstract: Systems and techniques are described for transferring data. A described technique includes determining that a first replica of an object stored at a first host has become available to a distributed storage system after previously being unavailable to the distributed storage system. The object includes a range of memory addresses at which data of the object is stored. In response to determining that the first replica has become available, resyncing data for the first replica is obtained. The resyncing data indicates whether each range of memory addresses is synchronized at the first replica with other replicas of the object. Tracking data for the first replica is obtained. The tracking data indicates whether data stored at the range of memory addresses of the object has been modified at a second replica while the first replica was unavailable. The resyncing data is updated based on the tracking data.
    Type: Application
    Filed: June 19, 2019
    Publication date: October 3, 2019
    Applicant: VMware, Inc.
    Inventors: Enning Xiang, Eric Knauft, Pascal Renauld
  • Patent number: 10419498
    Abstract: Examples perform input/output (I/O) requests, issued by a plurality of clients to an owner-node, in a virtual storage area network (vSAN) environment. I/O requests are guaranteed, as all I/O requests are performed during non-overlapping, exclusive sessions between one client at a time and the owner node. The owner node rejects requests for simultaneous sessions, and duplicate sessions are prevented by requiring that a client refresh its memory state after termination of a previous session.
    Type: Grant
    Filed: December 1, 2015
    Date of Patent: September 17, 2019
    Assignee: VMware, Inc.
    Inventors: Eric Knauft, Luke Lu, Wenguang Wang, Pascal Renauld, Radu Berinde, Ruocheng Li
  • Patent number: 10365852
    Abstract: Systems and techniques are described for transferring data. A described technique includes determining that a first replica of an object stored at a first host has become available to a distributed storage system after previously being unavailable to the distributed storage system. The object includes a range of memory addresses at which data of the object is stored. In response to determining that the first replica has become available, resyncing data for the first replica is obtained. The resyncing data indicates whether each range of memory addresses is synchronized at the first replica with other replicas of the object. Tracking data for the first replica is obtained. The tracking data indicates whether data stored at the range of memory addresses of the object has been modified at a second replica while the first replica was unavailable. The resyncing data is updated based on the tracking data.
    Type: Grant
    Filed: July 29, 2016
    Date of Patent: July 30, 2019
    Assignee: VMware, Inc.
    Inventors: Enning Xiang, Eric Knauft, Pascal Renauld
  • Publication number: 20190215155
    Abstract: A tenant's clear text data in a multi-tenant storage system can be encrypted using the tenant's cryptographic key to produce encrypted yet compressible data (“cryptographic data”). The cryptographic data can be encrypted using a system cryptographic key that is managed by the multi-tenant storage system and then stored. Use of the system cryptographic key allows for subsequent maintenance activities such as deduplication and compression to be performed on data stored in the multi-tenant storage system without having to access any of the tenants' cryptographic keys.
    Type: Application
    Filed: January 9, 2018
    Publication date: July 11, 2019
    Inventors: Wenguang Wang, Jin Zhang, Haoran Zheng, Eric Knauft, Xin Li, Pascal Renauld, Bryan Fink
  • Publication number: 20190215152
    Abstract: A multi-tenant storage system can store clear text data and associated clear text checksum received from a storage tenant using their associated cryptographic key (“cryptokey”). When the clear text data is compressible, cryptographic data (“cryptodata”) is generated from a concatenation of the clear text checksum and compressed clear text data using the cryptokey. A cryptographic checksum (“cryptochecksum”) is generated from the cryptodata. When the clear text data is uncompressible, cryptographic data (“cryptodata”) is generated by encrypting the clear text data using the cryptokey with an extra verification step to make sure the clear text checksum can be rebuilt during the read request. A cryptographic checksum (“cryptochecksum”) is generated from the cryptodata. The cryptodata and associated cryptochecksum are stored in the multi-tenant storage system, so that repairs to damaged cryptodata can be made using the associated cryptochecksum.
    Type: Application
    Filed: January 9, 2018
    Publication date: July 11, 2019
    Inventors: Wenguang Wang, Xin Li, Haoran Zheng, Eric Knauft, Jin Zhang, Pascal Renauld, Bryan Fink
  • Patent number: 10268408
    Abstract: In a storage cluster having nodes, blocks of a logical storage space of a storage object are allocated flexibly by a parent node to component nodes that are backed by physical storage. The method includes maintaining a first allocation map for the parent node, and second and third allocation maps for the first and second component nodes, respectively, executing a first write operation on the first component node and updating the second allocation map to indicate that the first block is a written block, selecting the second component node for executing a second write operation, and executing the second write operation on the second component node. Upon execution of the second write operation, the third allocation map is updated to indicate that the second block is a written block and the first allocation map is updated to indicate that the second block is allocated to the second component node.
    Type: Grant
    Filed: December 22, 2017
    Date of Patent: April 23, 2019
    Assignee: VMware, Inc.
    Inventors: Mansi Shah, Eric Knauft, Jin Zhang, Christian Dickmann, Pascal Renauld, Radhika Vullikanti, Christos Karamanolis
  • Publication number: 20190065062
    Abstract: In a storage cluster having nodes, blocks of a logical storage space of a storage object are allocated flexibly by a parent node to component nodes that are backed by physical storage. The method includes maintaining a first allocation map for the parent node, and second and third allocation maps for the first and second component nodes, respectively, executing a first write operation on the first component node and updating the second allocation map to indicate that the first block is a written block, and upon detecting that the first component node is offline, executing a second write operation that targets a second block of the logical storage space, which is allocated to the first component node, on the second component node and updating the third allocation map to indicate that the second block is a written block.
    Type: Application
    Filed: December 22, 2017
    Publication date: February 28, 2019
    Inventors: Eric KNAUFT, Mansi SHAH, Jin ZHANG, Christian DICKMANN, Pascal RENAULD, Radhika VULLIKANTI, Christos KARAMANOLIS
  • Publication number: 20190065092
    Abstract: In a storage cluster having nodes, blocks of a logical storage space of a storage object are allocated flexibly by a parent node to component nodes that are backed by physical storage. The method includes maintaining a first allocation map for the parent node, and second and third allocation maps for the first and second component nodes, respectively, executing a first write operation on the first component node and updating the second allocation map to indicate that the first block is a written block, selecting the second component node for executing a second write operation, and executing the second write operation on the second component node. Upon execution of the second write operation, the third allocation map is updated to indicate that the second block is a written block and the first allocation map is updated to indicate that the second block is allocated to the second component node.
    Type: Application
    Filed: December 22, 2017
    Publication date: February 28, 2019
    Inventors: Mansi SHAH, Eric KNAUFT, Jin ZHANG, Christian DICKMANN, Pascal RENAULD, Radhika VULLIKANTI, Christos KARAMANOLIS
  • Publication number: 20190052708
    Abstract: Exemplary methods, apparatuses, and systems include a replica node storing a component of a storage object detecting that a primary coordinator for the storage object component is no longer available to serve as primary coordinator. The replica node is within a cluster of nodes storing components of the storage object. In response to detecting that the primary coordinator is no longer available, the replica node updates a first metadata entry indicating that a secondary coordinator for the storage object component is unhealthy. The replica node rejects connection requests from the secondary coordinator in response to the first metadata entry indicating that the secondary coordinator for the storage object component is unhealthy.
    Type: Application
    Filed: August 10, 2017
    Publication date: February 14, 2019
    Inventors: Enning XIANG, Pascal RENAULD, Eric KNAUFT
  • Patent number: 10198312
    Abstract: Systems and techniques are described for transferring data. A described technique includes receiving a request to transmit a data block from a first data storage device to a second data storage device. An attempt to read the data block from the first data storage device is made. A media error resulting from the attempt to read the data block from the first data storage device is detected. In response to detecting the media error, a new data block is generated and includes mismatched checksum data that causes a checksum mismatched error when the new data block is accessed. The new data block is transmitted for storage at the second data storage device in place of the data block.
    Type: Grant
    Filed: April 2, 2018
    Date of Patent: February 5, 2019
    Assignee: VMware, Inc.
    Inventors: Enning Xiang, Eric Knauft, Pascal Renauld, Xin Li
  • Publication number: 20190034087
    Abstract: Component objects of a virtual disk are backed by first storage nodes, which are at a primary site, and replicated in second storage nodes, which are at a secondary site. Responsive to a write command issued to the virtual disk, a coordinating node at the primary site issues a first write operation to a first replication module running therein, and transmits a second write operation to a second replication module running in a coordinating node at the secondary site. The first replication module, responsive to the first write operation, instructs the first storage nodes backing first and second component objects of the virtual disk to write the data. The second replication module, responsive to the second write operation, instructs the second storage nodes backing third and fourth component objects, which are replicas of the first and second component objects, respectively, to write the data.
    Type: Application
    Filed: July 26, 2017
    Publication date: January 31, 2019
    Inventors: Pascal RENAULD, Enning XIANG, Eric KNAUFT
  • Publication number: 20190034505
    Abstract: Component objects of a virtual disk are backed by first storage nodes, which are at a primary site, and second storage nodes, which are at a secondary site. The method of resynchronizing the component objects of the virtual disk includes, at a coordinating node at the primary site, responsive to a second storage node coming back online, identifying an out-of-sync block of the second storage node, locating the out-of-sync block in an address space maintained for blocks of the virtual disk, and transmitting a resync command to a replication module of a coordinating node at the secondary site, the resync command identifying the out-of-sync block within the address space.
    Type: Application
    Filed: July 26, 2017
    Publication date: January 31, 2019
    Inventors: Pascal RENAULD, Enning XIANG, Eric KNAUFT
  • Publication number: 20190026042
    Abstract: Techniques for enabling deduplication-aware load balancing in a distributed storage system are provided. In one set of embodiments, a node of the distributed storage system can receive an I/O (Input/Output) request pertaining to a data block of a storage object stored on a local storage component of the node. The node can further determine whether the I/O request requires insertion of a new entry into a deduplication hash table associated with the local storage component or deletion of an existing entry from the deduplication hash table. If the I/O request requires insertion of a new hash table entry, the node can add an identifier of the data block into a probabilistic data structure associated with the local storage component, where the probabilistic data structure is configured to maintain information regarding distinct data blocks that are likely present in the local storage component.
    Type: Application
    Filed: July 18, 2017
    Publication date: January 24, 2019
    Inventors: Abhishek Gupta, Jorge Guerra Delgado, Sandeep Rangaswamy, Srinath Premachandran, Pascal Renauld
  • Publication number: 20180225171
    Abstract: Systems and techniques are described for transferring data. A described technique includes receiving a request to transmit a data block from a first data storage device to a second data storage device. An attempt to read the data block from the first data storage device is made. A media error resulting from the attempt to read the data block from the first data storage device is detected. In response to detecting the media error, a new data block is generated and includes mismatched checksum data that causes a checksum mismatched error when the new data block is accessed. The new data block is transmitted for storage at the second data storage device in place of the data block.
    Type: Application
    Filed: April 2, 2018
    Publication date: August 9, 2018
    Applicant: VMware, Inc.
    Inventors: Enning Xiang, Eric Knauft, Pascal Renauld, Xin Li