Patents by Inventor Craig Everhart

Craig Everhart 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: 11005894
    Abstract: Methods, non-transitory machine readable media, and computing devices that facilitate demultiplexing services over ports are disclosed. With this technology, a request is received via a connection over one or more communication networks. The request includes payload data and a port number. At least a portion of the payload data is analyzed to determine one of a set of protocols associated with the port number. A service is then bound to the connection based on the determined one of the set of protocols. The service is configured to interpret the request. This technology advantageously allows the use of multiple protocols for a port number in a manner that is compatible with existing protocols and does not require any client-side code or coordination.
    Type: Grant
    Filed: April 11, 2019
    Date of Patent: May 11, 2021
    Assignee: NETAPP, INC.
    Inventor: Craig Everhart
  • Publication number: 20200329074
    Abstract: Methods, non-transitory machine readable media, and computing devices that facilitate demultiplexing services over ports are disclosed. With this technology, a request is received via a connection over one or more communication networks. The request includes payload data and a port number. At least a portion of the payload data is analyzed to determine one of a set of protocols associated with the port number. A service is then bound to the connection based on the determined one of the set of protocols. The service is configured to interpret the request. This technology advantageously allows the use of multiple protocols for a port number in a manner that is compatible with existing protocols and does not require any client-side code or coordination.
    Type: Application
    Filed: April 11, 2019
    Publication date: October 15, 2020
    Inventor: Craig Everhart
  • Patent number: 9973394
    Abstract: The present application provides techniques to interrelate a group of multiple entities. A master entity makes configuration decisions regarding the group of entities and communicates those decisions to the entities. When the master relinquishes the master role, the retiring master selects a new master to accede to the master role. The retiring master releases the master role and ensures that the new master becomes aware of its assignment to the master role. During the time between when the retiring master abdicates and when the new master accedes, the group of entities is temporarily permitted to have no master. The master changes the configuration of the group of entities in a similar way. Using the techniques described herein, a new master may eventually replace the retiring master, and a new configuration may eventually replace the old configuration, without the risk of duplicating or dropping the master role or a configuration change.
    Type: Grant
    Filed: October 30, 2015
    Date of Patent: May 15, 2018
    Assignee: NetApp Inc.
    Inventors: Craig Everhart, Steven Ewing
  • Patent number: 9832174
    Abstract: A method and system for authenticating of the pairing of computing devices is described. In an example, a passphrase is established on computing devices. The pairing between two devices is initiated by a first device by communicating independently generated data, wherein the generated data is used along with the passphrase on each of the devices to derive a common pairing key. The pairing is authenticated by using at least a first portion of the common pairing key through a key exchange protocol. Further, a shared secret code is derived using a second portion of the common pairing key and stored to be used indirectly to secure future communication between the paired devices.
    Type: Grant
    Filed: August 11, 2015
    Date of Patent: November 28, 2017
    Assignee: NetApp, Inc.
    Inventors: Craig Everhart, Subhash Sankuratripati
  • 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: 20170093983
    Abstract: The present application provides techniques to interrelate a group of multiple entities. A master entity makes configuration decisions regarding the group of entities and communicates those decisions to the entities. When the master relinquishes the master role, the retiring master selects a new master to accede to the master role. The retiring master releases the master role and ensures that the new master becomes aware of its assignment to the master role. During the time between when the retiring master abdicates and when the new master accedes, the group of entities is temporarily permitted to have no master. The master changes the configuration of the group of entities in a similar way. Using the techniques described herein, a new master may eventually replace the retiring master, and a new configuration may eventually replace the old configuration, without the risk of duplicating or dropping the master role or a configuration change.
    Type: Application
    Filed: October 30, 2015
    Publication date: March 30, 2017
    Applicant: NETAPP, INC.
    Inventors: Craig Everhart, Steven Ewing
  • Publication number: 20170048212
    Abstract: A method and system for authenticating of the pairing of computing devices is described. In an example, a passphrase is established on computing devices. The pairing between two devices is initiated by a first device by communicating independently generated data, wherein the generated data is used along with the passphrase on each of the devices to derive a common pairing key. The pairing is authenticated by using at least a first portion of the common pairing key through a key exchange protocol. Further, a shared secret code is derived using a second portion of the common pairing key and stored to be used indirectly to secure future communication between the paired devices.
    Type: Application
    Filed: August 11, 2015
    Publication date: February 16, 2017
    Inventors: Craig Everhart, Subhash Sankuratripati
  • Publication number: 20070156791
    Abstract: A method and system for replicating a file system organized as a data structure from a source server to a target server. The replication process preserves the order of the inode table entries in the target file system at all stages of the replication process, as well as the internal consistency of the replica of the data structure on the target server.
    Type: Application
    Filed: January 5, 2006
    Publication date: July 5, 2007
    Inventor: Craig Everhart
  • Publication number: 20060288008
    Abstract: Extensions are provided to a lock for supporting concurrency of read and write operations of a shared resource in a computer system. Both reader and writer modes are maintained. In addition, an append mode and a prefix mode are provided. The append mode supports non-exclusive access to the shared resource while enabling modification of the shared resource after a marker. The prefix mode supports non-exclusive access to read the shared resource prior to the marker. Lock mode requests to the shared resources are mediated to ensure compatibility of granted lock modes with lock mode requests.
    Type: Application
    Filed: June 21, 2005
    Publication date: December 21, 2006
    Inventors: Sukadev Bhattiprolu, Craig Everhart, Venkateswarara Jujjuri, Soumitra Sarkar
  • Publication number: 20060277268
    Abstract: Multiple data access techniques are communicated to a client machine requesting access to a shared resource. In response to the returned techniques, the client machine may select one technique for accessing the shared resource. Although the client machine may implement one or more of the techniques to read or write data to the shared resource, different techniques may be preferable based upon protection and privacy associated with the access. A method for the client machine selecting a preferred data access technique may be based upon a topological relationship of the client machine to data storage or a server selected technique.
    Type: Application
    Filed: June 2, 2005
    Publication date: December 7, 2006
    Inventor: Craig Everhart
  • Publication number: 20060230074
    Abstract: A source site employs a source server and a source storage system, and a target site employs a target server and a target storage system. The source server manipulates data that is stored within a source logical unit of the source storage system. The target server generates a flashcopy of a replica volume and performs a recovery of the flashcopy of the replica volume in response to the replica volume being a replication of a storage volume received by the target storage system from the source storage system. The target server further exports data of the recovered flashcopy of the replica volume whereby the recovered flashcopy of the replica volume is made available to a client.
    Type: Application
    Filed: March 30, 2005
    Publication date: October 12, 2006
    Applicant: International Business Machines Corporation
    Inventors: Craig Everhart, Soumitra Sarkar
  • Publication number: 20060080465
    Abstract: An apparatus, graphical user interface, system, and method are provided for presenting a mapping between a namespace and a set of computing resources. The apparatus includes an input module, a format module, and an output module. The input module obtains a mapping between namespace identifiers and a set of computing resources. The format module associates a namespace identifier and a computing resource according to the mapping. The output module provides the namespace identifiers and the associated computing resource corresponding to each namespace identifier. A graphical user interface includes a window with a file system pane and a fileset pane. The file system pane includes a first tree control that displays the components of the file system. The fileset pane includes a second tree control that displays the filesets. The tree controls are updated in response to user input in either the file system pane or the fileset pane.
    Type: Application
    Filed: October 12, 2004
    Publication date: April 13, 2006
    Inventors: Vincent Conzola, Craig Everhart, Elizabeth Hatfield, Mark Molander
  • Publication number: 20050262102
    Abstract: A system provides referencing from one file system server to another through the use of a file system location database improving movement and replication of file systems. When a file system is moved from a first file system server a data object that references the file system remains in the first server and contains information used to find the current location of the file system. The actual location of the file system is stored in the separate file system location database which contains the locations of file systems on a number of file system servers. This allows the data in a file system to be replicated or moved without requiring updates to the data in any redirecting or referencing servers.
    Type: Application
    Filed: July 1, 2005
    Publication date: November 24, 2005
    Inventors: Owen Anderson, Craig Everhart, Boaz Shmueli
  • Publication number: 20050262159
    Abstract: A method and system for managing availability of a dependent thread to service a nested request is provided. A plurality of reply threads are maintained in a single thread pool. In addition, a counter is provided to track availability of a reply thread from the thread pool. A service thread that requires at least one reply thread to complete execution of a request must check the counter to determine availability of the reply thread prior to execution of the request. The process of determining availability of a reply thread prior to execution of a service thread request avoids initiating execution of a request that cannot be completed in a timely manner, or at all.
    Type: Application
    Filed: May 20, 2004
    Publication date: November 24, 2005
    Inventors: Craig Everhart, Venkateswararao Jujjuri, Ninad Palsule, James Seeger
  • Publication number: 20050149528
    Abstract: Improved techniques are disclosed for accessing content in file systems, allowing file system clients to realize advantages of file system referrals even though a file access protocol used by the client is not specifically adapted for referral objects. (For example, the client may have a legacy file system protocol or a proprietary file system protocol which does not support referrals.) These advantages include a uniform name space view of content in a network file system, and an ability to locate content in a (nearly) seamless and transparent manner, even though the content may be dynamically moved from one location to another or replicated in different locations. A file system server returns a symbolic link in place of a referral, and an automated file mounting process on the client is leveraged to access the content using the link. Built-in crash recovery techniques of the file system client are leveraged to access moved content.
    Type: Application
    Filed: March 9, 2005
    Publication date: July 7, 2005
    Inventors: Owen Anderson, Craig Everhart, Boaz Shmueli