Patents by Inventor Jonathan A. Silvera

Jonathan A. Silvera 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: 10313399
    Abstract: Techniques described herein enable a client to store information indicating whether various hosts (e.g., servers, web domains) support a preferred security protocol, such as a False Start-modified TLS or SSL protocol. The client may then use this information to dynamically determine whether to use the preferred protocol when connecting to a particular host. When the client attempts a handshake to establish a secure connection with a host for the first time, the client does so using the preferred protocol. If the handshake fails, the client locally stores domain or other identifying information for the host so that the client may employ a non-preferred protocol in subsequent connection attempts. Thus, a client may avoid performance degradation caused by attempting a preferred-protocol connection with a host that does not support the preferred protocol. Stored information may include a time stamp enable periodic checks for host capability updates.
    Type: Grant
    Filed: December 28, 2016
    Date of Patent: June 4, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Matthew R. Cox, Ivan D. Pashov, Billy Anders, Jonathan A. Silvera
  • Publication number: 20180152484
    Abstract: Techniques described herein enable a client to store information indicating whether various hosts (e.g., servers, web domains) support a preferred security protocol, such as a False Start-modified TLS or SSL protocol. The client may then use this information to dynamically determine whether to use the preferred protocol when connecting to a particular host. When the client attempts a handshake to establish a secure connection with a host for the first time, the client does so using the preferred protocol. If the handshake fails, the client locally stores domain or other identifying information for the host so that the client may employ a non-preferred protocol in subsequent connection attempts. Thus, a client may avoid performance degradation caused by attempting a preferred-protocol connection with a host that does not support the preferred protocol. Stored information may include a time stamp enable periodic checks for host capability updates.
    Type: Application
    Filed: December 28, 2016
    Publication date: May 31, 2018
    Inventors: Matthew R. Cox, Ivan D. Pashov, Billy Anders, Jonathan A. Silvera
  • Patent number: 9602626
    Abstract: Described are embodiments directed to enabling the retrieval of content from a peer-to-peer network. In embodiments, a client requesting content from a server can indicate in an HTTP request that it is capable of retrieving content from a peer-to-peer network. When the server receives the HTTP request it will recognize the indication that the client is capable of retrieving content from a peer-to-peer network and may send content information instead of sending the requested content. The content information allows the client to retrieve the content from the peer-to-peer network.
    Type: Grant
    Filed: October 14, 2013
    Date of Patent: March 21, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Anish V. Desai, Jonathan A. Silvera
  • Patent number: 9537899
    Abstract: Techniques described herein enable a client to store information indicating whether various hosts (e.g., servers, web domains) support a preferred security protocol, such as a False Start-modified TLS or SSL protocol. The client may then use this information to dynamically determine whether to use the preferred protocol when connecting to a particular host. When the client attempts a handshake to establish a secure connection with a host for the first time, the client does so using the preferred protocol. If the handshake fails, the client locally stores domain or other identifying information for the host so that the client may employ a non-preferred protocol in subsequent connection attempts. Thus, a client may avoid performance degradation caused by attempting a preferred-protocol connection with a host that does not support the preferred protocol. Stored information may include a time stamp enable periodic checks for host capability updates.
    Type: Grant
    Filed: February 29, 2012
    Date of Patent: January 3, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Matthew R. Cox, Ivan D. Pashov, Billy Anders, Jonathan A. Silvera
  • Patent number: 9449113
    Abstract: Browser storage management techniques are described. In one or more implementations, inputs are received at a computing device that specify maximum aggregate sizes of application and database caches, respectively, of browser storage to be used to locally store data at the computing device. For example, the inputs may be provided using a policy, by an administrator of the computing device, and so on. The maximum aggregate sizes are set of application and database caches, respectively, of browser storage at the computing device to the sizes specified by the inputs.
    Type: Grant
    Filed: June 28, 2011
    Date of Patent: September 20, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Israel Hilerio, David J. Sheldon, David Vaughn Winkler, Matthew R. Cox, Jonathan A. Silvera, Ivan D. Pashov, Martin A. Chisholm, Dany Joly, Victor Ngo, Adam U. Herchenroether, Katerina V. Sedova, Kedar Sanjeev Hirve, Karen Elizabeth Parker Anderson
  • Patent number: 9219710
    Abstract: A computer can be configured to provide seamless access to a proxy server by, upon connection to a computer network, determining whether a proxy server using authentication is connected to the computer network, and then prompting a user of the computer to enter authentication information for that proxy server. This authentication information for the proxy server then can be stored in a manner accessible by applications on the computer to use the authentication information to connection with requests by the applications to access the second computer network. For example, the operating system can store the authentication information. It also can include a module that processes all requests from applications that access the proxy server, and then includes in such requests the stored authentication information.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: December 22, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Eric Loewenthal, Ivan Pashov, Jonathan Silvera, Matthew Cox, Paul Trunley, Ziyan Zhou
  • Patent number: 9158331
    Abstract: Various embodiments enable on-demand scaling of a timer wheel. Some embodiments dynamically start and stop a timer wheel based, at least in part, on whether the timer wheel has any associated active timers. In some cases, the timer wheel is suspended when all associated active timers have been serviced. Alternately or additionally, the timer wheel is re-activated upon associating one or more active timers in need of service to the timer wheel. Various embodiments enable addition and removal of timer(s) to the timer wheel and/or various time slots associated with the timer wheel without using a global lock associated with the timer wheel.
    Type: Grant
    Filed: March 28, 2013
    Date of Patent: October 13, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ziyan Zhou, Ivan D. Pashov, Jonathan A. Silvera, Matthew R. Cox
  • Patent number: 9021157
    Abstract: Various embodiments initialize a communication link associated with data transfer to a connected state between participants in the communication link. In some cases, the communication link is paired with a first Input/Output (I/O) completion port effective to enable the data transfer. Some embodiments disassociate the communication link with the first I/O completion port and re-initialize the communication link while retaining the connected state. Alternately or additionally, the communication link is paired with at least a second I/O completion port. In some cases, the second I/O completion port utilizes an I/O model that differs from an I/O model associated with the first I/O completion port. Alternately or additionally, the communication link can be reconfigured to follow a IO model that does not utilize an IO completion port at all.
    Type: Grant
    Filed: March 28, 2013
    Date of Patent: April 28, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Matthew R. Cox, Ivan D. Pashov, Jonathan A. Silvera, Paul Sliwowicz
  • Publication number: 20140297903
    Abstract: Various embodiments initialize a communication link associated with data transfer to a connected state between participants in the communication link. In some cases, the communication link is paired with a first Input/Output (I/O) completion port effective to enable the data transfer. Some embodiments disassociate the communication link with the first I/O completion port and re-initialize the communication link while retaining the connected state. Alternately or additionally, the communication link is paired with at least a second I/O completion port. In some cases, the second I/O completion port utilizes an I/O model that differs from an I/O model associated with the first I/O completion port. Alternately or additionally, the communication link can be reconfigured to follow a IO model that does not utilize an IO completion port at all.
    Type: Application
    Filed: March 28, 2013
    Publication date: October 2, 2014
    Applicant: Microsoft Corporation
    Inventors: Matthew R. Cox, Ivan D. Pashov, Jonathan A. Silvera, Paul Sliwowicz
  • Publication number: 20140297818
    Abstract: Various embodiments enable parallel querying of multiple network interfaces for communication configuration information. Returned communication configuration information can be used by a client device to enable communication with another computing device. In some embodiments, multiple responses to the parallel queries are received. Alternately or additionally, a response from a network interface can be determined through expiration of a user-configured timeout and/or a protocol configured timeout. Selection of a network interface from the multiple responses can be based, at least in part, on prioritizing the responding network interfaces using an adaptive selection algorithm.
    Type: Application
    Filed: March 29, 2013
    Publication date: October 2, 2014
    Applicant: Microsoft Corporation
    Inventors: Eric N. Loewenthal, Ivan D. Pashov, Jonathan A. Silvera
  • Publication number: 20140298073
    Abstract: Various embodiments enable on-demand scaling of a timer wheel. Some embodiments dynamically start and stop a timer wheel based, at least in part, on whether the timer wheel has any associated active timers. In some cases, the timer wheel is suspended when all associated active timers have been serviced. Alternately or additionally, the timer wheel is re-activated upon associating one or more active timers in need of service to the timer wheel. Various embodiments enable addition and removal of timer(s) to the timer wheel and/or various time slots associated with the timer wheel without using a global lock associated with the timer wheel.
    Type: Application
    Filed: March 28, 2013
    Publication date: October 2, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Ziyan Zhou, Ivan D. Pashov, Jonathan A. Silvera, Matthew R. Cox
  • Publication number: 20140283001
    Abstract: A computer can be configured to provide seamless access to a proxy server by, upon connection to a computer network, determining whether a proxy server using authentication is connected to the computer network, and then prompting a user of the computer to enter authentication information for that proxy server. This authentication information for the proxy server then can be stored in a manner accessible by applications on the computer to use the authentication information to connection with requests by the applications to access the second computer network. For example, the operating system can store the authentication information. It also can include a module that processes all requests from applications that access the proxy server, and then includes in such requests the stored authentication information.
    Type: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Eric Loewenthal, Ivan Pashov, Jonathan Silvera, Matthew Cox, Paul Trunley, Ziyan Zhou
  • Patent number: 8769000
    Abstract: Adaptive network communication techniques are described. In one or more implementations, a determination is made by a client device that a request, which is to be communicated to a content provider via a network, is for content that is accessible via the content provider upon authentication of credentials transmitted to the content provider from the client device. Responsive to the determination, an initial communication is formed by the client device for receipt by the content provider that includes the credentials without waiting for the content provider to request the credentials from the client device.
    Type: Grant
    Filed: February 1, 2011
    Date of Patent: July 1, 2014
    Assignee: Microsoft Corporation
    Inventors: Jonathan A. Silvera, Ivan D. Pashov, Paul Trunley
  • Publication number: 20140047077
    Abstract: Described are embodiments directed to enabling the retrieval of content from a peer-to-peer network. In embodiments, a client requesting content from a server can indicate in an HTTP request that it is capable of retrieving content from a peer-to-peer network. When the server receives the HTTP request it will recognize the indication that the client is capable of retrieving content from a peer-to-peer network and may send content information instead of sending the requested content. The content information allows the client to retrieve the content from the peer-to-peer network.
    Type: Application
    Filed: October 14, 2013
    Publication date: February 13, 2014
    Applicant: Microsoft Corporation
    Inventors: Anish V. Desai, Jonathan A. Silvera
  • Publication number: 20140013001
    Abstract: In one or more embodiments, clients in various networks can proactively probe multiple proxies that are returned to the client. Clients can sort the proxies based on various parameters, such as connection time parameters as well as other parameters, and utilize the fastest or one of the fastest proxies available, or select a proxy based on other parameters that indicate the proxy is reliable. In this manner, slow or unreliable proxies can be avoided.
    Type: Application
    Filed: July 6, 2012
    Publication date: January 9, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Matthew R. Cox, Eric N. Loewenthal, Ritika Virmani, Ivan D. Pashov, Jonathan A. Silvera, Rishi Maker
  • Patent number: 8583813
    Abstract: Described are embodiments directed to enabling the retrieval of content from a peer-to-peer network. In embodiments, a client requesting content from a server can indicate in an HTTP request that it is capable of retrieving content from a peer-to-peer network. When the server receives the HTTP request it will recognize the indication that the client is capable of retrieving content from a peer-to-peer network and may send content information instead of sending the requested content. The content information allows the client to retrieve the content from the peer-to-peer network.
    Type: Grant
    Filed: August 15, 2012
    Date of Patent: November 12, 2013
    Assignee: Microsoft Corporation
    Inventors: Anish V. Desai, Jonathan A. Silvera
  • Publication number: 20130227388
    Abstract: A client application, such as an HTTP client, stores script profile data associated with JavaScript compilation as metadata in a cache, such as an HTTP indexed cache, for a given entry. Accessing the indexed data can be performed much faster without incurring additional disk input/output operations, thus facilitating compilation activities. In addition, an identifier such as the script URL can be used to efficiently enable compilation across websites that commonly utilize the same JavaScript.
    Type: Application
    Filed: February 28, 2012
    Publication date: August 29, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Paul Trunley, Ivan D. Pashov, M. David Fields, JR., Edward J. Praitis, Jonathan A. Silvera
  • Publication number: 20130227272
    Abstract: Techniques described herein enable a client to store information indicating whether various hosts (e.g., servers, web domains) support a preferred security protocol, such as a False Start-modified TLS or SSL protocol. The client may then use this information to dynamically determine whether to use the preferred protocol when connecting to a particular host. When the client attempts a handshake to establish a secure connection with a host for the first time, the client does so using the preferred protocol. If the handshake fails, the client locally stores domain or other identifying information for the host so that the client may employ a non-preferred protocol in subsequent connection attempts. Thus, a client may avoid performance degradation caused by attempting a preferred-protocol connection with a host that does not support the preferred protocol. Stored information may include a time stamp enable periodic checks for host capability updates.
    Type: Application
    Filed: February 29, 2012
    Publication date: August 29, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Matthew R. Cox, Ivan D. Pashov, Billy Anders, Jonathan A. Silvera
  • Publication number: 20130007371
    Abstract: Browser storage management techniques are described. In one or more implementations, inputs are received at a computing device that specify maximum aggregate sizes of application and database caches, respectively, of browser storage to be used to locally store data at the computing device. For example, the inputs may be provided using a policy, by an administrator of the computing device, and so on. The maximum aggregate sizes are set of application and database caches, respectively, of browser storage at the computing device to the sizes specified by the inputs.
    Type: Application
    Filed: June 28, 2011
    Publication date: January 3, 2013
    Inventors: Israel Hilerio, David J. Sheldon, David Vaughn Winkler, Matthew R. Cox, Jonathan A. Silvera, Ivan D. Pashov, Martin A. Chisholm, Dany Joly, Victor Ngo, Adam U. Herchenroether, Katerina V. Sedova, Kedar Sanjeev Hirve, Karen Elizabeth Parker Anderson
  • Patent number: 8347356
    Abstract: A method is presented for selecting an HTTP authentication scheme at a client computer. A request message is sent from the client computer to a server computer to access information on the server computer. In response, the client computer receives a response message from the server computer. The response message includes an HTTP header that includes a first scheme identifier, indicating a first HTTP authentication scheme and a second scheme identifier, indicating a second HTTP authentication scheme. If the client computer does not support the second HTTP authentication scheme, the client computer uses the first HTTP authentication scheme when sending another HTTP message to the server computer. If the client computer supports the second HTTP authentication scheme, the client computer uses the second HTTP authentication scheme when sending another HTTP message to the server computer.
    Type: Grant
    Filed: March 31, 2009
    Date of Patent: January 1, 2013
    Assignee: Microsoft Corporation
    Inventors: Richard Keith James, Jonathan Silvera