Patents by Inventor David Steere

David Steere 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: 9124647
    Abstract: One or more techniques and/or systems are provided for processing data requests received over various communication protocols. In particular, a data transfer component may be configured to process data requests and/or responses between requesting devices and data handlers utilizing various communication protocols (e.g., peer-to-peer communication protocols, web based communication protocols, etc.). In particular, communication protocol functionality may be abstracted away from the data handlers, and may be handled by the data transfer component. In this way, data handlers may be communication protocol agnostic because the data transfer component may perform the communication protocol functionality on behalf of the data handlers, which may allow the data handlers to be more “lightweight” and focus primarily on fetching and/or formatting requested data.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: September 1, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Harel Williams, Naizhi Li, Kunal Nayyar, David Steere
  • Patent number: 8458776
    Abstract: A source device and a target device may endeavor to form a secure communication session whereby encrypted messages may be transmitted over an untrusted network, such as the internet. However, the exchange of many messages in the establishment of the communication session may involve considerable latency and computational resources, particularly in scenarios featuring many communication sessions (e.g., peer-to-peer communication sessions.) Techniques for initiating a communication session may be devised that enables the initiation of a communication session with only two exchanged messages, or even with a single message transmitted from the source device to the target device. Some embodiments of these techniques may also permit the inclusion of advantageous security features, such as authentication via public certificate to detect man-in-the-middle attacks and the inclusion of nonces to detect replay attacks, without increasing the number of messages involved in the initiation of the communication session.
    Type: Grant
    Filed: October 21, 2009
    Date of Patent: June 4, 2013
    Assignee: Microsoft Corporation
    Inventors: Tom Galvin, David Steere
  • Publication number: 20130110971
    Abstract: One or more techniques and/or systems are provided for processing data requests received over various communication protocols. In particular, a data transfer component may be configured to process data requests and/or responses between requesting devices and data handlers utilizing various communication protocols (e.g., peer-to-peer communication protocols, web based communication protocols, etc.). In particular, communication protocol functionality may be abstracted away from the data handlers, and may be handled by the data transfer component. In this way, data handlers may be communication protocol agnostic because the data transfer component may perform the communication protocol functionality on behalf of the data handlers, which may allow the data handlers to be more “lightweight” and focus primarily on fetching and/or formatting requested data.
    Type: Application
    Filed: October 31, 2011
    Publication date: May 2, 2013
    Applicant: Microsoft Corporation
    Inventors: Harel Williams, Naizhi Li, Kunal Nayyar, David Steere
  • Publication number: 20110093710
    Abstract: A source device and a target device may endeavor to form a secure communication session whereby encrypted messages may be transmitted over an untrusted network, such as the internet. However, the exchange of many messages in the establishment of the communication session may involve considerable latency and computational resources, particularly in scenarios featuring many communication sessions (e.g., peer-to-peer communication sessions.) Techniques for initiating a communication session may be devised that enables the initiation of a communication session with only two exchanged messages, or even with a single message transmitted from the source device to the target device. Some embodiments of these techniques may also permit the inclusion of advantageous security features, such as authentication via public certificate to detect man-in-the-middle attacks and the inclusion of nonces to detect replay attacks, without increasing the number of messages involved in the initiation of the communication session.
    Type: Application
    Filed: October 21, 2009
    Publication date: April 21, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: TOM GALVIN, DAVID STEERE
  • Publication number: 20070206610
    Abstract: Various embodiments can utilize a distributed solution for scheduling connections between peers in a file sharing environment. In accordance with at least some embodiments, individual nodes in a peer-to-peer system include scheduling software that enables the nodes to make scheduling decisions with regard to how, when and where connections are made with other peers. Scheduling decisions can be based on a number of different parameters. In at least some embodiments, a synchronization negotiation manager is embodied with logic that drives the negotiation and scheduling process. This logic is represented by an innovative state machine that is designed to implement the negotiation and synchronization process.
    Type: Application
    Filed: December 16, 2005
    Publication date: September 6, 2007
    Applicant: Microsoft Corporation
    Inventors: Dan Teodosiu, Philip Chou, Alexandra Heron, Cheng Huang, Tom Kleinpeter, Jin Li, Eyal Schwartz, John Spivey, David Steere
  • Publication number: 20070185932
    Abstract: Various embodiments introduce the notion of a replication entity which implements a highly scalable file replication system. In one embodiment, the replication entity resides in the form of a scalable replication service. In at least some embodiments, the replication service provides a “drive in the sky” facility that can be used by individuals, such as subscribers, to synchronize their individual machines, such that their files are automatically replicated to a safe and always-on location. Alternatively or additionally, individuals such as subscribers can also access their files via a web-based interface when they are away from their machines.
    Type: Application
    Filed: February 1, 2006
    Publication date: August 9, 2007
    Applicant: Microsoft Corporation
    Inventors: Dan Teodosiu, David Steere, Muthukaruppan Annamalai, Nikolaj Bjorner, Michael Bohlander, Huisheng Liu, Patrick Bozeman
  • Publication number: 20060195899
    Abstract: Implementations of the present invention relate to a communication framework that is readily adaptable to a wide variety of resources intended to be accessible through a firewall. In general, a communication framework at a gateway server can provide a specific connection to a requested resource in accordance with a wide range of resource and/or network access policies. In one instance, a client requests a connection to a specific resource behind a firewall. The communication framework authenticates the connection, and quarantines the connection until determining, for example, that the client is using an appropriate resource features. If appropriately authenticated, the communication framework can pass control of the connection to an appropriately identified protocol plug-in processor, which facilitates a direct connection to the requested resource at an application layer of a communication stack.
    Type: Application
    Filed: January 5, 2006
    Publication date: August 31, 2006
    Applicant: Microsoft Corporation
    Inventors: Ido Ben-Shachar, Ashwin Palekar, David Steere, Joy Chik, Tudor Baraboi, Meher Malakapalli
  • Publication number: 20050198385
    Abstract: A system and method for implementing a consistent user name-space on networked computing devices is provided. When a network connection between a local or host computing device and one or more remote computing devices is present, remote items are represented using the same methodology as items located on the host computing device. To the user, remote and local items are indistinguishable. When the network connection is lost or items located on a remote computer are otherwise unavailable, the unavailable items remain represented on the host computing device. Unavailable items are represented in a way that informs the user that the items may not be fully accessed.
    Type: Application
    Filed: January 30, 2004
    Publication date: September 8, 2005
    Inventors: Brian Aust, David De Vorchik, Yun Lin, Timothy McKee, Jason Moore, Shishir Pardikar, Mohammed Samji, David Steere, Navjot Virk
  • Publication number: 20050165735
    Abstract: The present invention provides a novel client side caching (CSC) infrastructure that supports transition states at the directory level to facilitate a seamless operation across connectivity states between client and remote server. More specifically, persistent caching is performed to safeguard the user (e.g., client) and/or the client applications across connectivity interruptions and/or bandwidth changes. This is accomplished in part by caching to a client data store the desirable file(s) together with the appropriate file access parameters. Moreover, the client maintains access to cached files during periods of disconnect. Furthermore, portions of a path can be offline while other portions upstream can remain online. CSC operates on the logical path which cooperates with DFS which operates on the physical path to keep track of files cached, accessed and changes in the directories. In addition, truth on the client is facilitated whether or not a conflict of file copies exists.
    Type: Application
    Filed: February 22, 2005
    Publication date: July 28, 2005
    Applicant: Microsoft Corporation
    Inventors: Yun Lin, Navjot Virk, Brian Aust, Shishir Pardikar, David Steere, Mohammed Samji
  • Publication number: 20050160096
    Abstract: The present invention provides a novel client side caching (CSC) infrastructure that supports transition states at the directory level to facilitate a seamless operation across connectivity states between client and remote server. More specifically, persistent caching is performed to safeguard the user (e.g., client) and/or the client applications across connectivity interruptions and/or bandwidth changes. This is accomplished in part by caching to a client data store the desirable file(s) together with the appropriate file access parameters. Moreover, the client maintains access to cached files during periods of disconnect. Furthermore, portions of a path can be offline while other portions upstream can remain online. CSC operates on the logical path which cooperates with DFS which operates on the physical path to keep track of files cached, accessed and changes in the directories. In addition, truth on the client is facilitated whether or not a conflict of file copies exists.
    Type: Application
    Filed: February 22, 2005
    Publication date: July 21, 2005
    Applicant: Microsoft Corporation
    Inventors: Yun Lin, Navjot Virk, Brian Aust, Shishir Pardikar, David Steere, Mohammed Samji
  • Publication number: 20050102370
    Abstract: The present invention provides a novel client side caching (CSC) infrastructure that supports transition states at the directory level to facilitate a seamless operation across connectivity states between client and remote server. More specifically, persistent caching is performed to safeguard the user (e.g., client) and/or the client applications across connectivity interruptions and/or bandwidth changes. This is accomplished in part by caching to a client data store the desirable file(s) together with the appropriate file access parameters. Moreover, the client maintains access to cached files during periods of disconnect. Furthermore, portions of a path can be offline while other portions upstream can remain online. CSC operates on the logical path which cooperates with DFS which operates on the physical path to keep track of files cached, accessed and changes in the directories. In addition, truth on the client is facilitated whether or not a conflict of file copies exists.
    Type: Application
    Filed: October 23, 2003
    Publication date: May 12, 2005
    Inventors: Yun Lin, David Steere, Navjot Virk, Shishir Pardikar, Ahmed Mohamed
  • Publication number: 20050091226
    Abstract: The present invention provides a novel client side caching (CSC) infrastructure that supports transition states at the directory level to facilitate a seamless operation across connectivity states between client and remote server. More specifically, persistent caching is performed to safeguard the user (e.g., client) and/or the client applications across connectivity interruptions and/or bandwidth changes. This is accomplished in part by caching to a client data store the desirable file(s) together with the appropriate file access parameters. Moreover, the client maintains access to cached files during periods of disconnect. Furthermore, portions of a path can be offline while other portions upstream can remain online. CSC operates on the logical path which cooperates with DFS which operates on the physical path to keep track of files cached, accessed and changes in the directories. In addition, truth on the client is facilitated whether or not a conflict of file copies exists.
    Type: Application
    Filed: October 23, 2003
    Publication date: April 28, 2005
    Inventors: Yun Lin, Navjot Virk, Brian Aust, Shishir Pardikar, David Steere, Mohammed Samji
  • Publication number: 20050044075
    Abstract: Late-binding/dynamic pathname resolution can be performed by a variable identifier operating in user or kernel mode, and a pathname engine and a data structure operating in kernel mode. The variable identifier identifies a variable in a pathname. The pathname engine evaluates the variable by converting the variable into a character string such that a path to an object file is established. The pathname engine determines a scope of potential character string values for the variable by mapping the variable to corresponding values stored in the data structure. Each variable has a well-defined scope of values because the only values available are the values selected for storage in the data structure. The mechanism for establishing values is extensible such that variable/value pairs can be implemented in the data structure at any time.
    Type: Application
    Filed: July 29, 2003
    Publication date: February 24, 2005
    Applicant: Microsoft Corporation
    Inventors: David Steere, Brian Dewey, Rajeev Nagar, Vishal Ghotge
  • Publication number: 20050027943
    Abstract: The present invention is directed at a system and method for managing and evicting objects stored in a cache. The invention provides a mechanism for determining which objects to evict based on a weight that is calculated for each object stored in the cache. The weight is determined by at least two factors, including file size, file type, primary user, last access time, and the like, and by the relative importance of each of the factors. The weight for each object may be determined autonomously and/or may be determined upon a trigger event. The factors and their relative importance may be obtained from a policy applicable to one or several computers.
    Type: Application
    Filed: August 1, 2003
    Publication date: February 3, 2005
    Applicant: Microsoft Corporation
    Inventors: David Steere, Brian Aust, Yun Lin, Mohammed Samji, Navjot Virk, Shishir Pardikar