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: 20140032696Abstract: 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: ApplicationFiled: September 30, 2013Publication date: January 30, 2014Applicant: Microsoft CorporationInventors: James T. Pinkerton, Thomas M. Talpey
-
Publication number: 20130304821Abstract: 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: ApplicationFiled: July 18, 2013Publication date: November 14, 2013Inventors: Prashanth Prahalad, David M. Kruse, Mathew George, James T. Pinkerton, Thomas E. Jolly
-
Patent number: 8577986Abstract: 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: GrantFiled: June 18, 2010Date of Patent: November 5, 2013Assignee: Microsoft CorporationInventors: James T. Pinkerton, Thomas M. Talpey
-
Publication number: 20130254436Abstract: 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: ApplicationFiled: May 16, 2013Publication date: September 26, 2013Applicant: Microsoft CorporationInventors: Avnish Kumar Chhabra, Aditya Dube, Sanjay Kaniyar, James T. Pinkerton
-
Publication number: 20130254272Abstract: 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: ApplicationFiled: May 21, 2013Publication date: September 26, 2013Applicant: Microsoft CorporationInventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
-
Publication number: 20130254492Abstract: 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: ApplicationFiled: May 21, 2013Publication date: September 26, 2013Applicant: Microsoft CorporationInventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
-
Patent number: 8521860Abstract: 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: GrantFiled: March 29, 2011Date of Patent: August 27, 2013Assignee: Microsoft CorporationInventors: Prashanth Prahalad, David M. Kruse, Mathew George, James T. Pinkerton, Thomas E. Jolly
-
Patent number: 8458216Abstract: 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: GrantFiled: February 10, 2012Date of Patent: June 4, 2013Assignee: Microsoft CorporationInventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
-
Patent number: 8447898Abstract: 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: GrantFiled: October 28, 2005Date of Patent: May 21, 2013Assignee: Microsoft CorporationInventors: Avnish Kumar Chhabra, Aditya Dube, Sanjay Kaniyar, James T. Pinkerton
-
Publication number: 20130067095Abstract: 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: ApplicationFiled: September 9, 2011Publication date: March 14, 2013Applicant: Microsoft CorporationInventors: David M. Kruse, Daniel E. Lovinger, Thomas E. Jolly, James T. Pinkerton, Mathew George, Roopesh C. Battepati, Mingdong Shang
-
Publication number: 20130066941Abstract: 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: ApplicationFiled: September 9, 2011Publication date: March 14, 2013Applicant: Microsoft CorporationInventors: David M. Kruse, Diaa Fathalla, James T. Pinkerton, Mathew George, Prashanth Prahalad, Thomas E. Jolly
-
Publication number: 20130041985Abstract: 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: ApplicationFiled: August 10, 2011Publication date: February 14, 2013Applicant: Microsoft CorporationInventors: Neal R. Christiansen, Dustin L. Green, James T. Pinkerton, Rajeev Nagar, Bryan Stephen Matthew, Jaivir K. Aithal
-
Publication number: 20130007518Abstract: 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: ApplicationFiled: June 30, 2011Publication date: January 3, 2013Applicant: Microsoft CorporationInventors: Mathew George, David M. Kruse, James T. Pinkerton, Roopesh C. Battepati, Tom Jolly, Paul R. Swan, Mingdong Shang, Daniel Edward Lovinger
-
Publication number: 20120254396Abstract: 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: ApplicationFiled: March 29, 2011Publication date: October 4, 2012Applicant: Microsoft CorporationInventors: Prashanth Prahalad, David M. Kruse, Mathew George, James T. Pinkerton, Thomas E. Jolly
-
Publication number: 20120143999Abstract: 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: ApplicationFiled: February 10, 2012Publication date: June 7, 2012Applicant: Microsoft CorporationInventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
-
Patent number: 8185566Abstract: 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: GrantFiled: January 15, 2009Date of Patent: May 22, 2012Assignee: Microsoft CorporationInventors: Mathew George, David M. Kruse, James T. Pinkerton, Thomas E. Jolly
-
Publication number: 20110246598Abstract: 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: ApplicationFiled: June 18, 2010Publication date: October 6, 2011Applicant: MICROSOFT CORPORATIONInventors: James T. Pinkerton, Thomas M. Talpey
-
Patent number: 7886083Abstract: 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: GrantFiled: August 31, 2005Date of Patent: February 8, 2011Assignee: Microsoft CorporationInventors: James T. Pinkerton, Sanjay N. Kaniyar
-
Publication number: 20100293197Abstract: 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: ApplicationFiled: May 14, 2009Publication date: November 18, 2010Applicant: Microsoft CorporationInventors: Roopesh C. Battepati, Michael C. Johnson, Jeffrey K. Biseda, James T. Pinkerton, David Matthew Kruse
-
Patent number: 7783880Abstract: 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: GrantFiled: January 14, 2005Date of Patent: August 24, 2010Assignee: Microsoft CorporationInventors: James T. Pinkerton, Avnish K. Chhabra, Sanjay N. Kaniyar