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: 9170636Abstract: 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: June 25, 2014Date of Patent: October 27, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Andrew J. Ritz, David G. Thaler, Dmitry A. Anipko, Alexander Malysh
-
Publication number: 20150215185Abstract: 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: April 6, 2015Publication date: July 30, 2015Inventors: David G. Thaler, Kamalavasan Srinivasan, Andrew J. Ritz, Srinivas Raghu Gatta, Osman N. Ertugay, Poornananda R. Gaddehosur, Dmitry A. Anipko
-
Patent number: 9049660Abstract: 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: September 9, 2011Date of Patent: June 2, 2015Assignee: 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: 20150052373Abstract: 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: October 28, 2014Publication date: February 19, 2015Inventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Osman N. Ertugay, David G. Thaler, Dmitry A. Anipko, Jeroen Vanturennout, Mohammad Saifur Rahman, Poornananda R. Gaddehosur
-
Patent number: 8917742Abstract: 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: GrantFiled: July 13, 2011Date of Patent: December 23, 2014Assignee: Microsoft CorporationInventors: Osman N. Ertugay, David G. Thaler, Mahender Hari, Andrew J. Ritz, Alireza Dabagh
-
Publication number: 20140369358Abstract: 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: ApplicationFiled: August 29, 2014Publication date: December 18, 2014Inventors: Dmitry A. Anipko, Deepak Bansal, Aaron J. Schrader, Benjamin M. Schultz, Rajesh Sundaram, David G. Thaler
-
Patent number: 8892710Abstract: 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: September 9, 2011Date of Patent: November 18, 2014Assignee: Microsoft CorporationInventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Osman N. Ertugay, David G. Thaler, Dmitry A. Anipko, Jeroen Vanturennout, Mohammad Saifur Rahman, Poornananda R. Gaddehosur
-
Publication number: 20140310546Abstract: 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: June 25, 2014Publication date: October 16, 2014Inventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Andrew J. Ritz, David G. Thaler, Dmitry A. Anipko, Alexander Malysh
-
Patent number: 8825883Abstract: 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: February 29, 2008Date of Patent: September 2, 2014Assignee: Microsoft CorporationInventors: Dmitry A. Anipko, Deepak Bansal, Aaron J. Schrader, Benjamin M. Schultz, Rajesh Sundaram, David G. Thaler
-
Patent number: 8806250Abstract: 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: September 9, 2011Date of Patent: August 12, 2014Assignee: Microsoft CorporationInventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Andrew J. Ritz, David G. Thaler, Dmitry A. Anipko, Alexander Malysh
-
Patent number: 8473744Abstract: Disclosed is an authentication mechanism that enables an information recipient to ascertain that the information comes from the sender it purports to be from. This mechanism integrates a private/public key pair with selection by the sender of a portion of its address. The sender derives its address from its public key, for example, by using a hash of the key. The recipient verifies the association between the address and the sender's private key. The recipient may retrieve the key from an insecure resource and know that it has the correct key because only that key can produce the sender's address in the message. The hash may be made larger than the sender-selectable portion of the address. The recipient may cache public key/address pairs and use the cache to detect brute force attacks and to survive denial of service attacks. The mechanism may be used to optimize security negotiation algorithms.Type: GrantFiled: November 1, 2006Date of Patent: June 25, 2013Assignee: Microsoft CorporationInventors: Art Shelest, David G. Thaler, Gregory O'Shea, Michael Roe, Brian D. Zill
-
Publication number: 20130067059Abstract: 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: September 9, 2011Publication date: March 14, 2013Inventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Osman N. Ertugay, David G. Thaler, Dmitry A. Anipko, Jeroen Vanturennout, Mohammad Saifur Rahman, Poornananda R. Gaddehosur
-
Publication number: 20130067060Abstract: 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: September 9, 2011Publication date: March 14, 2013Inventors: David G. Thaler, Kamalavasan Srinivasan, Andrew J. Ritz, Srinivas Raghu Gatta, Osman N. Ertugay, Poornananda R. Gaddehosur, Dmitry A. Anipko
-
Publication number: 20130067061Abstract: 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: September 9, 2011Publication date: March 14, 2013Inventors: Suhail Khalid, Alexander Corradini, Michael A. Ziller, Ravi T. Rao, David G. Thaler, Andrew J. Ritz
-
Publication number: 20130067260Abstract: 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: September 9, 2011Publication date: March 14, 2013Inventors: Srinivas Raghu Gatta, Kamalavasan Srinivasan, Andrew J. Ritz, David G. Thaler, Dmitry A. Anipko, Alexander Malysh
-
Patent number: 8364847Abstract: 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: March 17, 2008Date of Patent: January 29, 2013Assignee: Microsoft CorporationInventors: Dmitry Anipko, David G. Thaler, Deepak Bansal, Benjamin M. Schultz, Rajesh Sundaram
-
Publication number: 20130019042Abstract: 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: July 13, 2011Publication date: January 17, 2013Applicant: Microsoft CorporationInventors: Osman N. Ertugay, David G. Thaler, Mahender Hari, Andrew J. Ritz, Alireza Dabagh
-
Patent number: 8255546Abstract: An application program interface (API) for sending and receiving endpoint registration data and peer-to-peer network cloud data has a registration call for adding endpoint data to a peer-to-peer network. The API may receive explicit data regarding address information or may be instructed to select and maintain suitable address information as the topology of the peer-to-peer network changes. Blocking and non-blocking calls are exposed for retrieving information peer-to-peer network endpoint data.Type: GrantFiled: September 30, 2005Date of Patent: August 28, 2012Assignee: Microsoft CorporationInventors: Noah Horton, David G. Thaler, Brian R. Lieuallen, Upshur Warren Parks, III, Jeremy L. Dewey, Todd R. Manion, Scott A. Senkeresty
-
Patent number: 8166538Abstract: A unified architecture for enabling remote access to a network is provided. The network may comprise, as examples, a virtual private network (VPN) and/or a peer-to-peer network. In one embodiment, the architecture includes components installed on a client device/node and a gateway/supernode. Components implemented on the client device may facilitate access in a manner similar to that of a traditional VPN, while components on the gateway may facilitate access in a manner similar to an application proxy. Communication between the client device and gateway may occur, as an example, via a Secure Sockets Layer (SSL) communication protocol.Type: GrantFiled: July 8, 2005Date of Patent: April 24, 2012Assignee: Microsoft CorporationInventors: Abolade Gbadegesin, Arvind M. Murching, David G. Thaler, Henry L. Sanders, Narendra C. Gidwani, Paul G. Mayfield
-
Patent number: 8165013Abstract: A networked computer system in which a gateway is selected for efficient transmission over a network using a layered protocol. When a transmission over the network fails, information at multiple protocol layers indicates the usability of the gateway through which the failed transmission was made. In a layered protocol with an application or connection layer, a path layer and a link layer, information at the link layer is used to determine whether retransmission through the same gateway should be attempted. Information at the path layer is used to determine whether the gateway is faulty. Information from the application or connection layer is used to determine whether responses are received to transmissions. These determinations are used in setting the status of the gateway, which in turn is used to prioritize gateways when selecting a gateway for future transmissions.Type: GrantFiled: April 14, 2006Date of Patent: April 24, 2012Assignee: Microsoft CorporationInventors: Abolade Gbadegesin, Amit Aggarwal, David G. Thaler