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

Method and apparatus for allocating tasks to remote networked processors

Assignee: Intel Corp
•
Filing: 1996-12-30
•
Granted: 2000-08-29
•
Expires: 2016-12-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for providing remote, distributed processing of a task by employing a wide area network (e.g., the Internet). A resource provider initiates the process by sending an application to a resource allocator requesting to be added to the resource allocator's list of providers. The resource allocator accepts or rejects a particular resource provider based on the application. If accepted, the resource provider waits for a task from the resource allocator. Upon receiving a task, the resource provider evaluates the currently available local resources. The resource provider determines whether or not it is currently able to handle the task in view of the available local resources. If the resource provider is able to handle the task, it accepts the task. The resource provider processes the task and returns the results to either the resource allocator or the original resource requester. If the resource provider is unable to handle the task in view of the current load, the resource provider notifies the resource allocator or the resource requester that it is unable to complete the task.

Inventors

  • 👤 Terry Downs
  • 👤 Gregory Hurst Kisor

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-26 13:15
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/50; G06F9/5005; G06F9/5027; G06F9/5044; G06F9/505; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99944; Y10S707/99945; Y10S707/99948

Claims Analysis

Total Claims: 46
Claim 1
Independent Claim 140 words
A method of allocating tasks among resource providers which may be intermittently reachable over a network, comprising: determining potential resource providers for performing different tasks; receiving a task request having required resource for performing a task from a requester; first identifying at least one available resource provider having said required resource for performing the task; receiving information required to accomplish the requested task; second identifying at least one available resource provider having said required resource for performing the task; distributing the task and the information required to accomplish the task to one of said at least one available resource provider; receiving a status response from one of said at least one available resource provider indicating willingness or unwillingness to perform the distributed task; and if the status response indicates willingness to perform, then allocating completion of the distributed task thereto.
Claim 2
Independent Claim 140 words
A method of allocating tasks among resource providers which may be intermittently reachable over a network, comprising: determining potential resource providers for performing different tasks; receiving a task request having required resource for performing a task from a requester; first identifying at least one available resource provider having said required resource for performing the task; receiving information required to accomplish the requested task; second identifying at least one available resource provider having said required resource for performing the task; distributing the task and the information required to accomplish the task to one of said at least one available resource provider; receiving a status response from one of said at least one available resource provider indicating willingness or unwillingness to perform the distributed task; and if the status response indicates willingness to perform, then allocating completion of the distributed task thereto.
Claim 3
Dependent Claim 28 words
A method according to claim 1, further comprising: wherein said second identifying confirms continued availability of said at least one available resource provider identified from said first identifying.
Claim 4
Dependent Claim 20 words
The method of claim 1, further comprising: determining if there are too few willing resource providers to complete the task.
Claim 5
Dependent Claim 28 words
The method of claim 3, further comprising: wherein if there are too few willing resource providers, then third identifying of additional available resource providers to perform the task.
Claim 6
Dependent Claim 24 words
The method of claim 3, further comprising: receiving completion of task data from each of said at least one available resource provider by E-mail.
Claim 7
Dependent Claim 15 words
The method of claim 1, wherein said completion of task data is received by E-mail.
Claim 8
Dependent Claim 53 words
A method according to claim 1, in which the task has associated costs/constraints, and wherein said identifying said at least one available resource provider comprises: selecting from said at least one resource provider a candidate resource provider having associated capabilities; and comparing said capabilities of the candidate resource provider with said task costs/constraints.
Claim 9
Dependent Claim 38 words
A method according to claim 1, further comprising: determining if insufficient resource providers are available to process the task, and if so, deferring allocating the task by E-mailing said task request to said at least one resource provider.
Claim 10
Dependent Claim 30 words
A method according to claim 1, wherein said determining potential resource providers comprises: polling a network connection to identify active connections between a task allocator and said potential resource providers.
Claim 11
Dependent Claim 54 words
A method according to claim 1, further comprising: receiving notification from a first one of said potential resource providers that said first one has idle resources; and transmitting cost/constraints of the task to said first one so as to allow said first one to determine if it has sufficient resources to perform the task.
Claim 12
Dependent Claim 24 words
The method of claim 1, further comprising: notifying the allocator, by said potential resource providers, of interest in receiving tasks distributed by said allocator.
Claim 13
Independent Claim 110 words
A method for an allocator to allocate a task among potential resource providers, comprising: determining potential resource providers for performing different tasks; receiving a task request specifying resource required to perform a task; first identifying one available resource provider having the resource to perform the task; receiving information required to accomplish the task; second identifying one available resource provider having the resource to perform the task; distributing the task to said one available resource provider; receiving a status response from said available resource provider indicating said willingness or unwillingness to perform the task; and if the status response indicates willingness to perform, then allocating completion of the distributed task thereto.
Claim 14
Independent Claim 110 words
A method for an allocator to allocate a task among potential resource providers, comprising: determining potential resource providers for performing different tasks; receiving a task request specifying resource required to perform a task; first identifying one available resource provider having the resource to perform the task; receiving information required to accomplish the task; second identifying one available resource provider having the resource to perform the task; distributing the task to said one available resource provider; receiving a status response from said available resource provider indicating said willingness or unwillingness to perform the task; and if the status response indicates willingness to perform, then allocating completion of the distributed task thereto.
Claim 15
Dependent Claim 21 words
A method according to claim 12, wherein distributing the task and receiving the completion of task data is performed by E-mail.
Claim 16
Dependent Claim 50 words
A method according to claim 12, wherein determining said status response comprises: identifying available provider resources; comparing said available provider resources to said required resource; and if said comparing indicates availability of said required resource to process the task, then sending the status response indicating willingness to perform the task.
Claim 17
Dependent Claim 35 words
The method of claim 14, the method further comprising: receiving plural task requests from a requestor; wherein distributing the task comprises distributing at least one of said plural task requests to said available resource provider.
Claim 18
Dependent Claim 35 words
The method of claim 12, the method further comprising: receiving plural task requests from a requestor; wherein distributing the task comprises distributing at least one of said plural task requests to said available resource provider.
Claim 19
Dependent Claim 43 words
A method according to claim 12, wherein determining said status response comprises: determining an associated payment for processing the task; and determining if said associated payment is sufficient, and if so, sending the status response configured to indicate willingness to perform the task.
Claim 20
Independent Claim 105 words
A method for a resource provider to process a task distributed by a task allocator, comprising: first identifying available provider resources; notifying the allocator, if available resources are identified, that the resource provider wants to receive tasks distributed by said allocator; receiving from the allocator a task request specifying resource required to perform the task, information required to accomplish the requested task, and a processing fee; second identifying of available provider resources to confirm availability of said specified resource for accomplishing the task; and determining willingness or unwillingness to perform the task based at least in part on said processing fee and said second identifying.
Claim 21
Independent Claim 105 words
A method for a resource provider to process a task distributed by a task allocator, comprising: first identifying available provider resources; notifying the allocator, if available resources are identified, that the resource provider wants to receive tasks distributed by said allocator; receiving from the allocator a task request specifying resource required to perform the task, information required to accomplish the requested task, and a processing fee; second identifying of available provider resources to confirm availability of said specified resource for accomplishing the task; and determining willingness or unwillingness to perform the task based at least in part on said processing fee and said second identifying.
Claim 22
Dependent Claim 13 words
A method according to claim 18, wherein the task is received by E-mail.
Claim 23
Dependent Claim 21 words
The method of claim 18, further comprising: determining a worst-case performance completion estimate; and submitting the worst-case performance to the allocator.
Claim 24
Dependent Claim 119 words
A readable medium having instructions encoded thereon for allocating tasks among resource providers, said instructions capable of directing a processor to: determine potential resource providers for performing a task; receive a task request specifying required resource for performing the task; first identify one available resource provider having the specified resource to perform the task; receive information required to accomplish the requested task; second identify one available resource provider having the specified resource to perform the task; distribute the task to said available resource provider; receive a status response from said available resource provider indicating willingness or unwillingness to perform the distributed task; and if the status response indicates willingness to perform, then allocate completion of the distributed task thereto.
Claim 25
Dependent Claim 119 words
A readable medium having instructions encoded thereon for allocating tasks among resource providers, said instructions capable of directing a processor to: determine potential resource providers for performing a task; receive a task request specifying required resource for performing the task; first identify one available resource provider having the specified resource to perform the task; receive information required to accomplish the requested task; second identify one available resource provider having the specified resource to perform the task; distribute the task to said available resource provider; receive a status response from said available resource provider indicating willingness or unwillingness to perform the distributed task; and if the status response indicates willingness to perform, then allocate completion of the distributed task thereto.
Claim 26
Dependent Claim 25 words
The medium of claim 21, wherein said second identifying confirms continued availability of said at least one available resource provider identified from said first identifying.
Claim 27
Dependent Claim 29 words
The medium of claim 21, said instructions including further instructions capable of directing the processor to: determine if there are too few willing resource providers to complete the task.
Claim 28
Independent Claim 39 words
The medium of claims 23, said instructions including further instructions capable of directing the processor to: determine if there are too few willing resource providers, and if so, third identify of additional available resource providers to perform the task.
Claim 29
Dependent Claim 33 words
The medium of claim 23, said instructions including further instructions capable of directing the processor to: receive completion of task data from each of said at least one available resource provider by E-mail.
Claim 30
Dependent Claim 15 words
The medium of claim 21, wherein said completion of task data is received by E-mail.
Claim 31
Dependent Claim 61 words
The medium of claim 21, in which the task has associated costs/constraints, and wherein said instructions for identifying said at least one available resource provider comprises instructions capable of directing the processor to: select from said at least one resource provider a candidate resource provider having associated capabilities; and compare said capabilities of the candidate resource provider with said task costs/constraints.
Claim 32
Dependent Claim 46 words
The medium of claim 21, said instructions including further instructions capable of directing the processor to: determine if insufficient resource providers are available to process the task; and if so, deferring allocating the task by E-mailing said task request to said at least one resource provider.
Claim 33
Dependent Claim 38 words
The medium of claim 21, wherein said instructions for determining potential resource providers comprises instructions capable of directing the processor to: poll a network connection to identify active connections between a task allocator and said potential resource providers.
Claim 34
Dependent Claim 62 words
The medium of claim 21, said instructions including further instructions capable of directing the processor to: receive notification from a first one of said potential resource providers that said first one has idle resources; and transmit cost/constraints of the task to said first one so as to allow said first one to determine if it has sufficient resources to perform the task.
Claim 35
Dependent Claim 33 words
The medium of claim 21, said instructions including further instructions capable of directing the processor to: notify the allocator, by said potential resource providers, of interest in receiving tasks distributed by said allocator.
Claim 36
Dependent Claim 117 words
A readable medium having instructions encoded thereon for allocating tasks among resource providers, said instructions capable of directing a processor to: determine potential resource providers for performing different tasks; receive a task request specifying resource required to perform a task; first identify one available resource provider having the resource to perform the task; receive information required to accomplish the task; second identify one available resource provider having the resource to perform the task; distribute the task to said one available resource provider; receive a status response from said available resource provider indicating said willingness or unwillingness to perform the task; and if the status response indicates willingness to perform, then allocate completion of the distributed task thereto.
Claim 37
Dependent Claim 117 words
A readable medium having instructions encoded thereon for allocating tasks among resource providers, said instructions capable of directing a processor to: determine potential resource providers for performing different tasks; receive a task request specifying resource required to perform a task; first identify one available resource provider having the resource to perform the task; receive information required to accomplish the task; second identify one available resource provider having the resource to perform the task; distribute the task to said one available resource provider; receive a status response from said available resource provider indicating said willingness or unwillingness to perform the task; and if the status response indicates willingness to perform, then allocate completion of the distributed task thereto.
Claim 38
Dependent Claim 13 words
The medium of claim 32, wherein distributing the task is performed by E-mail.
Claim 39
Dependent Claim 63 words
The medium of claim 32, wherein said instructions for determining said status response comprises instructions capable of directing the processor to: identify available provider resources; compare said available provider resources to said required resource; and determine if said comparing indicates availability of said required resource to process the task, and if so, then send the status response indicating willingness to perform the task.
Claim 40
Dependent Claim 48 words
The medium of claim 34, said instructions including further instructions capable of directing the processor to: receive plural task requests from a requester; wherein said instructions for distributing the task comprises further instructions for distributing at least one of said plural task requests to said available resource provider.
Claim 41
Dependent Claim 48 words
The medium of claim 32, said instructions including further instructions capable of directing the processor to: receive plural task requests from a requestor; wherein said instructions for distributing the task comprises further instructions for distributing at least one of said plural task requests to said available resource provider.
Claim 42
Dependent Claim 52 words
The medium of claim 32, wherein said instructions for determining said status response comprises instructions capable of directing the processor to: determine an associated payment for processing the task; and determine if said associated payment is sufficient, and if so, send the status response configured to indicate willingness to perform the task.
Claim 43
Dependent Claim 117 words
A readable medium having instructions encoded thereon for a resource provider to process a task distributed by a task allocator, said instructions capable of directing a processor to: first identify available provider resources; notify the allocator, if available resources are identified, that the resource provider wants to receive tasks distributed by said allocator; receive from the allocator a task request specifying resource required to perform the task, information required to accomplish the requested task, and a processing fee; second identify of available provider resources to confirm availability of said specified resource for accomplishing the task; and determine willingness or unwillingness to perform the task based at least in part on said processing fee and said second identifying.
Claim 44
Dependent Claim 117 words
A readable medium having instructions encoded thereon for a resource provider to process a task distributed by a task allocator, said instructions capable of directing a processor to: first identify available provider resources; notify the allocator, if available resources are identified, that the resource provider wants to receive tasks distributed by said allocator; receive from the allocator a task request specifying resource required to perform the task, information required to accomplish the requested task, and a processing fee; second identify of available provider resources to confirm availability of said specified resource for accomplishing the task; and determine willingness or unwillingness to perform the task based at least in part on said processing fee and said second identifying.
Claim 45
Dependent Claim 12 words
The medium of claim 38, wherein the task is received by E-mail.
Claim 46
Dependent Claim 30 words
The medium of claim 38, said instructions including further instructions capable of directing the processor to: determine a worst-case performance completion estimate; and submit the worst-case performance to the allocator.

References Cited (Backward Citations)

US3421150A Cited
US4224664A Cited
US5481698A Cited
US5341477A Cited
US5329619A Cited
US5440741A Cited
US5737728A Cited
US5826269A Cited
US5748884A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-08-29 2004-02-28 2004-08-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-08-29 2008-02-28 2008-08-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-08-29 2012-02-28 2012-08-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag