Patents by Inventor Stefan Batres
Stefan Batres 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: 9553929Abstract: An episodic execution of program instances and a coordinated message exchange protocol are combined to achieve eventual consistency in the communication between nodes of a distributed system. Program instances run in episodic loops that are triggered by defined input events and that generate checkpoints. The checkpoints indicate when messages are to be sent from the one instance to another instance or other device. The coordinated message exchange protocol allows the instance to send a message to a receiver, to acknowledge that the message has been received, and to confirm the acknowledgement to the receiver.Type: GrantFiled: March 16, 2015Date of Patent: January 24, 2017Assignee: Microsoft Technology Licensing, LLCInventors: John Taylor, Justin Brown, Kenneth Wolf, Edmund Pinto, Stefan Batres, Nathan Talbert
-
Publication number: 20150189016Abstract: An episodic execution of program instances and a coordinated message exchange protocol are combined to achieve eventual consistency in the communication between nodes of a distributed system. Program instances run in episodic loops that are triggered by defined input events and that generate checkpoints. The checkpoints indicate when messages are to be sent from the one instance to another instance or other device. The coordinated message exchange protocol allows the instance to send a message to a receiver, to acknowledge that the message has been received, and to confirm the acknowledgement to the receiver.Type: ApplicationFiled: March 16, 2015Publication date: July 2, 2015Applicant: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: John Taylor, Justin Brown, Kenneth Wolf, Edmund Pinto, Stefan Batres, Nathan Talbert
-
Publication number: 20150143334Abstract: A rendezvous abstraction that is used to correlate messages within message exchange. The rendezvous abstraction may be instantiated to correlate messages regardless of the type of message exchange pattern, and regardless of the underlying protocols used to communication message. Messages exchanges of primitive protocols are modeled as unilateral message exchanges. The rendezvous abstraction is used to correlate messages of the unilateral message exchange, and serves as an abstraction that is used to represented the rendezvous point where the message of the message exchange pattern are handled. Accordingly, instead of focusing on the protocol-specific mechanisms for correlation, if even available, the application author may simply work with a standard rendezvous abstraction.Type: ApplicationFiled: October 20, 2014Publication date: May 21, 2015Inventors: Edmund Samuel Victor Pinto, Kenneth D. Wolf, Nicholas A. Allen, Stefan Batres, Justin David Brown, Donald F. Box
-
Patent number: 9021503Abstract: The present invention extends to methods, systems, and computer program products for coordinating application sate and communication mediums state. Embodiments of present invention provide a mechanism for a communication medium to provide a view of message content for a message (a peek) to an application along with the communication medium preventing further access to the message (a lock) until the application signals back how to handle the message. Thus, the communication medium indicates that the message is locked for the duration of processing at the application. Indicating that the message is locked significantly reduces the chance of the message being provided to another application (or another consumer of the same application) during the time the application is processing the view of message content.Type: GrantFiled: January 24, 2008Date of Patent: April 28, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Nicholas A. Allen, Stefan Batres, Jean-Emile Elien, John A. Taylor
-
Patent number: 8984531Abstract: An episodic execution of program instances and a coordinated message exchange protocol are combined to achieve eventual consistency in the communication between nodes of a distributed system. Program instances run in episodic loops that are triggered by defined input events and that generate checkpoints. The checkpoints indicate when messages are to be sent from the one instance to another instance or other device. The coordinated message exchange protocol allows the instance to send a message to a receiver, to acknowledge that the message has been received, and to confirm the acknowledgement to the receiver.Type: GrantFiled: June 1, 2011Date of Patent: March 17, 2015Assignee: Microsoft Technology Licensing, LLCInventors: John Taylor, Justin Brown, Kenneth Wolf, Edmund Pinto, Stefan Batres, Nathan Talbert
-
Patent number: 8910182Abstract: A distributed instance system manages instances and communications between the instances. The distributed instance system provides a restricted set of communication methods to the instances. Based on the type of communication method used, the distributed instance system has knowledge of the messages sent by instances and can make decisions on how to handle the messages. When one of the instances involved in a message exchange ends, the host uses its knowledge of the message exchange type to determine whether to drop the message, drop a reply to the message, and/or send an error message to the surviving instance. An instance may create one or more child instances in a tree-like configuration. Status data is passed up the tree from children instances and aggregated in the parent instances. Monitoring data may be generated from the aggregated status data.Type: GrantFiled: May 27, 2011Date of Patent: December 9, 2014Assignee: Microsoft CorporationInventors: Nathan Talbert, John Taylor, Stefan Batres, Justin Brown, Kenneth Wolf, Edmund Pinto
-
Patent number: 8868532Abstract: A rendezvous abstraction that is used to correlate messages within message exchange. The rendezvous abstraction may be instantiated to correlate messages regardless of the type of message exchange pattern, and regardless of the underlying protocols used to communication message. Messages exchanges of primitive protocols are modeled as unilateral message exchanges. The rendezvous abstraction is used to correlate messages of the unilateral message exchange, and serves as an abstraction that is used to represented the rendezvous point where the message of the message exchange pattern are handled. Accordingly, instead of focusing on the protocol-specific mechanisms for correlation, if even available, the application author may simply work with a standard rendezvous abstraction.Type: GrantFiled: August 8, 2008Date of Patent: October 21, 2014Assignee: Microsoft CorporationInventors: Edmund Samuel Victor Pinto, Kenneth D. Wolf, Nicholas A. Allen, Stefan Batres, Justin David Brown
-
Publication number: 20120311609Abstract: An episodic execution of program instances and a coordinated message exchange protocol are combined to achieve eventual consistency in the communication between nodes of a distributed system. Program instances run in episodic loops that are triggered by defined input events and that generate checkpoints. The checkpoints indicate when messages are to be sent from the one instance to another instance or other device. The coordinated message exchange protocol allows the instance to send a message to a receiver, to acknowledge that the message has been received, and to confirm the acknowledgement to the receiver.Type: ApplicationFiled: June 1, 2011Publication date: December 6, 2012Applicant: MICROSOFT CORPORATIONInventors: John Taylor, Justin Brown, Kenneth Wolf, Edmund Pinto, Stefan Batres, Nathan Talbert
-
Publication number: 20120304197Abstract: A distributed instance system manages instances and communications between the instances. The distributed instance system provides a restricted set of communication methods to the instances. Based on the type of communication method used, the distributed instance system has knowledge of the messages sent by instances and can make decisions on how to handle the messages. When one of the instances involved in a message exchange ends, the host uses its knowledge of the message exchange type to determine whether to drop the message, drop a reply to the message, and/or send an error message to the surviving instance. An instance may create one or more child instances in a tree-like configuration. Status data is passed up the tree from children instances and aggregated in the parent instances. Monitoring data may be generated from the aggregated status data.Type: ApplicationFiled: May 27, 2011Publication date: November 29, 2012Applicant: MICROSOFT CORPORATIONInventors: Nathan Talbert, John Taylor, Stefan Batres, Justin Brown, Kenneth Wolf, Edmund Pinto
-
Publication number: 20100036859Abstract: A rendezvous abstraction that is used to correlate messages within message exchange. The rendezvous abstraction may be instantiated to correlate messages regardless of the type of message exchange pattern, and regardless of the underlying protocols used to communication message. Messages exchanges of primitive protocols are modeled as unilateral message exchanges. The rendezvous abstraction is used to correlate messages of the unilateral message exchange, and serves as an abstraction that is used to represented the rendezvous point where the message of the message exchange pattern are handled. Accordingly, instead of focusing on the protocol-specific mechanisms for correlation, if even available, the application author may simply work with a standard rendezvous abstraction.Type: ApplicationFiled: August 8, 2008Publication date: February 11, 2010Applicant: Microsoft CorporationInventors: Edmund Samuel Victor Pinto, Kenneth D. Wolf, Nocholas A. Allen, Stefan Batres, Justin David Brown
-
Publication number: 20090133037Abstract: The present invention extends to methods, systems, and computer program products for coordinating application sate and communication mediums state. Embodiments of present invention provide a mechanism for a communication medium to provide a view of message content for a message (a peek) to an application along with the communication medium preventing further access to the message (a lock) until the application signals back how to handle the message. Thus, the communication medium indicates that the message is locked for the duration of processing at the application. Indicating that the message is locked significantly reduces the chance of the message being provided to another application (or another consumer of the same application) during the time the application is processing the view of message content.Type: ApplicationFiled: January 24, 2008Publication date: May 21, 2009Applicant: MICROSOFT CORPORATIONInventors: Nicholas A. Allen, Stefan Batres, Jean-Emile Elien, John A. Taylor
-
Patent number: 7512957Abstract: 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: GrantFiled: December 3, 2004Date of Patent: March 31, 2009Assignee: Microsoft CorporationInventors: Shy Cohen, Geary L. Eppley, Douglas M. Purdy, James E. Johnson, Stephen J. Millet, Stephen T. Swartz, Vijay K. Gajjala, Aaron Abraham Stern, Alexander Martin DeJarnatt, Alfred M. Lee, IV, Anand Rjagopalan, Anastasios Kasiolas, Chaitanya D. Upadhyay, Christopher G. Kaler, Craig Andrew Critchley, David Edwin Levin, David Owen Driver, David Wortendyke, Douglas A. Walter, Elliot Lee Waingold, Erik Bo Christensen, Erin P. Honeycutt, Eugene Shvets, Evgeny Osovetsky, Giovanni M. Della-Libera, Jesus Ruiz-Scougall, John David Doty, Jonathan T. Wheeler, Kapil Gupta, Kenneth David Wolf, Krishnan Srinivasan, Lance E. Olson, Matthew Thomas Tavis, Mauro Ottaviani, Max Attar Feingold, Michael James Coulson, Michael Jon Marucheck, Michael Steven Vernal, Michael Thomas Dice, Mohamed-Hany Essam Ramadan, Mohammad Makarechian, Natasha Harish Jethanandani, Richard Dievendorff, Richard Douglas Hill, Ryan Thomas Sturgell, Saurab Nog, Scott Christopher Seely, Serge Sverdlov, Siddhartha Puri, Sowmyanarayanan K. Srinivasan, Stefan Batres, Stefan Harrington Pharies, Tirunelveli Vishwanath, Tomasz Janczuk, Uday S. Hegde, Umesh Madan, Vaithialingam B. Balayogan, Vipul Arunkant Modi, Yaniv Pessach, Yasser Shohoud
-
Publication number: 20060206558Abstract: A reliable request-response mechanism allows a requesting computer system and a responding computer system in an established end-to-end connection to send and receive messages in a manner that the responding computer system processes a request as intended by the requesting computer system, such that all the message communication is initiated by the requesting computer system. The requesting computer system and responding computer system can accommodate a wide range of messaging failures, such as intermittent network connections or failure of a transport of SOAP intermediary by resending cached versions of previously sent messages, and by acknowledging receipt of each message received. Cached messages on either computer system are deleted after being appropriately acknowledged.Type: ApplicationFiled: March 8, 2005Publication date: September 14, 2006Applicant: Microsoft CorporationInventors: Shy Cohen, Kirill Gavrylyuk, Ondrej Hrebicek, Richard Hill, Stefan Batres
-
Publication number: 20060150200Abstract: 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: ApplicationFiled: December 3, 2004Publication date: July 6, 2006Applicant: Microsoft CorporationInventors: 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: 20060133278Abstract: The present invention provides for flow and congestion control mechanisms in accordance with a Reliable Message protocol for Web Services (RM-WS). For flow control, one endpoint informs another endpoint of its available buffer size by including buffer size information in response messages. The response messages, typically RM-WS infrastructure messages, are then used to determine an upper limit on the number of messages that can be sent to the acceptor in order to prevent resending messages due to buffer overrun. In the case of congestion control, embodiments provide for increasing the number of in-flight messages until a failure point is found. The last successful rate below the failure point is the closest known point to the optimum point. Example embodiments then reset and try again raising the rate back to the last known good point and fine tuning from there using an algorithm that asymptotes the optimum rate.Type: ApplicationFiled: December 3, 2004Publication date: June 22, 2006Applicant: Microsoft CorporationInventors: Richard Hill, Stefan Batres
-
Publication number: 20060129690Abstract: Example embodiments provide for a binding mechanism between RM protocols and request-response transport protocols (e.g., HTTP) in a one-way message exchange pattern. The present invention leverages existing network characteristics of request-response transport protocols without reconfiguration or deployment of new infrastructure services. A request-response transport model is asymmetrical in nature and provides two data-flows; a request flow and a reply flow. When an initiator is not addressable and/or when communication requires a request-response transport, the present invention allows infrastructure and application messages to be sent on the request flow, while acknowledgments and other infrastructure messages may be sent back across the reply flow of the transport.Type: ApplicationFiled: December 10, 2004Publication date: June 15, 2006Applicant: Microsoft CorporationInventors: Richard Hill, Stefan Batres, Shy Cohen, Michael Dice, Rodney Limprecht
-
Verifying and maintaining connection liveliness in a reliable messaging for web services environment
Publication number: 20060123119Abstract: The present invention monitors the receipt of messages between two endpoints on established sequence session in accordance with a Reliable Messaging protocol for Web Services (RM-WS protocol). The messages received may be application or infrastructure messages (e.g., acknowledgement messages in accordance with the RM-WS protocol). Further, the present invention defines a time period known as the inactivity timeout, which is an upper limit to the time that may pass without receiving a message (either application or infrastructure) on the sequence session. Based on this inactivity timeout period, the present invention calculates time periods for sending idempotent infrastructure messages in accordance with the RM-WS protocol for verifying and maintaining connection liveliness.Type: ApplicationFiled: December 8, 2004Publication date: June 8, 2006Applicant: Microsoft CorporationInventors: Richard Hill, Stefan Batres, Shy Cohen, Michael Moroney, Rodney Limprecht, Margaret Lye -
Publication number: 20050102608Abstract: A method and system for previewing and printing customized pages, such as business forms including invoices and billing statements. An author-created template has HTML and OLE components (controls) placed on a page to define a visual representation of a class of object that is part of a database. The controls merge data from a selected current object of the database into the template, producing a visual representation of the object that is both viewable and printable. An extension to the present invention involves the use of multiple-page HTML to dynamically provide subsequent pages based on retrieved data. For example, if the data retrieved by the controls for an invoice is too large to display on a single invoice page, another HTML page, that is different from the first page of the invoice, would be automatically loaded as a template and the overflow data properly merged therewith.Type: ApplicationFiled: December 10, 2004Publication date: May 12, 2005Applicant: Microsoft CorporationInventor: Stefan Batres