Enhancement of upload and/or download performance based on client and/or server feedback information

US9729675B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9729675-B2
Application numberUS-201414293685-A
CountryUS
Kind codeB2
Filing dateJun 2, 2014
Priority dateAug 19, 2012
Publication dateAug 8, 2017
Grant dateAug 8, 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.

Systems and methods for providing enhancement of upload and/or download performance based on client and/or server feedback information are disclosed. In one embodiment, the disclosed method optimizes upload performance by performing an upload speed test to measure an upload speed associated with each of multiple servers. The method detects a user request to upload a file from a client device to a host server. Based on results from the upload speed test, the method selects one of the multiple servers to upload the file. The multiple servers can include host servers providing cloud-based collaboration and/or storage services, one or more content delivery network servers and/or geographically distributed edge servers.

First claim

Opening claim text (preview).

The invention claimed is: 1. A mobile device for optimizing upload performance, comprising: a memory; a processor disposed in communication with the memory, and configured to execute instructions stored in the memory to: identify different types of routes between a first location and a second location, wherein the first location corresponds to a user device and the second location corresponds to a host server; perform an upload speed test to measure an upload speed associated with the different types of routes from the first location to the second location; detect a user request to upload a file from the first location to the second location; and based on results from the upload speed test, select a route from among the different types of routes to upload the file. 2. The mobile device of claim 1 , wherein the different types of routes comprise of at least two of sending data to an edge server, sending data to one or more content delivery networks, or sending data directly to a local server. 3. The mobile device of claim 1 , wherein the upload speed test is performed periodically in anticipation of a user request to upload the file. 4. The mobile device of claim 1 , wherein the one of the different types of routes selected is a fastest server based on the results from the upload speed test. 5. The mobile device of claim 1 , further configured to: select the one of the different types of routes using a round robin method to upload the file in response to detecting upload speed throttling. 6. The mobile device of claim 1 , wherein the upload speed test is a background process. 7. The mobile device of claim 1 , further configured to report results from the upload speed test to the host server. 8. The mobile device of claim 7 , wherein the reported upload speeds associated with a combination of factors are aggregated along with upload speeds measured by the host server and associated with the same combination of factors. 9. The mobile device of claim 8 , wherein the combination of factors includes first three octets of an Internet Protocol (IP) address associated with the mobile device, operating system and version associated with the mobile device and a browser and version associated with the mobile device. 10. The mobile device of claim 1 , wherein the different types of routes further comprise at least one of a content delivery network server or an edge server that is in geographic proximity of the mobile device. 11. A method for optimizing upload performance, comprising: identifying different types of routes between a first location and a second location, wherein the first location corresponds to a user device and the second location corresponds to a host server; performing an upload speed test to measure an upload speed associated with the different types of routes from the first location to the second location; detecting a user request to upload a file from the first location to the second location; and based on results from the upload speed test, selecting a route from among the different types of routes to upload the file. 12. The method of claim 11 , wherein the different types of routes comprise of at least two of sending data to an edge server, sending data to one or more content delivery networks, or sending data directly to a local server. 13. The method of claim 11 , wherein the upload speed test is performed periodically in anticipation of a user request to upload the file. 14. The method of claim 11 , wherein the one of the different types of routes selected is a fastest server based on the results from the upload speed test. 15. The method of claim 11 , further comprising: in response to detecting upload speed throttling, selecting the one of the different types of routes using a round robin method to upload the file from the user device. 16. The method of claim 11 , wherein the upload speed test is a background process. 17. The method of claim 11 , further comprising: reporting results from the upload speed test to the host server. 18. The method of claim 17 , wherein the reported upload speeds associated with a combination of factors are aggregated along with upload speeds measured by the host server and associated with the same combination of factors. 19. The method of claim 18 , wherein the combination of factors includes first three octets of an Internet Protocol (IP) address associated with the user device, operating system and version associated with the user device and a browser and version associated with the user device. 20. The method of claim 11 , wherein the different types of routes further comprise at least one of a content delivery network server or an edge server that is in geographic proximity of the user device associated with the upload speed test.

Assignees

Inventors

Classifications

  • H04L67/06Primary

    specially adapted for file transfer, e.g. file transfer protocol [FTP] · CPC title

  • Electricity · mapped topic

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • Electricity · mapped topic

  • Electricity · mapped topic

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 US9729675B2 cover?
Systems and methods for providing enhancement of upload and/or download performance based on client and/or server feedback information are disclosed. In one embodiment, the disclosed method optimizes upload performance by performing an upload speed test to measure an upload speed associated with each of multiple servers. The method detects a user request to upload a file from a client device to…
Who is the assignee on this patent?
Box 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 Aug 08 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).