Patents by Inventor Christopher Kaler

Christopher Kaler 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: 8001189
    Abstract: A routing protocol is provided for exchanging messages between an initial sender and an ultimate receiver, potentially via a set of intermediaries. The routing protocol provides an optional reverse message path that enables two-way message exchange patterns. The routing protocol can be expressed as a header entry within a message envelope, is independent of the underlying protocol, and can be generated at the application layer of a protocol stack. The routing protocol may allow each intermediary to process the message and dynamically alter the message path en route to the intended recipient.
    Type: Grant
    Filed: October 15, 2002
    Date of Patent: August 16, 2011
    Assignee: Microsoft Corporation
    Inventors: Henrik F. Nielsen, John P. Shewchuk, Erik B. Christensen, Alfred M. Lee, Christian Huitema, James M. Lyon, Mark H. Lukovsky, Andrew J. Layman, Satish R. Thatte, Christopher Kaler
  • Publication number: 20090013410
    Abstract: A method and system are provided for managing a security threat in a distributed system. A distributed element of the system detects and reports suspicious activity to a threat management agent. The threat management agent determines whether an attack is taking place and deploys a countermeasure to the attack when the attack is determined to be taking place. Another method and system are also provided for managing a security threat in a distributed system. A threat management agent reviews reported suspicious activity including suspicious activity reported from at least one distributed element of the system, determines, based on the reports, whether a pattern characteristic of an attack occurred, and predicts when a next attack is likely to occur. Deployment of a countermeasure to the predicted next attack is directed in a time window based on when the next attack is predicted to occur.
    Type: Application
    Filed: March 28, 2008
    Publication date: January 8, 2009
    Inventors: Christopher Kaler, Giovanni Moises Della-Libera, John P. Shewchuk
  • Publication number: 20070226356
    Abstract: A method includes advertising a policy characterizing communication properties supported by a node. The policy may be distributed to another node in response to a request for the policy. Policy expressions in the policy include one or more assertions that may be grouped and related to each other in a plurality of ways. A system includes a policy generator for generating at least one policy characterizing properties of a node. A policy retriever retrieves a policy from another node and a message generator generates a message to the other node, wherein the message conforms to the policy from the other node.
    Type: Application
    Filed: May 29, 2007
    Publication date: September 27, 2007
    Applicant: Microsoft Corporation
    Inventors: David Levin, Erik Christensen, Saurab Nog, Donald Box, Christopher Kaler, Giovanni Della-Libera, Alfred Lee, David Wortendyke
  • Publication number: 20070150741
    Abstract: A method of securing communications between an application that includes a macro and a Web Service. The method includes an act of, at the macro, generating a request for data. The request for data comprises generating commands for retrieving data, generating security information, and embedding the commands for retrieving data and the security information in a request. The request for data is sent to the Web Service. The requested data is received from the Web Service if the security information provides appropriate authorization to receive the requested data.
    Type: Application
    Filed: December 12, 2005
    Publication date: June 28, 2007
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, John Shewchuk
  • Publication number: 20070150540
    Abstract: Managing peer-to-peer application components. A method may be performed, for example, at a computer system that includes application components including peer-to-peer application components. The peer-to-peer application components allow the computer system to communicate with other agents, such as host computers, operating systems, frameworks, application code and the like, in a peer-to-peer fashion. The computer system includes a launch pad module for coordinating the peer-to-peer application components. The method includes providing an extensible interface that allows peer-to-peer application components to be registered with the launch pad module. Peer-to-peer application components are registered with the launch pad module. Requests are accepted from agents directed to the peer-to-peer application components registered with the launch pad module. Launch functions are performed for the peer-to-peer application components registered with the launch pad module in response to the requests.
    Type: Application
    Filed: December 27, 2005
    Publication date: June 28, 2007
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Gopala Kakivaya, Hervey Wilson, Richard Hasha
  • Publication number: 20070143770
    Abstract: The present invention extends to methods, systems, and computer program products for mapping between anonymous modules in an event environment. Through the use of one or more event type to executable module bindings, a binding/dispatch manager maps events, for example, peer-to-peer, grid, or parallel processing computing events, to appropriate methods for processing the events. When an event is received from an event infrastructure, the binding/dispatch manager refers to annotations (e.g., based on the shape of the parameters) to identify an appropriate method for processing the event. Parameters are transferred to the appropriate method, which processes the parameters and returns any results to the binding/dispatch manager. In some embodiments, the binding/dispatch manager then forwards a response to the event infrastructure.
    Type: Application
    Filed: December 15, 2005
    Publication date: June 21, 2007
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Richard Hasha
  • Publication number: 20070140110
    Abstract: A software architecture that permits for a unified mechanism for interfacing with multiple peer groups. The architecture includes multiple peer group interfaces, each facilitating communication between computing systems in a corresponding peer group. In addition, a perhaps configurable number and type of service modules are configured to use the peer group interfaces to facilitate communication between peer groups in a manner that facilitates the service. A peer community application program interface is configured to allow one or more peer applications to enlist the services of the plurality of services by interfacing with the peer community application program interface.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Applicant: Microsoft Corporation
    Inventor: Christopher Kaler
  • Publication number: 20070136338
    Abstract: Structuring a data structure that is of a particular type that has a particular schema used for validation, in a manner that permits selected components of the data structure to be optionally transformed while retaining the ability to validate the data structure. The data structure includes information that is sufficient to identify one or more transformations that may occur on at least one component of the data structure while still being valid.
    Type: Application
    Filed: December 12, 2005
    Publication date: June 14, 2007
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Donald Box, Martin Gudgin
  • Publication number: 20070133520
    Abstract: Communicating a message using between networked agents. Some embodiments may be practiced, for example, in a network including one or more interconnected agents. A method facilities communicating a message to one or more of the interconnected agents. The method includes receiving feedback including information about the network. The information about the network is tracked. The method further includes consulting a set of policy rules. The policy rules include logic which takes into account the tracked information about the network. The policy rules further include information about how messages should be sent based on the logic which takes into account the tracked information about the network. The method also includes sending the message according to the information about how messages should be sent.
    Type: Application
    Filed: December 12, 2005
    Publication date: June 14, 2007
    Applicant: Microsoft Corporation
    Inventors: Gopala Kakivaya, Richard Hasha, Christopher Kaler
  • Publication number: 20070130478
    Abstract: Reliable end-to-end messaging in which tracking and acknowledgement information are contained in the electronic message that is visible to layers above the transport layer, thereby being independent of what transport protocols, and whether different transport protocols, are used to comununicate between the two end points. Furthermore, acknowledgment messages may identify multiple ranges of sequence numbers corresponding to received electronic messages, thereby permitting further flexibility and completeness in acknowledging received messages.
    Type: Application
    Filed: October 10, 2006
    Publication date: June 7, 2007
    Applicant: Microsoft Corporation
    Inventors: David Langworthy, Christopher Kaler, Luis Cabrera, Patrick Helland, Steven Lucco, John Shewchuk
  • Publication number: 20070121671
    Abstract: Transferring data using peer-to-peer protocols. A method may be practiced, for example, at a computer system in a computer network. The computer network may include one or more networked agents formed into a peer group of peers using at least one peer-to-peer connection. The method includes an act of receiving a computer readable message from a peer-to-peer network. The computer readable message is a centric message enveloped in a peer-to-peer message. The centric message is extracted. The centric message is delivered to an agent configured for centric type communications.
    Type: Application
    Filed: November 30, 2005
    Publication date: May 31, 2007
    Applicant: Microsoft Corporation
    Inventor: Christopher Kaler
  • Publication number: 20070098018
    Abstract: Compression of a portion of a message at above a transport layer in a protocol stack. In the transmission direction, the message is accessed in a form that includes a number of initially parseable components, at least one of which being in compressed form. The message also includes a marker that identifies the component(s) that are compressed. The message is then passed to the transport layer in further preparation for transmission. In the receiving direction, the message is received from the transport layer. The message is initially parsed, and then the compressed component(s) are identified based on the marker.
    Type: Application
    Filed: October 31, 2005
    Publication date: May 3, 2007
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Steven Lucco
  • Publication number: 20070086435
    Abstract: Providing access to devices based on peer membership. A method is described including an act of providing access to a device, such as a hardware peripheral or a software service, to networked agents, such as host computers, operating systems, frameworks, and application code. The method includes an act of forming a peer-to-peer network of one or more members from among the networked agents. The one or more members form a peer group. The peer group does not require a central authority defining peer group membership. Access to a device is provided to the one or more members forming the peer group based on their being included in the peer group.
    Type: Application
    Filed: October 19, 2005
    Publication date: April 19, 2007
    Applicant: Microsoft Corporation
    Inventor: Christopher Kaler
  • Publication number: 20070027851
    Abstract: An adaptively configurable user interface to facilitate a common user experience across two or more databases and an extensible common query structure to allow expansion of a query language to meet the demands of new file types. An exemplary embodiment includes a discovery mechanism for determining query properties of search providers, thereby facilitating adaptive configuring of a user interface to expose the determined query properties. An exemplary embodiment of the user interface includes a portion which remains relatively constant across two or more search providers to reduce user disorientation.
    Type: Application
    Filed: August 1, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Steven Kruy, Christopher Kaler, Kenneth Hardy, Jomo Fisher
  • Publication number: 20070016887
    Abstract: Systems, clients, servers, methods, and computer-readable media of varying scope are described that maintain versions of associations between project management objects such as source cod files, bug data, development issue data, and software specifications. One aspect of the system is that the project association data is stored in a relational database. A link set data structure provides a link to objects that are to be associated together. A link content data structure describes an individual project management object that is linked with other objects in the link set. As a software development project progresses through its life cycle, changes to the associations occur. The changes are captured and stored in the database. Previous versions of the associations are maintained in the project database, thereby allowing a user to query for the state of the project associations as they existed at any particular point in time.
    Type: Application
    Filed: September 11, 2006
    Publication date: January 18, 2007
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Steven Kruy, Kenneth Hardy
  • Publication number: 20060253700
    Abstract: A distributed security system is provided. The distributed security system uses a security policy that is written in a policy language that is transport and security protocol independent as well as independent of cryptographic technologies. This security policy can be expressed using the language to create different security components allowing for greater scalability and flexibility. By abstracting underlying protocols and technologies, multiple environments and platforms can be supported.
    Type: Application
    Filed: October 20, 2005
    Publication date: November 9, 2006
    Applicant: Microsoft Corporation
    Inventors: Giovanni Della-Libera, Christopher Kaler, Scott Konersmann, Butler Lampson, Paul Leach, Bradford Lovering, Steven Lucco, Stephen Millet, Richard Rashid, John Shewchuk
  • Publication number: 20060253699
    Abstract: A distributed security system is provided. The distributed security system uses a security policy that is written in a policy language that is transport and security protocol independent as well as independent of cryptographic technologies. This security policy can be expressed using the language to create different security components allowing for greater scalability and flexibility. By abstracting underlying protocols and technologies, multiple environments and platforms can be supported.
    Type: Application
    Filed: October 20, 2005
    Publication date: November 9, 2006
    Applicant: Microsoft Corporation
    Inventors: Giovanni Della-Libera, Christopher Kaler, Scott Konersmann, Butler Lampson, Paul Leach, Bradford Lovering, Steven Lucco, Stephen Millet, Richard Rashid, John Shewchuk
  • Publication number: 20060150200
    Abstract: A web services namespace pertains to an infrastructure for enabling creation of a wide variety of applications. The infrastructure provides a foundation for building message-based applications of various scale and complexity. The infrastructure or framework provides APIs for basic messaging, secure messaging, reliable messaging and transacted messaging. In some embodiments, the associated APIs are factored into a hierarchy of namespaces in a manner that balances utility, usability, extensibility and versionability.
    Type: Application
    Filed: December 3, 2004
    Publication date: July 6, 2006
    Applicant: Microsoft Corporation
    Inventors: Shy Cohen, Geary Eppley, Douglas Purdy, James Johnson, Stephen Millet, Stephen Swartz, Vijay Gajjala, Aaron Stern, Alexander DeJarnatt, Alfred Lee, Anand Rjagopalan, Anastasios Kasiolas, Chaitanya Upadhyay, Christopher Kaler, Craig Critchley, David Levin, David Driver, David Wortendyke, Douglas Walter, Elliot Waingold, Erik Christensen, Erin Honeycutt, Eugene Shvets, Evgeny Osovetsky, Giovanni Della-Libera, Jesus Ruiz-Scougall, John Doty, Jonathan Wheeler, Kapil Gupta, Kenneth Wolf, Krishnan Srinivasan, Lance Olson, Matthew Tavis, Mauro Ottaviani, Max Feingold, Michael Coulson, Michael Marucheck, Michael Vernal, Michael Dice, Mohamed-Hany Ramadan, Mohammad Makarechian, Natasha Jethanandani, Richard Dievendorff, Richard Hill, Ryan Sturgell, Saurab Nog, Scott Seely, Serge Sverdlov, Siddhartha Puri, Sowmyanarayanan Srinivasan, Stefan Batres, Stefan Pharies, Tirunelveli Vishwanath, Tomasz Janczuk, Uday Hegde, Umesh Madan, Vaithialingam Balayogan, Vipul Modi, Yaniv Pessach, Yasser Shohoud
  • Publication number: 20060133427
    Abstract: A mechanism for sending structured data using a corresponding byte stream. Upon accessing structured data such as a Simple Object Access Protocol (SOAP) envelope, a byte stream is generated. The byte stream includes bytes that represent the structured data, as well as a collection of bytes that represents properties about the byte stream such as, for example, a mode of communication. The byte stream may then be passed to a communication module (e.g., a TCP or Named Pipes module) capable of receiving and transmitting the byte stream.
    Type: Application
    Filed: December 3, 2004
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: Kenneth Wolf, Michael Vernal, Christopher Kaler, Elliot Waingold, Eric Christensen, Jeffrey Schlimmer, Martin Gudgin, Siddhartha Puri
  • Publication number: 20060136930
    Abstract: A generic application server is capable of simultaneously receiving requests, processing requested work, and returning results using multiple, conceptual thread pools. In addition, functions are programmable as state machines. While executing such a function, when a worker thread encounters a potentially blocking condition, the thread issues an asynchronous request for data, a state transition is performed, and the thread is released to do other work. After the blocking condition is relieved, another worker thread is scheduled to advance to the next function state and continue the function. Multiple priority work queues are used to facilitate completion of functions already in progress. In addition, lower-priority complex logic threads can be invoked to process computationally intense logic that may be necessitated by a request. Throttling functions are also implemented, which control the quantity of work accepted into the server and server response time.
    Type: Application
    Filed: January 30, 2006
    Publication date: June 22, 2006
    Applicant: Microsoft Corporation
    Inventors: Christopher Kaler, Steven Kruv