Peer-to-peer network download optimization

US10158693B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10158693-B2
Application numberUS-201514712881-A
CountryUS
Kind codeB2
Filing dateMay 14, 2015
Priority dateMay 14, 2015
Publication dateDec 18, 2018
Grant dateDec 18, 2018

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.

Distributing an update from a server to multiple endpoint devices that reside on the same local network. The server provides information to each client device identifying all other devices located on the same local network that will also need to receive the update. Each client device sorts the files and begins the process of downloading the files by checking, for each file in sequence, whether another device on the same network has downloaded the file or is currently in the process of downloading. If another device on the same network has completed downloading the file, the device requests the file from the other client device. If another device is currently in the process of downloading, the device places the file at the end of the sequence. If the file has not been downloaded and is not being downloaded, the endpoint device initiates downloading the file from the server.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for content transmission in networked environments, the method comprising: receiving, by an agent executing on a client device, a request to download a set of files from a server to the client device, the client device residing on a local network with a group of peer client devices, the server being connected to the client device via a remote network connection; sorting, by the agent, the set of files to be downloaded by the client device to arrange the set of files in a sequence; iterating, by the agent, through the sequence of files and, for each file in the sequence, determining whether the file has been downloaded by another peer client device in the group and initiating the download of the file from said another peer client device if the file has been downloaded by said another peer client device; determining whether the file is currently being downloaded by another peer client device in the group and changing the file's order in the sequence if the file is currently being downloaded by said another peer client device; and initiating the download of the file from the server to the client device if the file has not been downloaded and is not currently being downloaded by another peer client device in the group; wherein the agent executing on the client device is configured to query other peer client devices on the network during iterating through the sequence of files in order to determine whether the file is currently being downloaded by another peer device in the group. 2. The method of claim 1 , wherein changing the file's order in the sequence comprises: placing the file at the end of the sequence in response to determining that the file is being currently downloaded by said another peer client device, such that the file will be attempted to be downloaded from said another peer client device at a later time. 3. The method of claim 1 , further comprising: indicating to the server that the file is being currently downloaded by the client device. 4. The method of claim 1 , wherein the server is configured to provide to the client device information identifying the group of peer client devices. 5. The method of claim 1 , wherein each client device in the group of peer client devices is configured to download the set of files in a different sequence from remaining client devices in the group. 6. The method of claim 1 , wherein the set of files constitutes an application to be installed on the client device, and wherein the group of peer client devices is instructed to also install the application. 7. The method of claim 6 , wherein the request to download a set of files is initiated by the server that instructs the client device and the group of peer client devices to install said application. 8. A computing device, comprising: at least one processor; and memory including instructions that, when executed by the at least one processor, cause the computing device to: receive, by an agent executing on the computing device, a request to download a set of files from a server to the computing device, the computing device residing on a local network with a group of peer client devices, the server being connected to the computing device via a remote network connection; sort, by the agent, the set of files to be downloaded by the computing device to arrange the set of files in a sequence; iterate, by the agent, through the sequence of files and, for each file in the sequence, determine whether the file has been downloaded by another peer client device in the group and initiate the download of the file from said another peer client device if the file has been downloaded by said another peer client device; determine whether the file is currently being downloaded by another peer client device in the group and change the file's order in the sequence if the file is currently being downloaded by said another peer client device; and initiate the download of the file from the server if the file has not been downloaded and is not currently being downloaded by another peer client device in the group; wherein the agent executing on the computing device is configured to query other peer client devices on the network during iterating through the sequence of files in order to determine whether the file is currently being downloaded by another peer device in the group. 9. The computing device of claim 8 , wherein changing the file's order in the sequence comprises: placing the file at the end of the sequence in response to determining that the file is being currently downloaded by said another peer client device, such that the file will be attempted to be downloaded from said another peer client device at a later time. 10. The computing device of claim 8 , the memory further including instructions that, when executed by the at least one processor, cause the computing device to: indicate to the server that the file is being currently downloaded by the computing device. 11. The computing device of claim 8 , wherein the server is configured to provide to the computing device information identifying the group of peer client devices. 12. The computing device of claim 8 , wherein each client device in the group of peer client devices is configured to download the set of files in a different sequence from remaining client devices in the group. 13. The computing device of claim 8 , wherein the set of files constitutes an application to be installed on the computing device, and wherein the group of peer client devices is instructed to also install the application. 14. The computing device of claim 13 , wherein the request to download a set of files is initiated by the server that instructs the computing device and the group of peer client devices to install said application. 15. A non-transitory computer readable storage medium comprising one or more sequences of instructions, the instructions when executed by one or more processors causing the one or more processors to execute the operations of: receiving, by an agent executing on a client device, a request to download a set of files from a server to the client device, the client device residing on a local network with a group of peer client devices, the server being connected to the client device via a remote network connection; sorting, by the agent, the set of files to be downloaded by the client device to arrange the set of files in a sequence; iterating, by the agent, through the sequence of files and, for each file in the sequence, determining whether the file has been downloaded by another peer client device in the group and initiating the download of the file from said another peer client device if the file has been downloaded by said another peer client device; determining whether the file is currently being downloaded by another peer client device in the group and changing the file's order in the sequence if the file is currently being downloaded by said another peer client device; and initiating the download of the file from the server to the client device if the file has not been downloaded and is not currently being downloaded by another peer client device in the group; wherein the agent executing on the client device is configured to query other peer client devices on the network during iterating through the sequence of files in order to determine whether the file is currently being downloaded by another peer device in the group. 16. The non-transitory computer readable storage medium of claim 15 , wherein changing the file's order in the sequence comprises: placing the file at the end of the seq

Assignees

Inventors

Classifications

  • Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network · CPC title

  • H04L67/06Primary

    specially adapted for file transfer, e.g. file transfer protocol [FTP] · 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 US10158693B2 cover?
Distributing an update from a server to multiple endpoint devices that reside on the same local network. The server provides information to each client device identifying all other devices located on the same local network that will also need to receive the update. Each client device sorts the files and begins the process of downloading the files by checking, for each file in sequence, whether …
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/06. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 18 2018 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).