Patents by Inventor James T. Pinkerton

James T. Pinkerton 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: 20140032696
    Abstract: Embodiments described herein are directed to extending remote direct memory access (RDMA) semantics to enable implementation in a local storage system and to providing a management interface for initializing a local data store. A computer system extends RDMA semantics to provide local storage access using RDMA, where extending the RDMA semantics includes the following: mapping RDMA verbs of an RDMA verbs interface to a local data store and altering RDMA ordering semantics to allow out-of-order processing and/or out-of-order completions. The computer system also accesses various portions of the local data store using the extended RDMA semantics.
    Type: Application
    Filed: September 30, 2013
    Publication date: January 30, 2014
    Applicant: Microsoft Corporation
    Inventors: James T. Pinkerton, Thomas M. Talpey
  • Publication number: 20130304821
    Abstract: Described are embodiments directed at providing a witness service that sends notifications with a resource state to clients. Embodiments provide a protocol that includes various messages for registering and receiving notifications regarding the state of a resource. The protocol may include a message for requesting node information from a first node in a cluster. The node information identifies nodes in the cluster that provide a witness service, which monitors a resource. The protocol includes a message that is used to register with the witness service for notifications regarding a state, or state change, of a network or cluster resource. The protocol also includes messages for sending notifications with state information of the resource.
    Type: Application
    Filed: July 18, 2013
    Publication date: November 14, 2013
    Inventors: Prashanth Prahalad, David M. Kruse, Mathew George, James T. Pinkerton, Thomas E. Jolly
  • Patent number: 8577986
    Abstract: Embodiments described herein are directed to extending remote direct memory access (RDMA) semantics to enable implementation in a local storage system and to providing a management interface for initializing a local data store. A computer system extends RDMA semantics to provide local storage access using RDMA, where extending the RDMA semantics includes the following: mapping RDMA verbs of an RDMA verbs interface to a local data store and altering RDMA ordering semantics to allow out-of-order processing and/or out-of-order completions. The computer system also accesses various portions of the local data store using the extended RDMA semantics.
    Type: Grant
    Filed: June 18, 2010
    Date of Patent: November 5, 2013
    Assignee: Microsoft Corporation
    Inventors: James T. Pinkerton, Thomas M. Talpey
  • Publication number: 20130254436
    Abstract: In one embodiment, to determine what tasks may be offloaded to a peripheral hardware device (e.g., to be performed in hardware on the peripheral device, rather than on the CPU(s) of the host computer), an indication from the at least one peripheral hardware device may be provided, without the peripheral hardware device first being queried to determine the task offload capabilities provided by the peripheral hardware device. In one embodiment, a large packet that includes a plurality of extension headers may be offloaded to the peripheral hardware device for segmentation. An indication of the offset where the extension headers end may be provided in connection with the large packet. In another embodiment, a packet with extension headers that come before an encryption header in the packet are not offloaded to peripheral hardware device for encryption, while packets with no extension headers before the encryption header may be offloaded.
    Type: Application
    Filed: May 16, 2013
    Publication date: September 26, 2013
    Applicant: Microsoft Corporation
    Inventors: Avnish Kumar Chhabra, Aditya Dube, Sanjay Kaniyar, James T. Pinkerton
  • Publication number: 20130254272
    Abstract: A lease system is described herein that allows clients to request a lease to a remote file, wherein the lease permits access to the file across multiple applications using multiple handles without extra round trips to a server. When multiple applications on the same client (or multiple components of the same application) request access to the same file, the client specifies the same lease identifier to the server for each open request or may handle the request from the cache based on the existing lease. Because the server identifies the client's cache at the client level rather than the individual file request level, the client receives fewer break notifications and is able to cache remote files in more circumstances. Thus, by providing the ability to cache data in more circumstances common with modern applications, the lease system reduces bandwidth, improves server scalability, and provides faster access to data.
    Type: Application
    Filed: May 21, 2013
    Publication date: September 26, 2013
    Applicant: Microsoft Corporation
    Inventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
  • Publication number: 20130254492
    Abstract: A lease system is described herein that allows clients to request a lease to a remote file, wherein the lease permits access to the file across multiple applications using multiple handles without extra round trips to a server. When multiple applications on the same client (or multiple components of the same application) request access to the same file, the client specifies the same lease identifier to the server for each open request or may handle the request from the cache based on the existing lease. Because the server identifies the client's cache at the client level rather than the individual file request level, the client receives fewer break notifications and is able to cache remote files in more circumstances. Thus, by providing the ability to cache data in more circumstances common with modern applications, the lease system reduces bandwidth, improves server scalability, and provides faster access to data.
    Type: Application
    Filed: May 21, 2013
    Publication date: September 26, 2013
    Applicant: Microsoft Corporation
    Inventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
  • Patent number: 8521860
    Abstract: Described are embodiments directed at providing a witness service that sends notifications with a resource state to clients. Embodiments provide a protocol that includes various messages for registering and receiving notifications regarding the state of a resource. The protocol may include a message for requesting node information from a first node in a cluster. The node information identifies nodes in the cluster that provide a witness service, which monitors a resource. The protocol includes a message that is used to register with the witness service for notifications regarding a state, or state change, of a network or cluster resource. The protocol also includes messages for sending notifications with state information of the resource.
    Type: Grant
    Filed: March 29, 2011
    Date of Patent: August 27, 2013
    Assignee: Microsoft Corporation
    Inventors: Prashanth Prahalad, David M. Kruse, Mathew George, James T. Pinkerton, Thomas E. Jolly
  • Patent number: 8458216
    Abstract: A lease system is described herein that allows clients to request a lease to a remote file, wherein the lease permits access to the file across multiple applications using multiple handles without extra round trips to a server. When multiple applications on the same client (or multiple components of the same application) request access to the same file, the client specifies the same lease identifier to the server for each open request or may handle the request from the cache based on the existing lease. Because the server identifies the client's cache at the client level rather than the individual file request level, the client receives fewer break notifications and is able to cache remote files in more circumstances. Thus, by providing the ability to cache data in more circumstances common with modern applications, the lease system reduces bandwidth, improves server scalability, and provides faster access to data.
    Type: Grant
    Filed: February 10, 2012
    Date of Patent: June 4, 2013
    Assignee: Microsoft Corporation
    Inventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
  • Patent number: 8447898
    Abstract: In one embodiment, to determine what tasks may be offloaded to a peripheral hardware device (e.g., to be performed in hardware on the peripheral device, rather than on the CPU(s) of the host computer), an indication from the at least one peripheral hardware device may be provided, without the peripheral hardware device first being queried to determine the task offload capabilities provided by the peripheral hardware device. In one embodiment, a large packet that includes a plurality of extension headers may be offloaded to the peripheral hardware device for segmentation. An indication of the offset where the extension headers end may be provided in connection with the large packet. In another embodiment, a packet with extension headers that come before an encryption header in the packet are not offloaded to peripheral hardware device for encryption, while packets with no extension headers before the encryption header may be offloaded.
    Type: Grant
    Filed: October 28, 2005
    Date of Patent: May 21, 2013
    Assignee: Microsoft Corporation
    Inventors: Avnish Kumar Chhabra, Aditya Dube, Sanjay Kaniyar, James T. Pinkerton
  • Publication number: 20130067095
    Abstract: Systems and methods are disclosed for clients and servers operating in a scaled cluster environment. Efficiencies are introduced to the process of connecting a client to a clustered environment by providing the client with the ability to attempt a connection with multiple servers in parallel. Servers operating the in the clustered environment are also capable of providing persistent storage of file handles and other state information. Ownership of the state information and persistent handles may be transferred between servers, thereby providing clients with the opportunity to move from one server to another while maintaining access to resources in the clustered environment.
    Type: Application
    Filed: September 9, 2011
    Publication date: March 14, 2013
    Applicant: Microsoft Corporation
    Inventors: David M. Kruse, Daniel E. Lovinger, Thomas E. Jolly, James T. Pinkerton, Mathew George, Roopesh C. Battepati, Mingdong Shang
  • Publication number: 20130066941
    Abstract: An application instance identifier is employed with various systems and methods in order to provide a requestor with continuous access to a resource when operating in a client clustered environment. A requestor residing on a first client in may attempt to access a resource. The first client sends a request to access the resource. The request may be associated with an application instance identifier that identifiers the requestor. At some point, the first client fails and the requestor is associated with a second client via a failover mechanism. The second client sends a second request to access the resource on behalf of the requestor. The second request is associated with the requestor's application instance identifier. The application instance identifier is used to identify the second request as belonging to the same requestor as the first request, thereby granting the second request to access the resource while avoiding a conflict situation.
    Type: Application
    Filed: September 9, 2011
    Publication date: March 14, 2013
    Applicant: Microsoft Corporation
    Inventors: David M. Kruse, Diaa Fathalla, James T. Pinkerton, Mathew George, Prashanth Prahalad, Thomas E. Jolly
  • Publication number: 20130041985
    Abstract: Described are embodiments which allow token-based file operations. The client may request a special offload file operation that is formatted according to a file access protocol. The file operation may be an offload read operation or an offload write operation. In an offload read operation, the client requests that data be logically read from a stored file, or a portion thereof. In response, the file server provides a response that includes a token that represents the logically read data. In some embodiments, the file server may return a response with a token that represents less than all of the requested data if for some reason it cannot provide a token that represents all of the data. The token can then be used by the client in a subsequent offload write operation. In embodiments, the tokens represent immutable data that can be safely and securely used across servers and clients.
    Type: Application
    Filed: August 10, 2011
    Publication date: February 14, 2013
    Applicant: Microsoft Corporation
    Inventors: Neal R. Christiansen, Dustin L. Green, James T. Pinkerton, Rajeev Nagar, Bryan Stephen Matthew, Jaivir K. Aithal
  • Publication number: 20130007518
    Abstract: Described are embodiments directed at persistent handles that are used to retain state across network failures and server failovers. Persistent handles are requested by a client after a session has been established with a file server. The request for the persistent handle includes a handle identifier generated by the client. The server uses the handle identifier to associate with state information. When there is a network failure or a server failover, and a reconnection to the client, the handle identifier is used to identify replayed requests that if replayed would create an inconsistent state on the server. The replayed requests are then appropriately handled.
    Type: Application
    Filed: June 30, 2011
    Publication date: January 3, 2013
    Applicant: Microsoft Corporation
    Inventors: Mathew George, David M. Kruse, James T. Pinkerton, Roopesh C. Battepati, Tom Jolly, Paul R. Swan, Mingdong Shang, Daniel Edward Lovinger
  • Publication number: 20120254396
    Abstract: Described are embodiments directed at providing a witness service that sends notifications with a resource state to clients. Embodiments provide a protocol that includes various messages for registering and receiving notifications regarding the state of a resource. The protocol may include a message for requesting node information from a first node in a cluster. The node information identifies nodes in the cluster that provide a witness service, which monitors a resource. The protocol includes a message that is used to register with the witness service for notifications regarding a state, or state change, of a network or cluster resource. The protocol also includes messages for sending notifications with state information of the resource.
    Type: Application
    Filed: March 29, 2011
    Publication date: October 4, 2012
    Applicant: Microsoft Corporation
    Inventors: Prashanth Prahalad, David M. Kruse, Mathew George, James T. Pinkerton, Thomas E. Jolly
  • Publication number: 20120143999
    Abstract: A lease system is described herein that allows clients to request a lease to a remote file, wherein the lease permits access to the file across multiple applications using multiple handles without extra round trips to a server. When multiple applications on the same client (or multiple components of the same application) request access to the same file, the client specifies the same lease identifier to the server for each open request or may handle the request from the cache based on the existing lease. Because the server identifies the client's cache at the client level rather than the individual file request level, the client receives fewer break notifications and is able to cache remote files in more circumstances. Thus, by providing the ability to cache data in more circumstances common with modern applications, the lease system reduces bandwidth, improves server scalability, and provides faster access to data.
    Type: Application
    Filed: February 10, 2012
    Publication date: June 7, 2012
    Applicant: Microsoft Corporation
    Inventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
  • Patent number: 8185566
    Abstract: A lease system is described herein that allows clients to request a lease to a remote file, wherein the lease permits access to the file across multiple applications using multiple handles without extra round trips to a server. When multiple applications on the same client (or multiple components of the same application) request access to the same file, the client specifies the same lease identifier to the server for each open request or may handle the request from the cache based on the existing lease. Because the server identifies the client's cache at the client level rather than the individual file request level, the client receives fewer break notifications and is able to cache remote files in more circumstances. Thus, by providing the ability to cache data in more circumstances common with modern applications, the lease system reduces bandwidth, improves server scalability, and provides faster access to data.
    Type: Grant
    Filed: January 15, 2009
    Date of Patent: May 22, 2012
    Assignee: Microsoft Corporation
    Inventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
  • Publication number: 20110246598
    Abstract: Embodiments described herein are directed to extending remote direct memory access (RDMA) semantics to enable implementation in a local storage system and to providing a management interface for initializing a local data store. A computer system extends RDMA semantics to provide local storage access using RDMA, where extending the RDMA semantics includes the following: mapping RDMA verbs of an RDMA verbs interface to a local data store and altering RDMA ordering semantics to allow out-of-order processing and/or out-of-order completions. The computer system also accesses various portions of the local data store using the extended RDMA semantics.
    Type: Application
    Filed: June 18, 2010
    Publication date: October 6, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: James T. Pinkerton, Thomas M. Talpey
  • Patent number: 7886083
    Abstract: A method for the synchronization of network neighbor reachability between a host networking stack and a peripheral device, which offloads one or more network protocols is provided. The network neighbor reachability represents the reachability of another computer on the network. This invention enables conventional neighbor reachability to be extended to seamlessly support some network connections to a specific remote host to be offloaded to a peripheral device, while other network connections are not.
    Type: Grant
    Filed: August 31, 2005
    Date of Patent: February 8, 2011
    Assignee: Microsoft Corporation
    Inventors: James T. Pinkerton, Sanjay N. Kaniyar
  • Publication number: 20100293197
    Abstract: Aspects of the subject matter described herein relate to directory oplocks. In aspects, a file system filter is inserted in a filter stack between requesters of directory oplocks and a file system that stores file system objects. The file system filter receives requests for directory oplocks and subsequently monitors for requests to access file system objects that are inconsistent with the directory oplocks. To provide directory oplock mechanisms, the file system filter may use alternate data streams if provided by the file system or may independently maintain information usable to maintain and release directory oplocks. A directory oplock may affect ancestors and descendants of the directory depending on constraints imposed by the oplock.
    Type: Application
    Filed: May 14, 2009
    Publication date: November 18, 2010
    Applicant: Microsoft Corporation
    Inventors: Roopesh C. Battepati, Michael C. Johnson, Jeffrey K. Biseda, James T. Pinkerton, David Matthew Kruse
  • Patent number: 7783880
    Abstract: The invention provides mechanisms for transferring processor control of secure Internet Protocol (IPSec) security association (SA) functions between a host and a target processing devices of a computerized system, such as processors in a host CPU and a NIC. In one aspect of the invention, the computation associated with authentication and/or encryption is offloaded while the host maintains control of when SA functions are offloaded, uploaded, invalidated, and re-keyed. The devices coordinate to maintain metrics for the SA, including support for both soft and hard limits on SA expiration. Timer requirements are minimized for the target. The offloaded SA function may be embedded in other offloaded state objects of intermediate software layers of a network stack.
    Type: Grant
    Filed: January 14, 2005
    Date of Patent: August 24, 2010
    Assignee: Microsoft Corporation
    Inventors: James T. Pinkerton, Avnish K. Chhabra, Sanjay N. Kaniyar