IP Library Granted Patent US 8,171,113
Granted Patent B2
US 8,171,113 · App. 13/161,063 · Granted May 1, 2012

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 8,171,113
App. No.
13/161,063
Granted
May 1, 2012
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 (37)

1. A method comprising:

receiving from a requesting computing device a request for transmission of a data file;

transmitting a segment of the data file to the requesting computing device;

determining, by a computing system, a delay period 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 requesting computing device within a defined prior period;

after the determined delay period, transmitting a subsequent segment of the data file; and

repeating said determining and transmitting until all segments of the data file have been transmitted to the requesting computing device.

2. The method of claim 1 , wherein each segment is a data packet.

3. The method of claim 1 , wherein each segment comprises a plurality of data packets.

4. The method of claim 1 , wherein the delay period between transmission of respective segments of the data file varies in response to said determining the delay period that is performed prior to transmission of respective segments of the data file.

5. The method of claim 4 , wherein the delay period between transmission of segments of a latter portion of the data file are lower than the delay period between transmission of segments of an earlier portion of the data file in response to said determining.

6. The method of claim 4 , wherein the delay period between transmission of segments of a latter portion of the data file are higher than the delay period between transmission of segments of an earlier portion of the data file in response to said determining.

7. The method of claim 1 , wherein said determining the delay period comprises determining an adjustment to a previously determined delay period.

8. The method of claim 1 , wherein said determining the delay period comprises calculating the delay period without considering previously determined delay periods.

9. The method of claim 1 , wherein the determined delay period is zero for at least a portion of the segments of the data file.

10. The method of claim 1 , wherein said determining comprises evaluating an algorithm having factors indicative of one or more of the current bandwidth load on the computing system, the size of the data file, a size of segments, the network response time, or the number of transfer requests from the requesting computing device within the defined prior period.

11. The method of claim 1 , further comprising:

setting an initial delay period based on one or more of the size of the data file, a type of the data file, the network response time, or the number of transfer requests from the requesting computing device within the defined prior period, wherein transmission of segments of at least a first portion of the data file are delayed by the initial delay period after transmission of respective previously transmitted segments of the at least a first portion of the data file.

12. A computing system comprising:

a memory storing instructions configured for execution by the computing system in order to:

receive from a requesting computing device a request for transmission of a data file;

transmit a segment of the data file to the requesting computing device;

determine a delay period 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 requesting computing device within a defined prior period;

after the determined delay period, transmit a subsequent segment of the data file; and

repeat said determining and transmitting until all segments of the data file have been transmitted to the requesting computing device.

13. The computing system of claim 12 , wherein each segment is a data packet.

14. The computing system of claim 12 , wherein each segment comprises a plurality of data packets.

15. The computing system of claim 12 , wherein the delay period is determined as an adjustment to a previously determined delay period.

16. The computing system of claim 12 , wherein the delay period is determined without considering previously determined delay periods.

17. The computing system of claim 12 , wherein the determined delay period is zero for at least a portion of the segments of the data file.

18. A computer-readable medium encoded with instructions thereon, wherein the instructions are readable by a computing system in order to cause the computing system to perform operations comprising:

receiving from a requesting computing device a request for transmission of a data file;

transmitting a segment of the data file to the requesting computing device;

determining a delay period 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 requesting computing device within a defined prior period;

after the determined delay period, transmitting a subsequent segment of the data file; and

repeating said determining and transmitting until all segments of the data file have been transmitted to the requesting computing device.

19. The computer-readable medium of claim 18 , wherein the determined delay period is zero for at least a portion of the segments of the data file.

20. The computer-readable medium of claim 18 , wherein said determining comprises evaluating an algorithm having factors indicative of one or more of the current bandwidth load on the computing system, the size of the data file, a size of segments, the network response time, or the number of transfer requests from the requesting computing device within the 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 Jun 17, 2011
From: IDEAFLOOD, INC.
To: HOSHIKO LLC
Reel/Frame 026504/0247 →