← Back to Patent Explorer
US5878228A Expired / Lapsed US ⏱️ 0.0 years remaining

Data transfer server with time slots scheduling base on transfer rate and predetermined data

Assignee: RPX Clearinghouse LLC
•
Filing: 1996-11-15
•
Granted: 1999-03-02
•
Expires: 2016-11-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract This invention relates to a method and protocol to enable a simple, reliable and highly scaleable data transfer facility in a digital data network. A connectionless, unacknowledged data transfer protocol minimizes resource utilization at a data server and is combined with source rate control to reduce congestion in the intervening network. The data transfer server implementing the protocol, operates by defining a circular ordering of individual scheduling timeslots having zero or more download records. The server selects in sequence, at a predetermined rate, the individual scheduling timeslots, and services, responsive to the selected timeslot having at least one download record, each record therein according to parameters in that record. Servicing includes (I) sending, to the destination address, a download message which includes a block of data extracted from the identified data, based on the remaining data information; (ii) updating the remaining data information to reflect the block of data that was sent; and (iii) resheduling, based on the transfer rate and the predetermined rate, the download record into an appropriate one of the scheduling timeslots.

Inventors

  • 👤 Scott Edward Miller
  • 👤 David Michael Alexander

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 16:49
CPC Classifications
H; H04; H04L; H04L1/00; H04L1/12; H04L1/16; H04L1/18; H04L1/1867; H04L1/1887; H04L9/00; H04L9/40; H04L67/00; H04L67/01; H04L67/04; H04L69/00; H04L69/28; H04L69/30; H04L69/32; H04L69/322; H04L69/329

Claims Analysis

Total Claims: 20
Claim 1
Independent Claim 176 words
A method of operating a data transfer server, comprising the steps of: defining a circular ordering of individual scheduling timeslots having zero or more download records, each of which includes information of remaining data to transfer from identified data, a transfer rate and a destination address; selecting in sequence, at a predetermined rate, the individual scheduling timeslots; and servicing, responsive to the selected timeslot having at least one download record, each record therein by: (i) sending, to the destination address, a download message which includes a block of data extracted from the identified data, based on the remaining data information; (ii) updating the remaining data information to reflect the block of data that was sent; and (iii) resheduling, based on the transfer rate and the predetermined rate, the download record into an appropriate one of the scheduling timeslots; whereby, in the servicing of each download record, successive download messages having respective blocks of data extracted from the identified data are sent at a rate less than or substantially equal to the transfer rate in that record.
Claim 2
Independent Claim 176 words
A method of operating a data transfer server, comprising the steps of: defining a circular ordering of individual scheduling timeslots having zero or more download records, each of which includes information of remaining data to transfer from identified data, a transfer rate and a destination address; selecting in sequence, at a predetermined rate, the individual scheduling timeslots; and servicing, responsive to the selected timeslot having at least one download record, each record therein by: (i) sending, to the destination address, a download message which includes a block of data extracted from the identified data, based on the remaining data information; (ii) updating the remaining data information to reflect the block of data that was sent; and (iii) resheduling, based on the transfer rate and the predetermined rate, the download record into an appropriate one of the scheduling timeslots; whereby, in the servicing of each download record, successive download messages having respective blocks of data extracted from the identified data are sent at a rate less than or substantially equal to the transfer rate in that record.
Claim 3
Dependent Claim 40 words
A method as claimed in claim 1, wherein the circular ordering of individual scheduling timeslots is a circular queue of the scheduling timeslots, each of which is data structure formatted as a list of the zero or more download records.
Claim 4
Dependent Claim 51 words
A method as claimed in claim 1, comprising the steps of: receiving a download request message which references the identified data and specifies the transfer rate; generating, responsive to confirming the identified data is available, a corresponding download record; and inserting the corresponding download record into one of the scheduling timeslots.
Claim 5
Dependent Claim 54 words
A method as claimed in claim 3, wherein the identified data is available on a storage device; and further comprising: loading the identified data from the storage device into a cache memory; and extracting, in the servicing of the corresponding download record, each block of data from the identified data in the cache memory.
Claim 6
Dependent Claim 57 words
A method as claimed in claim 4, comprising the step of: generating a unique edition number associated with the identified data; storing the edition number with the identified data loaded into the cache memory; and providing the edition number in each download message whose block of data is extracted from the identified data in the cache memory.
Claim 7
Dependent Claim 26 words
A method as claimed in claim 5, comprising providing in each download message an indication of position for its block of data within the identified data.
Claim 8
Dependent Claim 55 words
A method as claimed in claim 1, wherein the step of rescheduling the download record includes: discarding, responsive to the remaining data information indicating all the identified data has been transferred, the download record; and inserting, responsive to the remaining data information indicating otherwise, the download record in the appropriate one of the scheduling timeslots.
Claim 9
Dependent Claim 28 words
A method as claimed in claim 3, wherein the download request message specifies the transfer rate by indicating a minimum interval period between sending the successive download messages.
Claim 10
Dependent Claim 63 words
A method as claimed in claim 3, wherein the download request message specifies a transfer unit size; and the step of sending the download message includes: extracting, from the identified data, the block of data having a size less than or substantially equal to the transfer unit size; and constructing the download message which includes the block of data and the destination address.
Claim 11
Dependent Claim 185 words
A data transfer server, comprising: means for defining a circular ordering of individual scheduling timeslots having zero or more download records, each of which includes information of remaining data to transfer from identified data, a transfer rate and a destination address; means for selecting in sequence, at a predetermined rate, the individual scheduling timeslots; and means for servicing, responsive to the selected timeslot having at least one download record, each record therein, the means for servicing including: (i) means for sending, to the destination address, a download message which includes a block of data extracted from the identified data, based on the remaining data information; (ii) means for updating the remaining data information to reflect the block of data that was sent; and (iii) means for resheduling, based on the transfer rate and the predetermined rate, the download record into an appropriate one of the scheduling timeslots; whereby, in the servicing of each download record, successive download messages having respective blocks of data extracted from the identified data are sent at a rate less than or substantially equal to the transfer rate in that record.
Claim 12
Dependent Claim 185 words
A data transfer server, comprising: means for defining a circular ordering of individual scheduling timeslots having zero or more download records, each of which includes information of remaining data to transfer from identified data, a transfer rate and a destination address; means for selecting in sequence, at a predetermined rate, the individual scheduling timeslots; and means for servicing, responsive to the selected timeslot having at least one download record, each record therein, the means for servicing including: (i) means for sending, to the destination address, a download message which includes a block of data extracted from the identified data, based on the remaining data information; (ii) means for updating the remaining data information to reflect the block of data that was sent; and (iii) means for resheduling, based on the transfer rate and the predetermined rate, the download record into an appropriate one of the scheduling timeslots; whereby, in the servicing of each download record, successive download messages having respective blocks of data extracted from the identified data are sent at a rate less than or substantially equal to the transfer rate in that record.
Claim 13
Dependent Claim 42 words
A data transfer server as claimed in claim 10, wherein the circular ordering of individual scheduling timeslots is a circular queue of the scheduling timeslots, each of which is data structure formatted as a list of the zero or more download records.
Claim 14
Dependent Claim 56 words
A data transfer server as claimed in claim 10, comprising: means for receiving a download request message which references the identified data and specifies the transfer rate; means for generating, responsive to confirming the identified data is available, a corresponding download record; and means for inserting the corresponding download record into one of the scheduling timeslots.
Claim 15
Dependent Claim 60 words
A data transfer server as claimed in claim 12, wherein the identified data is available on a storage device; and further comprising: means for loading the identified data from the storage device into a cache memory; and means for extracting, in the servicing of the corresponding download record, each block of data from the identified data in the cache memory.
Claim 16
Dependent Claim 62 words
A data transfer server as claimed in claim 13, comprising: means for generating a unique edition number associated with the identified data; means for storing the edition number with the identified data loaded into the cache memory; and means for providing the edition number in each download message whose block of data is extracted from the identified data in the cache memory.
Claim 17
Dependent Claim 30 words
A data transfer server as claimed in claim 14, comprising means for providing in each download message an indication of position for its block of data within the identified data.
Claim 18
Dependent Claim 60 words
A data transfer server as claimed in claim 10, wherein means for rescheduling the download record includes: means for discarding, responsive to the remaining data information indicating all the identified data has been transferred, the download record; and means for inserting, responsive to the remaining data information indicating otherwise, the download record in the appropriate one of the scheduling timeslots.
Claim 19
Dependent Claim 30 words
A data transfer server as claimed in claim 12, wherein the download request message specifies the transfer rate by indicating a minimum interval period between sending the successive download messages.
Claim 20
Dependent Claim 69 words
A data transfer server as claimed in claim 12, wherein the download request message specifies a transfer unit size; and the means for sending the download message includes: means for extracting, from the identified data, the block of data having a size less than or substantially equal to the transfer unit size; and means for constructing the download message which includes the block of data and the destination address.

References Cited (Backward Citations)

US5485370A Cited
US5276850A Cited
US5218695A Cited
US5280470A Cited
US5293617A Cited
US5526483A Cited
US5363369A Cited
US5623607A Cited
US5579503A Cited
US5634042A Cited
US5706281A Cited
US5631888A Cited
US5701292A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-03-01 2002-08-31 2003-03-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-03-01 2006-08-31 2007-03-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-03-01 2010-08-31 2011-03-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag