Enabling peer-to-peer content retrieval in HTTP

US9602626B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9602626-B2
Application numberUS-201314052900-A
CountryUS
Kind codeB2
Filing dateOct 14, 2013
Priority dateJul 17, 2009
Publication dateMar 21, 2017
Grant dateMar 21, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

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.

First claim

Opening claim text (preview).

We claim: 1. A computer implemented method of retrieving information from a server computer connected to a network, the method comprising: generating by a client computer a first request for content stored on the server computer; including in the first request an indication that the client computer is capable of retrieving the content from a peer computer in a peer-to-peer network; sending the first request to the server; receiving, from the server, a first response that does not include the content; based on the first response, generating a second request for the content, wherein the second request repeats the first request without the indication that the client computer is capable of retrieving the content from a peer computer in the peer-to-peer network; sending the second request to the server; and receiving a second response from the server with the content. 2. The method of claim 1 , wherein the first request and second request are generated by a web browser running on the client computer. 3. The method of claim 1 , wherein the first request and the second request are HTTP requests. 4. The method of claim 3 , wherein the indication of the client computer being capable of retrieving the content from a peer computer is included in a header field of the first request. 5. The method of claim 3 , wherein the first response includes content information about the content, wherein the content information allows the client computer to retrieve the content from the peer computer. 6. The method of claim 5 , wherein the content information comprises a hash value calculated using at least a portion of the content as input. 7. The method of claim 1 , wherein the content information comprises hashes of segments and blocks of the requested content. 8. The method of claim 1 , wherein the content information is sent within a data structure that includes additional information. 9. The method of claim 1 , further comprising: sending a hash key to enable the client computer to hash the content information. 10. The method of claim 1 , further comprising: prior to sending the second request to the server, generating and sending a third request to the peer computer. 11. One or more computer storage devices storing computer executable instructions for performing a method of processing a request from a client computer, the method comprising: generating by a client computer a first request for content stored on the server computer; including in the first request an indication that the client computer is capable of retrieving the content from a peer computer in a peer-to-peer network; sending the first request to the server; receiving, from the server, a first response that does not include the content; based on the first response, generating a second request for the content, wherein the second request repeats the first request without the indication that the client computer is capable of retrieving the content from a peer computer in the peer-to-peer network; sending the second request to the server; and receiving a second response from the server with the content. 12. The one or more computer storage devices of claim 11 , wherein the first request and second request are generated by a web browser running on the client computer. 13. The one or more computer storage devices of claim 11 , wherein the first request and the second request are HTTP requests. 14. The one or more computer storage devices of claim 13 , wherein the indication of the client computer being capable of retrieving the content from a peer computer is included in a header field of the first request. 15. The one or more computer storage devices of claim 11 , wherein the first response includes content information about the content, wherein the content information allows the client computer to retrieve the content from the peer computer. 16. The one or more computer storage devices of claim 15 , wherein the content information comprises a hash value calculated using at least a portion of the content as input. 17. A computer system for processing a request for content received from a client computer, the system comprising: one or more processors; one or more computer readable storage media, operatively connected to the one or more processors and storing computer executable instructions that, when executed by the one or more processors, perform a method comprising: receiving from the client computer a first request for content, wherein the first request comprises an indication that the client computer is capable of retrieving the content from a peer computer in a peer-to-peer network; determining that the first request includes the indication that the client computer is capable of retrieving the content from a peer computer in a peer-to-peer network; in response to determining that the first request includes the indication that the client computer is capable of retrieving the content from the peer computer, generating a response that does not include the content; sending the response to the client computer; receiving a second request for the content, wherein the second request is based on the response and repeats the first request without the indication that the client computer is capable of retrieving the content from a peer computer in the peer-to-peer network; and determining that the second request does not include the indication that the client computer is capable of retrieving the content from a peer computer in the peer-to-peer network; in response to determining that the second request does not include the indication, sending the content to the client computer. 18. The system of claim 17 , wherein the response comprises content information about the content. 19. The system of claim 18 , wherein the content information allows a client to retrieve the content from the peer computer. 20. The system of claim 18 , further comprising: authenticating the client computer prior to sending the content.

Assignees

Inventors

Classifications

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

  • Electricity · mapped topic

  • H04L67/104Primary

    Peer-to-peer [P2P] networks · CPC title

  • H04L67/32Primary

    Electricity · mapped topic

  • wherein the data content is protected, e.g. by encrypting or encapsulating the payload · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9602626B2 cover?
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-…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification H04L67/104. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 21 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).