Patents by Inventor David G. Thaler
David G. Thaler 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: 10623497Abstract: The application is directed to a computer-implemented method and apparatus for provisioning an Internet of Things (IoT) device on an IoT network. The application is also directed to a method for managing access to functionality of an IoT device in a networked group.Type: GrantFiled: October 11, 2016Date of Patent: April 14, 2020Assignee: Microsoft Technology Licensing, LLCInventors: David G. Thaler, Justin Allen Hutchings, Kevin M. Kane, Daniel Stelian Mihai, Arvind R. Padole, Pawel R. Winogrodzki, Greg M. Zaverucha
-
Patent number: 10404791Abstract: A load balancer receives a client request from a client device for a connection to an application. The load balancer queries a monitoring server for a list of one or more application servers associated with the application. The monitoring server determines, based on cache state information of the plurality of application servers, the list of one or more application servers. The load balancer establishes a connection on behalf of the client device to one of the application servers.Type: GrantFiled: December 4, 2015Date of Patent: September 3, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Ranjit Puri, Benjamin M. Schultz, David G. Thaler
-
Patent number: 10153959Abstract: Network communication and cost awareness techniques are described. In one or more implementations, functionality is exposed through one or more application programming interfaces (APIs) that is accessible to a plurality of applications of the computing device to perform network communication. Data is returned to one or more of the plurality of applications regarding a cost network used to perform the network communication.Type: GrantFiled: June 8, 2017Date of Patent: December 11, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Suhail Khalid, Alexander Corradini, Michael A. Ziller, Ravi T. Rao, David G. Thaler, Andrew J. Ritz
-
Publication number: 20180103039Abstract: The application is directed to a computer-implemented method and apparatus for provisioning an Internet of Things (IoT) device on an IoT network. The application is also directed to a method for managing access to functionality of an IoT device in a networked group.Type: ApplicationFiled: October 11, 2016Publication date: April 12, 2018Inventors: David G. Thaler, Justin Allen Hutchings, Kevin M. Kane, Daniel Stelian Mihai, Arvind R. Padole, Pawel R. Winogrodzki, Greg M. Zaverucha
-
Patent number: 9939876Abstract: Operating system management of network interface devices is described. In one or more implementations, a determination is made by an operating system that network traffic associated with one or more applications of the computing device has completed. Responsive to the determination, a network interface device is caused to transition to a mode to reduce power consumption of the network interface device by the operating system.Type: GrantFiled: October 9, 2015Date of Patent: April 10, 2018Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Andrew J. Ritz, David G. Thaler, Dmitry A. Anipko, Alexander Malysh
-
Publication number: 20170272341Abstract: Network communication and cost awareness techniques are described. In one or more implementations, functionality is exposed through one or more application programming interfaces (APIs) that is accessible to a plurality of applications of the computing device to perform network communication. Data is returned to one or more of the plurality of applications regarding a cost network used to perform the network communication.Type: ApplicationFiled: June 8, 2017Publication date: September 21, 2017Inventors: Suhail Khalid, Alexander Corradini, Michael A. Ziller, Ravi T. Rao, David G. Thaler, Andrew J. Ritz
-
Patent number: 9736050Abstract: Keep alive management techniques are described. In one or more implementations, a keep alive interval is calculated by an operating system of the computing device. The keep alive interval is used to maintain one or more notification channels between one or more applications of the computing device and a network.Type: GrantFiled: July 22, 2016Date of Patent: August 15, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Osman N. Ertugay, David G. Thaler, Dmitry A. Anipko, Jeroen Vanturennout, Mohammad Saifur Rahman, Poornananda R. Gaddehosur
-
Patent number: 9705844Abstract: Disclosed are an approach form managing and assigning addresses in a connectivity platform that allows for proprietary connectivity modules (Providers) to plug into the operating system. In this disclosure, when a user/application/computing device, connects to another user on another computing device an address is generated for that user. However, because of a limited number of addresses that are available in an address space, it is necessary to ensure that a conflicting address is not present. To ensure this the connectivity platform determines if the address assigned is in conflict with another address associated with users that are located on the other computing devices. If an address is found to be in conflict the connectivity platform reassigns the address until a non-conflicting address is found. If a non-conflicting address cannot be found the connectivity platform blocks the connection between the user and the other user.Type: GrantFiled: December 28, 2012Date of Patent: July 11, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Dmitry Anipko, David G. Thaler, Deepak Bansal, Benjamin M. Schultz, Rajesh Sundaram
-
Patent number: 9680724Abstract: Network communication and cost awareness techniques are described. In one or more implementations, functionality is exposed through one or more application programming interfaces (APIs) that is accessible to a plurality of applications of the computing device to perform network communication. Data is returned to one or more of the plurality of applications regarding a cost network used to perform the network communication.Type: GrantFiled: May 9, 2016Date of Patent: June 13, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Suhail Khalid, Alexander Corradini, Michael A. Ziller, Ravi T. Rao, David G. Thaler, Andrew J. Ritz
-
Publication number: 20170163724Abstract: A load balancer receives a client request from a client device for a connection to an application. The load balancer queries a monitoring server for a list of one or more application servers associated with the application. The monitoring server determines, based on cache state information of the plurality of application servers, the list of one or more application servers. The load balancer establishes a connection on behalf of the client device to one of the application servers.Type: ApplicationFiled: December 4, 2015Publication date: June 8, 2017Inventors: Ranjit Puri, Benjamin M. Schultz, David G. Thaler
-
Patent number: 9596153Abstract: Wake pattern management techniques are described. In one or more implementations, network traffic received by a network interface device of a computing device is monitored and a traffic pattern is recognized in the monitored network traffic. An application of the computing device is identified that corresponds to the recognized traffic pattern and responsive to this identification, at least a portion of the identified application is woken.Type: GrantFiled: February 8, 2016Date of Patent: March 14, 2017Assignee: Microsoft Technology Licensing, LLCInventors: David G. Thaler, Kamalavasan Srinivasan, Andrew J. Ritz, Srinivas Raghu Gatta, Osman N. Ertugay, Poornananda R. Gaddehosur, Dmitry A. Anipko
-
Patent number: 9544213Abstract: Keep alive management techniques are described. In one or more implementations, a keep alive interval is calculated by an operating system of the computing device. The keep alive interval is used to maintain one or more notification channels between one or more applications of the computing device and a network.Type: GrantFiled: October 28, 2014Date of Patent: January 10, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Osman N. Ertugay, David G. Thaler, Dmitry A. Anipko, Jeroen Vanturennout, Mohammad Saifur Rahman, Poornananda R. Gaddehosur
-
Patent number: 9509659Abstract: Disclosed are a connectivity platform that allows for proprietary connectivity modules to plug into the operating system and also allows the operating system users and various existing networking applications in the operating system that are authorized by those providers to use that connectivity via existing APIs without the need for the applications to change or for extra configuration of the application to be performed. In an example disclosed herein, the providers provide NAT or firewall traversal and implement the appropriate transport mechanism. This allows for applications and computing devices to communicate in environments where connectivity is prevented by intermediate systems.Type: GrantFiled: August 29, 2014Date of Patent: November 29, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Dmitry A. Anipko, Deepak Bansal, Aaron J. Schrader, Benjamin M. Schultz, Rajesh Sundaram, David G. Thaler
-
Publication number: 20160330098Abstract: Keep alive management techniques are described. In one or more implementations, a keep alive interval is calculated by an operating system of the computing device. The keep alive interval is used to maintain one or more notification channels between one or more applications of the computing device and a network.Type: ApplicationFiled: July 22, 2016Publication date: November 10, 2016Inventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Osman N. Ertugay, David G. Thaler, Dmitry A. Anipko, Jeroen Vanturennout, Mohammad Saifur Rahman, Poornananda R. Gaddehosur
-
Publication number: 20160254977Abstract: Network communication and cost awareness techniques are described. In one or more implementations, functionality is exposed through one or more application programming interfaces (APIs) that is accessible to a plurality of applications of the computing device to perform network communication. Data is returned to one or more of the plurality of applications regarding a cost network used to perform the network communication.Type: ApplicationFiled: May 9, 2016Publication date: September 1, 2016Inventors: Suhail Khalid, Alexander Corradini, Michael A. Ziller, Ravi T. Rao, David G. Thaler, Andrew J. Ritz
-
Publication number: 20160226727Abstract: Wake pattern management techniques are described. In one or more implementations, network traffic received by a network interface device of a computing device is monitored and a traffic pattern is recognized in the monitored network traffic. An application of the computing device is identified that corresponds to the recognized traffic pattern and responsive to this identification, at least a portion of the identified application is woken.Type: ApplicationFiled: February 8, 2016Publication date: August 4, 2016Inventors: David G. Thaler, Kamalavasan Srinivasan, Andrew J. Ritz, Srinivas Raghu Gatta, Osman N. Ertugay, Poornananda R. Gaddehosur, Dmitry A. Anipko
-
Patent number: 9344335Abstract: Network communication and cost awareness techniques are described. In one or more implementations, functionality is exposed through one or more application programming interfaces (APIs) that is accessible to a plurality of applications of the computing device to perform network communication. Data is returned to one or more of the plurality of applications regarding a cost network used to perform the network communication.Type: GrantFiled: September 9, 2011Date of Patent: May 17, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Suhail Khalid, Alexander Corradini, Michael A. Ziller, Ravi T. Rao, David G. Thaler, Andrew J. Ritz
-
Patent number: 9294379Abstract: Wake pattern management techniques are described. In one or more implementations, network traffic received by a network interface device of a computing device is monitored and a traffic pattern is recognized in the monitored network traffic. An application of the computing device is identified that corresponds to the recognized traffic pattern and responsive to this identification, at least a portion of the identified application is woken.Type: GrantFiled: April 6, 2015Date of Patent: March 22, 2016Assignee: Microsoft Technology Licensing, LLCInventors: David G. Thaler, Kamalavasan Srinivasan, Andrew J. Ritz, Srinivas Raghu Gatta, Osman N. Ertugay, Poornananda R. Gaddehosur, Dmitry A. Anipko
-
Publication number: 20160034018Abstract: Operating system management of network interface devices is described. In one or more implementations, a determination is made by an operating system that network traffic associated with one or more applications of the computing device has completed. Responsive to the determination, a network interface device is caused to transition to a mode to reduce power consumption of the network interface device by the operating system.Type: ApplicationFiled: October 9, 2015Publication date: February 4, 2016Inventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Andrew J. Ritz, David G. Thaler, Dmitry A. Anipko, Alexander Malysh
-
Publication number: 20150312159Abstract: A network interface that connects a computing device to a network may be configured to process incoming packets and determine an action to take with respect to each packet, thus decreasing processing demands on a processor of the computing device. The action may be indicating the packet to an operating system of the computing device immediately, storing the packet in a queue of one or more queues or discarding the packet. When the processor is interrupted, multiple packets aggregated on the network interface may be indicated to the operating system all at once to increase the device's power efficiency. Hardware of the network interface may be programmed to process the packets using filter criteria specified by the operating system based on information gathered by the operating system, such as firewall rules.Type: ApplicationFiled: December 22, 2014Publication date: October 29, 2015Inventors: Osman N. Ertugay, David G. Thaler, Mahender Hari, Andrew J. Ritz, Alireza Dabagh