IP Library Granted Patent US 7,966,416
Granted Patent B2
US 7,966,416 · App. 12/881,082 · Granted Jun 21, 2011

Management of bandwidth allocation in a network server

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,966,416
App. No.
12/881,082
Granted
Jun 21, 2011
Kind
B2
Abstract

A server is connected to a plurality of connected client devices, and is configured to transfer information between any selected one of the client devices and a memory for static storage of information. The method comprises increasing the defined delay period after each execution of a packet transfer cycle, thereby discouraging the transfer of unacceptably large files. The delay period may be initiated, and the amount of increase or other adjustment to the delay period during the transfer cycle may be controlled, by selected a predetermined value from a table, or by calculating a value based on variable input parameters such as the file size, server load, network response time, and number of transfer requests from the client device within a defined prior period.

Claims (35)

1. A method comprising:

receiving, at a computer configured to transmit video files, a request for a video file from a client device;

determining a first portion and a second portion of the video file based on one or more of a current bandwidth load on the computer, a size of the video file, or a network response time, wherein the first portion includes a beginning of the video file;

transmitting packets of the first portion of the video file from the computer to the client device, wherein transmission of respective packets of the first portion of the video file are delayed by a first delay period after transmission of respective previously transmitted packets; and

transmitting packets of the second portion of the video file from the computer to the client device, wherein transmission of respective packets of the second portion of the video file are delayed by a second delay period after transmission of respective previously transmitted packets of the second portion of the video file, wherein the second delay period is longer than the first delay period, such that the first portion of the video file is transmitted at a higher rate than the second portion of the video file.

2. The method of claim 1 , wherein the first delay period is approximately zero seconds.

3. The method of claim 1 , wherein the second delay period changes as the second portion of the video file is transmitted.

4. The method of claim 1 , wherein the second delay period increases as more of the second portion of the video file is transmitted.

5. The method of claim 1 , further comprising:

determining a third portion of the video file that follows the first and second portions of the video file; and

transmitting packets of the third portion of the video file from the computer to the client device, wherein transmission of respective packets of the third portion of the video file are delayed by a third delay period after transmission of respective previously transmitted packets of the third portion of the video file, wherein the third delay period is longer than the second delay period, such that the second portion of the video file is transmitted at a higher rate than the third portion of the video file.

6. A tangible computer-readable medium having instructions stored thereon, wherein the instructions are readable by a computing device in order to cause the computing device to perform operations comprising:

determining a first portion and a second portion of a data file to be transmitted to a remote computing device, wherein the first portion and the second portion are determined based on one or more of a current bandwidth load on the computing device, a size of the data file, or a network response time;

transmitting packets of the first portion of the data file to the remote computing device, wherein transmission of respective packets of the first portion of the data file are delayed by a first delay period after transmission of respective previously transmitted packets; and

transmitting packets of the second portion of the data file to the remote computing device, wherein transmission of respective packets of the second portion of the data file are delayed by a second delay period after transmission of respective previously transmitted packets of the second portion of the data file, wherein the second delay period is longer than the first delay period.

7. The tangible computer-readable medium of claim 6 , wherein said transmitting packets of the second portion begins after substantially all of the packets of the first portion have been transmitted to the remote computing device.

8. The tangible computer-readable medium of claim 6 , wherein an average rate of transfer of the data file is inversely proportional to a size of the data file.

9. The tangible computer-readable medium of claim 6 , wherein the data file comprises one or more video files, audio files, or software files.

10. The tangible computer-readable medium of claim 6 , wherein the computing device comprises one or more servers.

11. A method comprising:

transmitting, from a computing system in network communication with a remote computing device, packets of a first portion of a data file to the remote computing device, wherein transmission of respective packets of the first portion of the data file are delayed by a first delay period after transmission of respective previously transmitted packets; and

after substantially all of the packets of the first portion have been transmitted, transmitting packets of a second portion of the data file from the computing system to the remote computing device, wherein transmission of respective packets of the second portion of the data file are delayed by a second delay period after transmission of respective previously transmitted packets of the second portion of the data file, wherein the second delay period is longer than the first delay period.

12. The method of claim 11 , wherein the first delay period is approximately zero seconds.

13. The method of claim 11 , wherein the second delay period changes as the second portion of the data file is transmitted.

14. The method of claim 11 , wherein the second delay period increases as more of the second portion of the data file is transmitted.

15. The method of claim 11 , wherein the data file comprises one or more video files, audio files, or software files.

16. The method of claim 11 , further comprising:

determining the first portion of the data file based on one or more of a current bandwidth load on the computing system, a size of the data file, a network response time, or a number of transfer requests from the remote computing device within a defined prior period.

17. The method of claim 11 , wherein the first portion of the data file comprises a beginning of a video file.

18. A computing system comprising:

a processor configured to execute software modules stored on a computer readable medium in order to cause the computing system to perform operations comprising:

transmitting, from the computing system to a remote computing device, packets of a first portion of a data file to the remote computing device, wherein transmission of respective packets of the first portion of the data file are delayed by a first delay period after transmission of respective previously transmitted packets; and

after substantially all of the packets of the first portion have been transmitted, transmitting packets of a second portion of the data file from the computing system to the remote computing device, wherein transmission of respective packets of the second portion of the data file are delayed by a second delay period after transmission of respective previously transmitted packets of the second portion of the data file, wherein the second delay period is longer than the first delay period.

19. The computing system of claim 18 , wherein the first delay period is approximately zero seconds.

20. The computing system of claim 18 , wherein at least one of the first and second delay periods is selected based on one or more of a current bandwidth load on the computing system, a size of the data file, a network response time, or a number of transfer requests from the remote computing device within a defined prior period.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2016
From: INTELLECTUAL VENTURES ASSETS 27 LLC
To: PREFERENTIAL NETWORKS IP, LLC
Reel/Frame 040602/0577 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2016
From: INTELLECTUAL VENTURES I LLC
To: INTELLECTUAL VENTURES ASSETS 27 LLC
Reel/Frame 040178/0801 →
MERGER Recorded Jun 18, 2013
From: HOSHIKO LLC
To: INTELLECTUAL VENTURES I LLC
Reel/Frame 030639/0289 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2012
From: SHUSTER, GARY STEPHEN
To: IDEAFLOOD, INC.
Reel/Frame 027730/0497 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 12, 2010
From: IDEAFLOOD, INC.
To: HOSHIKO LLC
Reel/Frame 025124/0088 →