System and method for the establishment and the utilization...

Electrical computers and digital processing systems: multicomput – Distributed data processing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S268000

Reexamination Certificate

active

06463457

ABSTRACT:

FIELD OF THE INVENTION
This invention relates generally to computer use over a network to form a distributed computing platform. More specifically the present invention is a system and method for use of idle time of computers that are connected to a network by users requiring significant computing power without the need for a large scale dedicated processing unit.
BACKGROUND OF THE INVENTION
When a computer is operating, but not actively performing computations for someone, it is said to be idle. Because of their incredible speed, modem computers are idle most of the time, not only when they are running screen savers, but even when they are being used. For instance, a fast typist working at top speed in a word processor uses only a fraction of the available computational capacity of a desktop PC. Although the time between a typist's keystrokes seems immeasurably small to humans, it is an eternity when measured in computer time —an eternity filled with unproductive idle computation. Because of this gross underutilization, it is estimated that well over 95% of the world's computational capacity presently goes to waste.
SUMMARY OF THE INVENTION
The present invention is drawn to organization and use of the idle processing power of general-purpose computers to form a distributed computing platform.
It is therefore an objective of the present invention to provide large amounts of computational power to users without the users having to purchase a large computer for such purposes.
It is a further objective of the present invention to harness the idle computational power of many computers and make that power available to clients on an as needed basis.
It is yet another objective of the present invention to allow those who provide computers to be used to have complete access to their computers whenever desired without interruption of personal use.
It is still another objective of the present invention to provide computational power without regard to any specific schedule of computer non-use.
It is yet another objective of the present invention to allow clients who require computational power to specify the characteristics of the power they require.
It is still another objective of the present invention to charge clients that need computational power based upon the power and other characteristics specified by the client.
It is a further objective of the present invention to permit the client to specify the reliability of the computational power required by the client
It is yet another objective of the present invention to allow a provider of a computer to be used in the present invention to specify the amount of RAM and disk space the provider wished to devote to use by others.
It is still another objective of the present invention to push content of various types to providers during the time that providers are supplying excess computational power to tasks of the present invention.
It is yet another objective of the present invention to provide security to both the client and the provider during the running of tasks on providers.
It is still another objective of the present invention to insure that a client cannot access the computational resources of the provider beyond that which is required to run the clients tasks.
It is a further objective of the present invention to permit clients to specify checkpoints in the running of client tasks so that interrupted tasks can be resumed without significant the loss of work.
It is still another objective of the present invention to charge clients for the use of computational power in a flexible way based upon the amount of power to be used and the reliability of the power to be used.
It is yet another objective of the present invention to allow clients to create a virtual cluster of machines of client-definable computational power to run client tasks.
It is thus an overall goal of the present invention to utilize this heretofore underutilized computer power in a novel way as a distributed computing platform to meet the needs of users who require vast computing power but who may not have the financial wherewithal to purchase or lease large mainframe computers or other supercomputing solutions.
Just as email service providers deliver email from one user to another, a business running the system and method of the present invention will disseminate the tasks of a client's distributed computer program to multiple providers for remote execution. As the remote providers complete tasks, the providers will deliver results back to the originating client. As part of the present invention, an intermediary server delivers computation from providers to clients.
The Internet infrastructure to facilitate the distributed processing of the present invention requires three components:
1) Client software applications for requesting and submitting distributed processing requests and jobs. This is accomplished through a client API that allows client jobs to be coded as independent tasks. The underlying task model, while complex, is hidden from the user;
2) Provider software called a compute engine (CE) for managing the launch and execution of tasks delivered from the intermediary server. The CE runs unobtrusively and securely on the provider's computer. It processes tasks when the computer is idle and returns results to the server when the provider computer connects to the network which, for example, and without limitation may be the Internet; and
3) A centralized task server for exchanging tasks and results between participants. The centralized task server (CTS) comprises a three-tiered architecture as more fully set forth below and is redundant, fault tolerant and scalable as traffic and clients increase. A task scheduler in the CTS matches power requested to available provider computer resources.
For purposes of this application, the client is the individual or organization that is requesting the data processing services of the present invention. The provider constitutes the plurality of individuals or organizations having excess processor capacity that are offering that capacity to the system of the present invention to process requests from clients.
The flow of the present invention is as follows:
1. Using the client software from their desktop, clients launch their distributed programs, the tasks of which are transported to the centralized task server.
2. Client tasks are pooled at the centralized task server and allocated to provider computers based on a scheduling algorithm that takes into account the characteristics of the provider computer (e.g., processor speed, disk space, amount of RAM, communication speed, percentage of time the provider computer is on-line; percentage of time the provider computer is in use). The CE on the provider computer periodically contacts the server of the present invention to retrieve task assignments or other control messages. Such contact occurs periodically and opportunistically (whenever a network connection is present, for example, when a provider computer has dialed into the Internet) and not just when idle computational power is detected. The invention also allows for an auto-dial capability where the provider computer can specify intervals when the CE can connect to the server. Multiple tasks can be assigned to a CE at a given time. This is done to increase the probability that the CE will always have tasks to execute.
3. When a provider computer's CE detects that its host computer is idle, it executes tasks that were retrieved from the centralized task server.
4. The results of completed tasks are saved locally. When a connection to the centralized task server exists, statuses of current tasks, and results of previously executed tasks are sent to the centralized server of the present invention.
5. Results are pooled by the centralized task server until the originating client can connect to the server and retrieve them. Note that a special case of this is the case when the client is connected as the job is running. In this case, the client sees the results in “real time”. In this fashion, from

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

System and method for the establishment and the utilization... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System and method for the establishment and the utilization..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for the establishment and the utilization... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2994549

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.