Patents by Inventor Robert Wyckoff Hyer

Robert Wyckoff Hyer 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: 11025728
    Abstract: A method, non-transitory computer readable medium and local storage node computing device that establishes a first connection between a first endpoint in a kernel of an operating system and a second endpoint. A proxy application in a user space is invoked and a second connection is established from the operating system kernel to the proxy application. The proxy application is linked to a secure protocol implementation. Handshake messages are proxied between the second endpoint and the proxy application using the first and second connections. Security parameters for the first connection and determined from the handshake messages are sent from the proxy application to the operating system kernel via the second connection. Data is exchanged between the first endpoint in the operating system kernel and the second endpoint using the first connection and the security parameters.
    Type: Grant
    Filed: May 11, 2016
    Date of Patent: June 1, 2021
    Assignee: NETAPP, INC.
    Inventors: Craig Everhart, Flora Wong, Ankit Jain, Vijay Singh, Robert Wyckoff Hyer, Jr., Balajee Nagasubramaniam
  • Patent number: 10530855
    Abstract: Techniques for synchronization between data structures for original locks and mirror lock data structures are disclosed herein. The mirror lock data structures are being maintained during various scenarios including volume move and aggregate relocation, in order to preserve the non-disruptive persistent operation on storage initiated by clients. According to one embodiment, a storage node determines a plurality of data container locks to be synchronized to a partner node of the storage node and transfers metadata that indicates states of variables that represent the plurality of data container locks to the partner node in a batch. When a client initiates a data access operation that causes an attempt to modify a data container lock of the plurality of data container locks, the storage node sends a retry code to a client that prompts the client to retry the data access operation after a predetermined time period.
    Type: Grant
    Filed: February 26, 2016
    Date of Patent: January 7, 2020
    Assignee: NETAPP, INC.
    Inventors: Omprakaash C. Thoppai, William Zumach, Wangyuan Zhang, Vinay Sridhar, Robert Wyckoff Hyer, Jr.
  • Publication number: 20190258604
    Abstract: A system and method for implementing a quota system in a distributed file system is provided. Each node manages a quota database tracking available quota for the node. Should additional quota be required, a node queries a remote node to obtain a lock over the remote quota database. The additional quota is shifted and remaining free quota is reallocated between the local and remote nodes.
    Type: Application
    Filed: May 7, 2019
    Publication date: August 22, 2019
    Inventors: Michael Eisler, Robert Wyckoff Hyer, JR., Daniel Tennant, Richard P. Jernigan, IV
  • Patent number: 10140306
    Abstract: A system and method for adaptive data placement in a distributed file system is provided. Upon creation of a new subdirectory, a first heuristic procedure is formed to determine whether the newly created subdirectory should be created locally or on a remote flexible volume. Should it be determination be made to create or store the subdirectory on a remote flexible volume, a second heuristic procedure determines which of a plurality of flexible volumes should store the newly created subdirectory.
    Type: Grant
    Filed: July 3, 2017
    Date of Patent: November 27, 2018
    Assignee: NETAPP, INC.
    Inventors: Richard P. Jernigan, IV, Robert Wyckoff Hyer, Jr., Daniel Tennant
  • Patent number: 9934230
    Abstract: Embodiments described herein enable a storage system configured with a cache, i.e., a caching storage system, to obtain soft locks on a plurality of files, including non-regular file types, supported by a plurality of file access protocols. The cache is illustratively embodied as a flexible volume configured to temporarily store information, such as contents of the files, through replication of attributes and data of the files from an origin storage system. The soft locks are illustratively implemented as delegations; a delegation on a file enables the caching storage system to serve the attributes and the data for the file without verifying validity of the data with the origin storage system.
    Type: Grant
    Filed: February 28, 2013
    Date of Patent: April 3, 2018
    Assignee: NetApp, Inc.
    Inventors: Dipankar Roy, Andrew Narver, Robert Wyckoff Hyer, Jr.
  • Publication number: 20170331903
    Abstract: A method, non-transitory computer readable medium and local storage node computing device that establishes a first connection between a first endpoint in a kernel of an operating system and a second endpoint. A proxy application in a user space is invoked and a second connection is established from the operating system kernel to the proxy application. The proxy application is linked to a secure protocol implementation. Handshake messages are proxied between the second endpoint and the proxy application using the first and second connections. Security parameters for the first connection and determined from the handshake messages are sent from the proxy application to the operating system kernel via the second connection. Data is exchanged between the first endpoint in the operating system kernel and the second endpoint using the first connection and the security parameters.
    Type: Application
    Filed: May 11, 2016
    Publication date: November 16, 2017
    Inventors: Craig Everhart, Flora Wong, Ankit Jain, Vijay Singh, Robert Wyckoff Hyer, JR., Balajee Nagasubramaniam
  • Publication number: 20170300508
    Abstract: A system and method for adaptive data placement in a distributed file system is provided. Upon creation of a new subdirectory, a first heuristic procedure is formed to determine whether the newly created subdirectory should be created locally or on a remote flexible volume. Should it be determination be made to create or store the subdirectory on a remote flexible volume, a second heuristic procedure determines which of a plurality of flexible volumes should store the newly created subdirectory.
    Type: Application
    Filed: July 3, 2017
    Publication date: October 19, 2017
    Applicant: NetApp, Inc.
    Inventors: Richard P. JERNIGAN, IV, Robert Wyckoff HYER, JR., Daniel TENNANT
  • Patent number: 9710478
    Abstract: A system and method for adaptive data placement in a distributed file system is provided. Upon creation of a new subdirectory, a first heuristic procedure is formed to determine whether the newly created subdirectory should be created locally or on a remote flexible volume. Should it be determination be made to create or store the subdirectory on a remote flexible volume, a second heuristic procedure determines which of a plurality of flexible volumes should store the newly created subdirectory.
    Type: Grant
    Filed: May 2, 2014
    Date of Patent: July 18, 2017
    Assignee: NETAPP, INC.
    Inventors: Richard P. Jernigan, IV, Robert Wyckoff Hyer, Jr., Daniel Tennant
  • Publication number: 20160182630
    Abstract: Techniques for synchronization between data structures for original locks and mirror lock data structures are disclosed herein. The mirror lock data structures are being maintained during various scenarios including volume move and aggregate relocation, in order to preserve the non-disruptive persistent operation on storage initiated by clients. According to one embodiment, a storage node determines a plurality of data container locks to be synchronized to a partner node of the storage node and transfers metadata that indicates states of variables that represent the plurality of data container locks to the partner node in a batch. When a client initiates a data access operation that causes an attempt to modify a data container lock of the plurality of data container locks, the storage node sends a retry code to a client that prompts the client to retry the data access operation after a predetermined time period.
    Type: Application
    Filed: February 26, 2016
    Publication date: June 23, 2016
    Inventors: Omprakaash C. Thoppai, William Zumach, Wangyuan Zhang, Vinay Sridhar, Robert Wyckoff Hyer
  • Patent number: 9336255
    Abstract: Techniques for adding a directory entry to an existing directory data structure maintained by a storage system for storing a plurality of directory entries are provided. A first storage index block is used for storing a pointer to a first hash value from among a plurality of hash values. A second storage index block is allocated when the first storage index block has reached a threshold level for storing pointers to hash values for the plurality of directory entries. A group of pointers including a pointer to a second hash value from among the plurality of hash values is selected. The group of pointers is stored in the second storage index block with a pointer to a third hash value from among the plurality of hash values such that the directory entry can be searched using the plurality of hash values.
    Type: Grant
    Filed: March 26, 2015
    Date of Patent: May 10, 2016
    Assignee: NETAPP, INC.
    Inventors: Richard Parvin Jernigan, IV, Robert Wyckoff Hyer, Jr.
  • Patent number: 9280396
    Abstract: Techniques for synchronization between data structures for original locks and mirror lock data structures are disclosed herein. The mirror lock data structures are being maintained during various scenarios including volume move and aggregate relocation, in order to preserve the non-disruptive persistent operation on storage initiated by clients. According to one embodiment, a storage node determines a plurality of data container locks to be synchronized to a partner node of the storage node and transfers metadata that indicates states of variables that represent the plurality of data container locks to the partner node in a batch. When a client initiates a data access operation that causes an attempt to modify a data container lock of the plurality of data container locks, the storage node sends a retry code to a client that prompts the client to retry the data access operation after a predetermined time period.
    Type: Grant
    Filed: November 1, 2012
    Date of Patent: March 8, 2016
    Assignee: NetApp, Inc.
    Inventors: Omprakaash C. Thoppai, William Zumach, Wangyuan Zhang, Vinay Sridhar, Robert Wyckoff Hyer, Jr.
  • Publication number: 20150378993
    Abstract: A system and method for implementing a quota system in a distributed file system is provided. Each node manages a quota database tracking available quota for the node. Should additional quota be required, a node queries a remote node to obtain a lock over the remote quota database. The additional quota is shifted and remaining free quota is reallocated between the local and remote nodes.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Michael Eisler, Robert Wyckoff Hyer, JR., Daniel Tennant, Richard P. Jernigan, IV
  • Publication number: 20150317407
    Abstract: A system and method for adaptive data placement in a distributed file system is provided. Upon creation of a new subdirectory, a first heuristic procedure is formed to determine whether the newly created subdirectory should be created locally or on a remote flexible volume. Should it be determination be made to create or store the subdirectory on a remote flexible volume, a second heuristic procedure determines which of a plurality of flexible volumes should store the newly created subdirectory.
    Type: Application
    Filed: May 2, 2014
    Publication date: November 5, 2015
    Applicant: NetApp, Inc.
    Inventors: Richard P. Jernigan, IV, Robert Wyckoff Hyer, JR., Daniel Tennant
  • Publication number: 20150199354
    Abstract: Machine implemented method and system for adding a directory entry to an existing directory data structure maintained by a storage system for storing a plurality of directory entries are provided. A first level storage block is used for storing a pointer to a first hash value from among a plurality of hash values. A new third level storage block is allocated when a second level storage block has reached a threshold level for storing pointers to hash values for the plurality of directory entries. A group of pointers including a pointer to a second hash value from among the plurality of hash values is selected. The group of pointers is stored in the third level storage block with a pointer to a third hash value from among the plurality of hash values such that the directory entry can be searched using the plurality of hash values.
    Type: Application
    Filed: March 26, 2015
    Publication date: July 16, 2015
    Applicant: NETAPP, INC.
    Inventors: Richard Parvin Jernigan, IV, Robert Wyckoff Hyer, JR.
  • Patent number: 9009206
    Abstract: Machine implemented method and system for adding a directory entry to an existing directory data structure maintained by a storage system for storing a plurality of directory entries are provided. A first level storage block is used for storing a pointer to a first hash value from among a plurality of hash values. A new third level storage block is allocated when a second level storage block has reached a threshold level for storing pointers to hash values for the plurality of directory entries. A group of pointers including a pointer to a second hash value from among the plurality of hash values is selected. The group of pointers is stored in the third level storage block with a pointer to a third hash value from among the plurality of hash values such that the directory entry can be searched using the plurality of hash values.
    Type: Grant
    Filed: November 20, 2012
    Date of Patent: April 14, 2015
    Assignee: NetApp, Inc.
    Inventors: Richard Parvin Jernigan, IV, Robert Wyckoff Hyer, Jr.
  • Patent number: 8949614
    Abstract: The disclosed embodiments are directed to improving the efficiency of guaranteeing data consistency to clients, such as for one or more objects stored on a plurality of volumes configured as a Striped Volume Set. In particular, the disclosed embodiments optimize requests from clients which span multiple Data Volumes and which require strong serialization. The disclosed embodiments provide a “viral ticket book” model that provides lower latency while improving compatibility with client protocols.
    Type: Grant
    Filed: April 18, 2008
    Date of Patent: February 3, 2015
    Assignee: NetApp, Inc.
    Inventors: Richard P. Jernigan, IV, Robert Wyckoff Hyer, Jr., John R. Boyles
  • Publication number: 20140237184
    Abstract: A system and method caches and distributes meta-data for one or more data containers stored on a plurality of volumes configured as a striped volume set (SVS) and served by a plurality of nodes interconnected as a cluster. The SVS comprises one meta-data volume (MDV) configured to store a canonical copy of certain meta-data, including access control lists and directories, associated with all data containers stored on the SVS, and one or more data volumes (DV) configured to store, at least, data content of those containers. In addition, for each data container stored on the SVS, one volume is designated a container attribute volume (CAV) and, as such, is configured to store (“cache”) a canonical copy of certain, rapidly-changing attribute meta-data, including time stamps and container length, associated with that container.
    Type: Application
    Filed: April 28, 2014
    Publication date: August 21, 2014
    Applicant: NetApp, Inc.
    Inventors: Michael Kazar, Richard P. Jernigan, IV, Richard N. Sanzi, JR., Robert Wyckoff Hyer, JR.
  • Patent number: 8713077
    Abstract: A system and method caches and distributes meta-data for one or more data containers stored on a plurality of volumes configured as a striped volume set (SVS) and served by a plurality of nodes interconnected as a cluster. The SVS comprises one meta-data volume (MDV) configured to store a canonical copy of certain meta-data, including access control lists and directories, associated with all data containers stored on the SVS, and one or more data volumes (DV) configured to store, at least, data content of those containers. In addition, for each data container stored on the SVS, one volume is designated a container attribute volume (CAV) and, as such, is configured to store (“cache”) a canonical copy of certain, rapidly-changing attribute meta-data, including time stamps and container length, associated with that container.
    Type: Grant
    Filed: January 27, 2010
    Date of Patent: April 29, 2014
    Assignee: NetApp, Inc.
    Inventors: Michael Kazar, Richard P. Jernigan, IV, Richard N. Sanzi, Jr., Robert Wyckoff Hyer, Jr.
  • Patent number: 8560773
    Abstract: The present invention overcomes the disadvantages of the prior art by providing a technique that stripes data containers across volumes of a striped volume set (SVS) using one of a plurality of different data placement patterns to thereby reduce the possibility of hotspots arising due to each data container using the same data placement pattern within the SVS. The technique is illustratively implemented by calculating a first index value, an intermediate index value and calculating a hash value of an mode associated with a data container to be accessed within the SVS. A final index value is calculated by multiplying the intermediate index value by the hash value, modulo the number of volumes of the SVS. Further, a Locate( ) function may be used to compute the location of data container content in the SVS to which a data access request is directed to ensure consistency of such content.
    Type: Grant
    Filed: May 26, 2011
    Date of Patent: October 15, 2013
    Assignee: NetApp, Inc.
    Inventors: Robert Wyckoff Hyer, Jr., Richard Parvin Jernigan, IV, Bryan Todd Schmersal
  • Patent number: 8495417
    Abstract: The present invention provides a system and a method for utilizing a parity protection module to back up data on striped aggregates. Specifically, the system computes parity data for data stored at a particular location of each of a plurality of constituent aggregates, and stores the parity on one of the constituent aggregates that is a parity owner for that particular location of data. In the event one of the constituent aggregates fails, new data may still be accessed by the system (the striped aggregates), both to write new data, and to read data stored on the failed aggregate. In particular, the parity protection module allows clients to read data from a failed aggregate by running a reverse parity computation, which may also be used to restore the data to the failed aggregate.
    Type: Grant
    Filed: January 9, 2009
    Date of Patent: July 23, 2013
    Assignee: NetApp, Inc.
    Inventors: Richard P. Jernigan, IV, Robert Wyckoff Hyer, Jr., Michael L. Kazar, Daniel S. Nydick