US20100036723A1 - Sweepstakes Incentive Model and Associated System - Google Patents

Sweepstakes Incentive Model and Associated System Download PDF

Info

Publication number
US20100036723A1
US20100036723A1 US12/580,149 US58014909A US2010036723A1 US 20100036723 A1 US20100036723 A1 US 20100036723A1 US 58014909 A US58014909 A US 58014909A US 2010036723 A1 US2010036723 A1 US 2010036723A1
Authority
US
United States
Prior art keywords
workload
client devices
capability
client
systems
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/580,149
Inventor
Edward A. Hubbard
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=27585115&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=US20100036723(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from US09/539,106 external-priority patent/US6891802B1/en
Priority claimed from US09/538,542 external-priority patent/US6654783B1/en
Priority claimed from US09/538,543 external-priority patent/US7003547B1/en
Priority claimed from US09/602,789 external-priority patent/US7020678B1/en
Priority claimed from US09/602,983 external-priority patent/US6963897B1/en
Priority claimed from US09/602,803 external-priority patent/US7082474B1/en
Priority claimed from US09/648,832 external-priority patent/US6847995B1/en
Application filed by Individual filed Critical Individual
Priority to US12/580,149 priority Critical patent/US20100036723A1/en
Publication of US20100036723A1 publication Critical patent/US20100036723A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0212Chance discounts or incentives
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Definitions

  • U.S. patent application Ser. No. 09/794,969 is a continuation in part of and claims priority to the following applications: U.S. patent application Ser. No. 09/539,023 entitled “Sweepstakes Incentive Model and Associated System” to Hubbard, and to U.S. patent application Ser. No. 09/539,448 entitled “Capability-Based Distributed Parallel Processing System and Associated Method” to Hubbard, and to U.S. patent application Ser. No. 09/539,428 entitled “Method of Managing Distributed Workloads and Associated System” to Hubbard, and to U.S. Pat. No. 6,891,802 entitled “Network Site Testing Method and Associated System” to Hubbard, and to U.S. Pat.
  • U.S. patent application Ser. No. 09/794,969 is also a continuation in part of and claims priority to the following applications: U.S. patent application Ser. No. 09/602,844 entitled “Data Conversion Services and Associated Distributed Processing System” to Hubbard, and to U.S. Pat. No. 6,963,897 entitled “Customer Services and Advertising Based Upon Device Attributes and Associated Distributed Processing System” to Hubbard, and to U.S. Pat. No. 7,020,678 entitled “Machine Generated Sweepstakes Entry Model and Associated Distributed Processing System” to Hubbard, and to U.S. patent application Ser. No.
  • Prior processing systems have included the technique of multiple users within a company sharing processing time available on a mainframe or central processing system. Using small segments of mainframe processing time, departments within the company would often incur costs associated with using the processing time, which in turn was billed back to each department from the central information technology (IT) organization for the company. In other instances, a company could pay for and utilize processing time made available by third-party companies who possessed an over-capacity of mainframe processing power. These third-party companies would, in effect, create a market for the mainframe processing time that went unused by the internal organizations of that third-party company.
  • IT information technology
  • Prior processing techniques have also included distributed processing projects that have utilized the Internet or World Wide Web. These distributed processing research projects have used a multitude of personal computers (PCs) connected to the Internet to provide processing power to accomplish research project goals. Research project goals have been, for example, identifying large prime numbers, analyzing radio telescope data, and analyzing code keys in an encryption deciphering contest.
  • PCs personal computers
  • One example of a distributed processing project on the Internet is a research project housed at the University of California at Berkeley to analyze sky recording data gathered by SETI (the Search for Extraterrestrial Intelligence). This sky recording data has been gathered for some time from the large Arecibo Radio Telescope in Puerto Rico.
  • SETI home URL in March 2000-www.setiathome.ssl.berkeley.edu
  • This massively parallel distributed system currently has a processing throughput of over 10 TFLOPs (terraFLOPS or 10 12 floating point operations per second) running on about 1.8 million Internet connected machines.
  • Distributed.net Another example of a distributed processing technique was developed and implemented by Distributed.net (URL in March 2000-www.distributed.net) to compete in encryption breaking contests.
  • Distributed.net created and distributed a client software program which may be downloaded by client systems connected to the Internet. This client software then acts as part of a large distributed processing system specifically designed to break encrypted messages on the Internet.
  • Distributed.net has won encryption breaking contests sponsored by RSA Labs, which is an Internet security company. In these contests, RSA Labs has offered a monetary prize to the winner of the encryption contest. In organizing its efforts, Distributed.net has offered a share of this monetary prize to the client system that actually breaks the encryption code.
  • Distributed.net keeps track of overall project statistics, as well as statistics concerning the efforts of its client systems through individual and team rankings by amount of processing completed.
  • Entropia.com (URL in March 2000—www.entropia.com) has utilized an Internet distributed processing system to compete in contests directed to identifying the largest prime number. Entropia.com also offers its computing power to other research projects. Users may sign on to be part of the distributed processing for free. For the largest prime number contest, Entropia.com, like Distributed.net, offers a monetary prize to the Internet connected PC that comes up with the first prime number achieved in a new order of magnitude. For other research projects, the incentive is simply to be a part of the research project.
  • Process Tree Network Another distributing processing web site is provided by Process Tree Network (URL in March 2000—www.processtree.com). This web site is attempting to sign-up Internet connected computer systems to provide processing power for paying projects. For a project, each partner system, when connected to the Internet, will have client software that downloads a job unit and processes that job unit.
  • the incentive offered by the Process Tree Network are “micro-payments” for the amount of work completed by any given system. These micro-payments are apparently small amounts of some total project value based upon the amount of the project completed by the given system through the jobs it has processed.
  • each partner is given a bonus percentage of payments made to persons they sign-up as new partners.
  • IWON.COM www.iwon.com
  • IWON.COM is a standard Internet search and content portal that provides an incentive to users by giving them entries to a sweepstakes when the users use the portal. The more the users use the portal, the more entries the user generates, up to a limit, for example, up to 100/day.
  • IWON.COM has chosen a $10,000 winner from among the entries.
  • IWON.COM has chosen a $1,000,000 winner.
  • IWON.COM plans to draw a single winner for a $10,000,000 grand prize
  • IWON.COM has created this sweepstakes model to introduce an Internet portal in late 1999 and make it a web site that has as a comparable number of people using it as does Internet portals that have existed for many years, such as, for example. Yahoo.com (URL in March 2000-www.yahoo.com).
  • the present invention provides a distributed parallel processing system that identifies the capabilities of distributed devices connected together through a wide variety of communication systems and networks and provides a sweepstakes incentives to aggregate these distributed device capabilities to accomplish processing, storage, broadcasting or any other desired project objective.
  • the present invention is a method of operating a distributed parallel processing system, including providing a server system, coupling the server system to a network, the network being connectable to distributed devices, and providing entries to a sweepstakes as an incentive to couple the distributed devices to the server system through the network so that the distributed devices are capable of performing workloads for the distributed parallel processing system.
  • the present invention is a distributed parallel processing system, including a server system coupled to a network, the network being connectable to distributed devices, a capability database coupled to the server system storing workload capability factors associated with the plurality of distributed devices, and a sweepstakes database coupled to the server system, the sweepstakes database storing entries associated with a plurality of the distributed devices, and the plurality of distributed devices being capable of performing a workload for the distributed parallel processing system.
  • FIG. 1A is a block diagram for a distributed processing system having client capability and incentive features, according to the present invention.
  • FIG. 1B is a block diagram for information flow among customer systems, server systems and client systems, according to the present invention.
  • FIG. 2A is a block diagram for a client system, according to the present invention.
  • FIG. 2B is a block diagram for processing elements within a client system, according to the present invention.
  • FIG. 2C is a block diagram for a client system agent installed on a client system, according to the present invention.
  • FIG. 2D is an example user interface for a client system agent, including incentive advertising, according to the present invention.
  • FIG. 3A is a block diagram for server systems, according to the present invention, including a control system, a sweepstakes system and a workload database.
  • FIG. 3B is a block diagram for servers systems, customer systems, client systems and outsourced host systems, according to the present invention.
  • FIG. 3C is a block diagram for a server system processor, according to the present invention.
  • FIG. 3D is an alternative block diagram for a server system processor, according to the present invention.
  • FIG. 4 is a functional block diagram for an example sweepstakes incentive operation according to the present invention.
  • FIG. 5A is a block diagram for a distributed processing system for a network site indexing application, according to the present invention.
  • FIG. 5B is a functional block diagram for an indexing operation according to the present invention.
  • FIG. 6A is a block diagram for a server system according to the present invention, including a control system, a workload database, and a database of client capabilities balancing vectors.
  • FIG. 6B is a functional block diagram for client capabilities balancing of workloads according to the present invention.
  • FIG. 7A is a block diagram for a distributed processing system, according to the present invention, including example network sites on which site testing is to be conducted, such as load testing and/or quality-of-service (QoS) testing.
  • load testing and/or quality-of-service (QoS) testing.
  • QoS quality-of-service
  • FIG. 7B is a functional block diagram for site-testing, according to the present invention.
  • FIG. 8 is a block diagram for a distributed processing system for a data backup application, according to the present invention.
  • the present invention contemplates the identification of the capabilities of distributed devices connected together through a wide variety of communication systems and networks and the aggregation of these capabilities to accomplish processing, storage, broadcasting or any other desired project objective.
  • distributed devices connected to each other through the Internet, an intranet network, a wireless network, or any other network may provide any of a number of useful capabilities to third parties once their respective capabilities are identified, organized, and managed for a desired task.
  • These distributed devices may be connected personal computer systems (PCs), internet appliances, notebook computers, servers, storage devices, network attached storage (NAS) devices, wireless devices, hand-held devices, or any other computing device that has useful capabilities and is connected to a network in any manner.
  • the present invention further contemplates providing an incentive, which may be based in part upon capabilities of the distributed devices, to encourage users and owners of the distributed devices to allow the capabilities of the distributed devices to be utilized in the distributed parallel processing system of the present invention.
  • the number of usable distributed devices contemplated by the present invention is preferably very large. Unlike a small local network environment, for example, as may be used by an Internet Service Provider (ISP), which may include less than 100 interconnected computers systems to perform the tasks required by the ISP, the present invention preferably utilizes a multitude of widely distributed devices to provide a massively distributed processing system. With respect to the present invention, a multitude of distributed devices refers to greater than 1,000 different distributed devices. With respect to the present invention, widely distributed devices refers to a group of interconnected devices of which at least two are physically located at least 100 miles apart. With respect to the present invention, a massively distributed processing system is one that utilizes a multitude of widely distributed devices.
  • ISP Internet Service Provider
  • the Internet is an example of a interconnected system that includes a multitude of widely distributed devices.
  • An intranet system at a large corporation is an example of an interconnected system that includes multitude of distributed devices, and if multiple corporate sites are involved, may include a multitude of widely distributed devices.
  • a distributed processing system according to the present invention that utilizes such a multitude of widely distributed devices, as are available on the Internet or in a large corporate intranet, is a massively distributed processing system according to the present invention.
  • FIG. 1A is a block diagram for a distributed parallel processing system 100 according to the present invention.
  • the network 102 is shown having a cloud outline to indicate the unlimited and widely varying nature of the network and of attached client types.
  • the network 102 may be the Internet, an internal company intranet, a local area network (LAN), a wide area network (WAN), a wireless network, or any other system that connects together multiple systems and devices.
  • network 102 may include any of these types of connectivity systems by themselves or in combination, for example, computer systems on a company intranet connected to computer systems of the Internet.
  • FIG. 1A also shows client systems 108 , 110 . . . 112 connected to the network 102 through communication links 118 , 120 . . . 122 , respectively.
  • server systems 104 , other systems 106 , and customer systems 152 are connected to the network 102 through communication links 114 , 116 and 119 , respectively.
  • the client system capabilities block 124 is a subset of the server systems 104 and represents a determination of the capabilities of the client systems 108 , 110 . . . 112 .
  • the incentives block 126 is also a subset of the server systems 104 and represents an incentive provided to the users or owners of the clients systems 108 , 110 . . .
  • the client systems 108 , 110 represent any number of systems and/or devices that may be identified, organized and utilized by the server systems 104 to accomplish a desired task, for example, personal computer systems (PCs), internet appliances, notebook computers, servers, storage devices, network attached storage (NAS) devices, wireless devices, hand-held devices, or any other computing device that has useful capabilities and is connected to a network in any mariner.
  • the server systems 104 represent any number of processing systems that provide the function of identifying, organizing and utilizing the client systems to achieve the desired tasks.
  • the incentives provided by the incentives block 126 may be any desired incentive.
  • the incentive may be a sweepstakes in which entries are given to client systems 108 , 110 . . . 112 that are signed up to be utilized by the distributed processing system 100 .
  • Other example incentives are reward systems, such as airline frequent-flyer miles, purchase credits and vouchers, payments of money, monetary prizes, property prizes, free trips, time-share rentals, cruises, or any other desired incentive or reward.
  • any number of other systems may also be connected to the network 102 .
  • the element 106 therefore, represents any number of a variety of other systems that may be connected to the network 102 .
  • the other systems 106 may include ISPs, web servers, university computer systems, and any other distributed device connected to the network 102 , for example, personal computer systems (PCs), interact appliances, notebook computers, servers, storage devices, network attached storage (NAS) devices, wireless devices, hand-held devices, or any other connected computing device that has useful capabilities and is connected to a network in any manner.
  • the customer systems 152 represents customers that have projects for the distributed processing system, as further described with respect to FIG. 1B .
  • the customer systems 152 connect to the network 102 through the communication link 119 .
  • the communication links 114 , 116 , 118 , 119 , 120 , and 122 may allow for communication to occur, if desired, between any of the systems connected to the network 102 .
  • client systems 108 , 110 , . . . 112 may communicate directly with each other in peer-to-peer type communication.
  • the communication links 114 , 116 , 118 , 119 , 120 , and 122 may be any desired technique for connecting into any portion of the network 102 , such as Ethernet connections, wireless connections, ISDN connections, DSL connections, modem dial-up connections, cable modem connections, direct T1 or T3 connections, routers, portal computers, as well as any other network or communication connection.
  • the client system 108 may be, for example, an individual personal computer located in someone's home and may be connected to the Internet through an Internet Service Provider (ISP).
  • ISP Internet Service Provider
  • Client system 108 may also be a personal computer located on an employee's desk at a company, may be connected to an intranet through a network router, and may be connected to the Internet through a second router or portal computer.
  • Client system 108 may further be personal computers connected to a company's intranet, and the server systems 104 may also be connected to that same intranet.
  • ISP Internet Service Provider
  • FIG. 1B is a block diagram information flow 150 among customer systems 152 , server systems 104 and client system 134 , according to the present invention.
  • the server systems 104 may include any number of different subsystems or components, as desired, including client system capabilities block 124 and incentives block 126 .
  • the server systems 104 send project and benchmark workloads 130 to client systems 134 .
  • a benchmark workload refers to a standard workload that may be used to determine the relative capabilities of the client systems 134 .
  • a project workload refers to a workload for a given project that is desired to be completed.
  • the project workload may be, for example, a workload for projects such as network site content indexing, network site testing including network site load testing and network site quality of service testing, data back-up, bioinformatics including genetic and biological analyses, pair-wise comparisons including fingerprint and DNA analyses, data mining, or any other desired project.
  • projects such as network site content indexing, network site testing including network site load testing and network site quality of service testing, data back-up, bioinformatics including genetic and biological analyses, pair-wise comparisons including fingerprint and DNA analyses, data mining, or any other desired project.
  • Client systems 134 may be any number of different systems that are connected to the server systems 104 through a network 102 , such as client systems 108 , 110 . . . 112 in FIG. 1A .
  • the client systems 134 send results 132 back to the server systems 104 after the client systems 134 complete processing any given workload.
  • the server systems 104 may then provide results 156 to customer systems 152 .
  • the customer systems 152 may be, for example, an entity that desires a given project to be undertaken, and if so, provides the project details and data 158 to the server systems 104 .
  • FIG. 2A is a block diagram for an example client system 108 according to the present invention.
  • an original workload 204 is received through line 208 from an interface 206 .
  • the original workload 204 represents a portion of the processing, storage or other activity required to complete the desired task for which the server system 104 is trying to accomplish.
  • This original workload 204 is sent by the server system 104 through the network 102 and received by the client system 108 through communication link 118 .
  • the client system 108 processes the original workload 204 .
  • results 202 are then stored for transferring along line 210 to interface 206 .
  • Interface 206 may then communicate the results back to the server system 104 through communication line 118 , or to other client systems (for example, with peering of client systems) and then through the network 102 .
  • the workload received by the client system 108 and the processing or activity performed may depend up a variety of factors, as discussed further below.
  • this workload allocated by the server system 104 to each client system 108 , 110 , and 112 may depend upon the capabilities of the client system, such as the processing power, disk storage capacity, communication types, and other capabilities available from the various components of the systems within the client systems 108 .
  • the server systems 104 can select the workloads for the client system 108 and may control when these workloads are performed, through an operational code (i.e., an agent) residing and installed on the client system 108 .
  • an operational code i.e., an agent
  • the owner or user of the client system 108 may determine when workloads are procured or obtained from the server systems 104 , as well as when these workloads are performed, for example, by accessing the server systems 104 through the network 102 .
  • the sever system 104 may download to the client system 108 upon request one or more workloads.
  • an agent residing on the client system 108 may operate to process the workload or multiple workloads downloaded to the client system 108 .
  • the agent may be simultaneously managing more than one workload for any number of projects.
  • the agent may inform the owner or user of the client system 108 the results are ready to be communicated back.
  • the client system 108 may then upload results to the server system 104 and download new workloads, if desired.
  • these logistical and operational interactions may take place automatically through control of the agent and/or the server systems 104 .
  • FIG. 2B is a block diagram for processing elements within a client system 108 according to the present invention.
  • client system 108 is contemplated as a personal computer.
  • internal bus 260 would typically have a variety of different devices connected to it.
  • a CPU 250 could be connected through the bus 260 to a video processor 252 , a floating point processor 254 (often integrated within the CPU itself), and digital signal processors (DSPs), such as those found on sound cards and modems.
  • DSPs digital signal processors
  • any of a variety of other processing devices 258 may be included.
  • other types of devices may be connected, such as hard drives 264 , which provide disk storage capabilities, and a digital camera 262 .
  • the capabilities for client systems 108 , 110 . . . 112 may span the entire range of possible computing, processing, storage and other subsystems or devices that are connected to a system connected to the network 102 .
  • these subsystems or devices may include: central processing units (CPUs), digital signal processors (DSPs), graphics processing engines (GPEs), hard drives (HDs), memory (MEM), audio subsystems (ASs), communications subsystems (CSs), removable media types (RMs), and other accessories with potentially useful unused capabilities (OAs).
  • CPUs central processing units
  • DSPs digital signal processors
  • GPUs graphics processing engines
  • HDs hard drives
  • MEM memory
  • ASs audio subsystems
  • CSs communications subsystems
  • RMs removable media types
  • OAs removable media types
  • the client system 108 will also receive an agent that manages the completion of the workload.
  • This agent may be software that is customized for the particular computer system and processing capabilities of the client system 108 .
  • the agent may be a program that operates in the background of the computer's operating system.
  • the agent may take advantage of it. For example, if the user is using a word processing application to create a document, little processing power is being utilized by the word processing program, leaving the computer's CPU and video processor underutilized. Thus, the agent may facilitate the completion of workload processing in a reduced time.
  • this agent may be self-updating upon connecting to the server systems 104 , so that the agent may be kept up to date with current software revisions and workload activities. It is also noted that the agent may manage work on multiple workloads at the same time, so that any given distributed device connected to the network 102 may be working on a plurality of workloads at any given time.
  • FIG. 2C is a block diagram for an example client system agent 270 .
  • the agent 270 may include a security subsystem 272 that controls the interface of the client system 108 with the agent 270 .
  • the security subsystem 272 may help keep the workloads secure and may help to keep the client systems 108 from suffering any security problems in completing the workload.
  • the agent 272 may operate to keep viruses from attacking the client system 108 while the client system 108 is processing the workload through the operation of the agent.
  • the security subsystem 272 therefore, may provide the interface for the workloads 130 and the results 132 .
  • the clients system agent 270 may also include a workload engine 274 , a statistics/user interface/incentive advertising block 276 , and a workload package and update processing block 278 .
  • workloads 130 pass through the security subsystem 272 and along line 280 to the workload package and update processing block 278 .
  • the agent 270 may be updated by the server systems 104 .
  • the agent 270 may determine, when connected to the server systems 104 , whether it needs to be updated and then accomplish that updating automatically.
  • the workload engine 274 may receive the workload following line 288 .
  • the workload engine 274 works on the workload, ultimately completing the workload.
  • the results or status of the workload may then be sent through the security subsystem 272 following line 282 .
  • the results 132 may then be provided back to the server systems 104 .
  • the statistics/user interface/incentive advertising block 276 may provide workload, incentive and other statistics, as well as any other desired interface features, to the user of the client system.
  • the block 276 may show a user the expected amount of processing time it will take for the client system to complete a workload task based upon the capabilities of the system.
  • the block 276 may receive information following lines 286 and 284 from the workload package and update processing block 278 and from the workload engine 274 .
  • security information from the security subsystem 272 could also be displayed to the user of the client system. It is noted that the information displayed to the user of the client system may be modified and selected as desired without departing from the present invention.
  • the block 276 may also show the user of the client system how this processing time might change depending upon various possible upgrades to the capabilities of the system, such as a faster microprocessor, more memory, more disk storage space, etc.
  • the client system capabilities may be shown correlated to the incentives provided to the client system for participation.
  • the user may be provided information as to how the user's incentives would increase or change depending upon other computer systems or upgraded capabilities the user could acquire.
  • This incentive value increase may also be tied to upgrades to particular vendor's devices. For example, if the user's device is a computer system having an ABC microprocessor, the block 276 may provide the user information as to increased incentive values based upon an upgrade to a more powerful ABC microprocessor. Similarly, if the user's device is a computer system obtained from ABC, the block 276 may provide the user information as to increased incentive values based upon an upgrade to a more powerful ABC computer system.
  • FIG. 2D is a an example user interface 276 for a client system agent, including incentive advertising, according to the present invention.
  • interface 276 is a window 230 that may be displayed on a distributed device, for example, a computer system. This window 230 displays the desired information for the agent client manager. As indicated above, this agent client manager is initially downloaded from the server systems 104 and thereafter may be updated at various times when the client system is communicating with the server systems.
  • the interface 276 includes interface tabs 221 , 222 , 224 , 226 , 228 , 244 , 246 and 248 .
  • interface tabs may be selected through the user of a pointing device or keyboard attached, for example, to a computer system graphically displaying the window 230 . It is noted that the interface tabs 221 , 222 , 224 , 226 , 228 , 244 , 246 and 248 are only examples, and the number, arrangement and content of tabs may be modified as desired. In addition, the example user interface 276 depicted in FIG. 2D is only an example and may be modified as desired.
  • the processor values interface tab 224 is the one currently selected by the user.
  • This tab 224 includes example information that may be displayed to the user. Assuming that a workload is being processed by the agent client manager, the user may select the button 242 (Show My Incentive Values) to show the user's current incentive values associated with the workload being performed.
  • the personal incentive values chart 232 My Personal Incentive Values may then be displayed to the user. As shown, the incentive values are provided in a relative scale from 1 to 10.
  • the key designation 240 represents the incentives associated with the users current central processing unit (CPU) or microprocessor.
  • the incentive may also be tied to the specific vendor of the user's CPU, for example, ABC Company's CPU.
  • the key designation 240 (My current processor) and the corresponding bar graph portion 236 represent incentives for the user's current CPU (e.g., a 166 MHz processor).
  • the key designation 238 represents the incentives that the user is projected to have if the user were to upgrade the CPU. Again, this upgrade incentive information may be tied to the specific vendor of the user's CPU or to any other vendor, if desired.
  • the key designation 238 (NEW ABC 1 GHz processor!) and the corresponding bar graph portion 234 represent incentives for an upgrade to a new ABC CPU (e.g., a new ABC 1 GHz processor). In this manner, a user may be provided an incentive to increase the capabilities of the distributed device, and a vendor may be provided advertising so that the user is also directed to a particular upgrade.
  • tab 246 Memory Values
  • Tab 224 Graphics Values
  • Tab 226 Communication Values
  • Tab 228 Storage Values
  • Tab 248 System Values
  • System Values represents information that may be provided for the system capabilities as a whole for the distributed device.
  • the tab 244 (Current: Prime Search) represents information that may be displayed to the user about the current workload being performed by the agent client manager, for example, a search for large prime numbers.
  • the tab 221 (Settings) represents information that may be displayed to the user about various settings for the client agent manager. In particular, the tab 221 may provide the user the ability to control any desired aspect of the operation of the agent client manager.
  • the user may be able to select a portion of the capabilities that may be utilized (e.g., a maximum of 20% of the system memory), the types of workloads that may be performed (e.g., only scientific research projects), the times when the agent may utilize system resources (e.g., only between 12 to 6 am, or only when the system is idle), or any other desired operational feature.
  • a portion of the capabilities that may be utilized e.g., a maximum of 20% of the system memory
  • the types of workloads that may be performed e.g., only scientific research projects
  • the times when the agent may utilize system resources e.g., only between 12 to 6 am, or only when the system is idle
  • the user may also be provided information as to how incentives would increase if the user allocated or changed the settings for the agent client manager.
  • the server systems 104 may be one or more computer systems that operate to identify client system capabilities, organize workloads, and utilize client systems to accomplish a desired task.
  • the server systems 104 includes a control system 304 a workload database 308 , and a sweepstakes system 306 , as discussed more below.
  • the workload database 308 stores any desired project task, which may be broken up into discrete workload tasks WL 1 , WL 2 WLN, as represented by elements 336 , 338 . . . 340 .
  • the workload database may also store one or more benchmark workloads (BWL) 335 that may be utilized to determine client system capabilities in response to a standard workload.
  • BWL benchmark workloads
  • the workload database 308 communicates with control system 304 .
  • Control system 304 receives original workload 322 and transfers it to the interface 320 through line 330 .
  • the interface 320 then transfers the workload 322 to the network 102 through line 114 .
  • This workload 322 is ultimately received as workload 204 by client system 108 , 110 or 112 , as shown in FIG. 2A .
  • the result 324 is ultimately received by the control system 304 through interface 320 and line 328 .
  • the control system 304 may consider the capabilities of the client systems 108 , 110 and 112 to which the control system 304 is sending workloads. For example, if client 108 has more processing power than client 110 , the control system 304 may allocate and send more difficult or larger workloads. Thus, client 108 may receive WL 1 336 and WL 2 338 , while client 110 would only receive WL 3 .
  • the workload database 308 could be organized with differing levels of processing power or capability requirements for each workload. In this way, WL 1 336 may represent a greater processing or system capability requirement than WL 2 338 .
  • workload may be a processing task, a data storage task, or tied to any other of a variety of capabilities that may be utilized on the client systems 108 , 110 . . . 112 .
  • an incentive system may be utilized.
  • This incentive system may be designed as desired. Incentives may be provided to the user or owner of the clients systems when the client system is signed-up to participate in the distributed processing system, when the client system completes a workload for the distributed processing system, or any other time during the process. In addition, incentives may be based upon the capabilities of the client systems, based upon a benchmark workload that provides a standardized assessment of the capabilities of the client systems, or based upon any other desired criteria.
  • the server systems 104 may be designed to send out a standard benchmark workload once an hour to each client system 108 , 110 . . . 112 . If a client system is not available at that time for any reason, the workload would not be completed by the client system, and there would be no incentive value generated for that client system.
  • the benchmark workload may be a timed work-set that would exercise each subsystem with capabilities within the client system that was desired to be measured. A more capable client system would then generate greater incentive values from executing the benchmark workload, as compared to a lesser capable client system. These incentive values may be utilized as desired to determine what the client system should get in return for its efforts.
  • the number of entries in the sweepstakes may be tied to the system's performance of the benchmark workload.
  • the faster or better client system performs the benchmark workload the more entries the client system would receive.
  • the server systems 104 includes a sweepstakes system 306 that functions with control system 304 to provide incentives for the users or owners of client systems 108 , 110 and 112 to allow their system capabilities to be used by the server systems 104 .
  • the control system 304 may determine a sweepstakes entry value 302 that is sent along line 310 to the sweepstakes system 306 .
  • the sweepstakes system 306 may then receive sweepstakes entry 332 and provide it to the sweepstakes engine 330 through line 334 .
  • the sweepstakes engine 330 may process the entries and determine a winner, when desired.
  • entries to the sweepstakes may be generated each time a unit of work is accomplished by one or more of the subsystems within a client system 108 , 110 or 112 via an agent installed on the device for the purposes of managing and completing units of work.
  • the total entries for any period of time would, therefore, be dynamic depending on how many are received. Odds of winning would then be determined by the total number of entries received and the total number of entries contributable to any given entrant.
  • FIG. 3B is another example block diagram of a distributed processing system 300 including servers systems 104 , customer systems 152 , client systems 134 and out-sourced host systems 340 , according to the present invention.
  • the servers systems 104 may include an analytic subsystem 346 , a results/workload production subsystem 344 , a project pre-processing subsystem 242 , a client agent subsystem 243 , and an incentive advertising subsystem 245 .
  • the incentive advertising subsystem 245 may operated to provide advertising information, for example, the upgrade incentive information as discussed with respect to FIG. 2D .
  • the client agent subsystem 243 may operate to download an agent to the client systems 134 and to update this agent at times when the server systems 104 are communicating with the client systems 134 .
  • the customer systems 152 which represent customers that have projects that they desired to be processed by the distributed processing system, may be connected to the project preprocessing subsystem 342 to provide projects to the servers systems 104 . These projects are processed by the project pre-processing subsystem 342 and passed to the results/workloads production subsystem 344 , which produces and sends out workloads 130 and receives back results 130 .
  • the analytic system 346 then takes the results and processes them as desired. Completed project information may then be provided from the analytic system 346 to the customer systems 152 . In this manner, the projects of the customer systems 152 may be processed and project results reported by the distributed processing system of the present invention.
  • the workloads 130 and the results 132 , or other tasks of the server systems 104 may be processed and handled by out-sourced host systems 340 , if desired.
  • some or all of the workloads 130 may be sent first to out-sourced host systems 340 .
  • Out-sourced host systems 340 then send workloads 130 A to the client systems 134 and receive back results 132 A.
  • the out-sourced host systems 340 then send the results 132 back to the server systems 104 .
  • this out-sourcing of server system tasks may be implemented as desired for any given task that the server systems 104 may have.
  • the server systems 104 may perform all of the desired functions of the server systems 104 so that no out-sourced host systems 340 would be used.
  • FIG. 3C is a block diagram for one embodiment of a server system processor 350 , according to the present invention.
  • An agent abstraction layer 360 may send workloads 130 and receive results 132 .
  • the security subsystem 354 may interact with the agent abstraction layer 360 and provide information to a data parser 352 and an application programming interface (APIs) block 356 .
  • the APIs block 356 , the data parser 352 and a workload manager 558 may interact to accomplish the desired tasks for the server system processor 350 . It is noted that for this embodiment, the API protocol could be controlled and provided to other host systems.
  • FIG. 3D is an alternative block diagram for a server system processor 350 , according to the present invention.
  • the APIs block 356 and the agent abstraction layer 360 are not present.
  • the data parser 352 , the workload manager 358 and the security subsystem 354 interact to provide the desired server system tasks. It is noted that for this embodiment, the security subsystem is controlled and utilized for communicating with client systems.
  • FIG. 4 is a functional block diagram for a sweepstakes operation 400 by the system server 104 according to the present invention.
  • the server systems 104 may sign-up client systems in “accept clients” block 402 .
  • the server systems 104 identifies the capabilities of the client's computer and processing systems in the “determine client system capabilities” block 404 .
  • Control passes along line 420 to the “distribute workloads to client systems” block 406 , where the server systems 104 allocates workloads to each client system 108 , 110 and 112 .
  • This workload may also be an benchmark workload, as indicated above, that acts as an entry workload to determine the entries or entry values for the client system.
  • the server system 104 may take into consideration the capabilities of the client systems to which workloads are being distributed.
  • the client systems 108 , 110 and 112 then operate to complete the workloads allocated to them.
  • the server system 104 receives back workload results in “receive workload results” block 408 .
  • the server system 104 determines the entry value for the workload completed or for a standard benchmark or entry workload completed. This entry value may be weighted upon a variety of factors including factors such as the amount of work completed, the difficulty level of the processing required, and the accuracy of the results. It is noted that any desired weighting may be utilized. Thus, it is understood that a wide variety of considerations may be utilized to determine the entry value weighting for the sweepstakes.
  • the entry value may also be determined, in whole or in part, when a client system signs on to the distributed processing distributed system of the present invention. For example, if a client system has state-of-the-art CPU, video processor, DSP engine, memory, and large amounts of free disk storage space, a high entry value may be allocated to this client system up-front. In contrast, a client system that has a slow CPU, a weak video processor, no DSP engine, little memory, and little free disk storage space may be allocated a small entry value. In this way, the owners or users of the client systems may be provided immediate feedback as to the potential sweepstakes entry value of their computer systems, devices and system capabilities.
  • the entry value may take any desired form and may be, for example, a multiplier that will be used for each unit of workload completed.
  • a state-of-the-art system will yield a high multiplier, where as an older system, system capability or device will yield a low multiplier.
  • Such feedback whether communicated to the owner or user immediately upon signing up or upon completion of each workload, will create an incentive for owners and/or users to acquire state-of-the-art systems, thereby further increasing the potential processing power of the distributed processing system of the present invention.
  • workload projects may be designated with different entry values, as well.
  • some workload projects may require particular hardware or software processing systems within a client system or device.
  • the number of client systems that are capable of performing the task would be limited.
  • the entry value for taking on particular workloads and/or systems with the desired features may be allocated higher entry values.
  • the sweepstakes entries are processed and stored as desired.
  • “end of entry period” decision block 414 represents a determination of whether the time for getting entries into the sweepstakes has ended. If not, the control continues to line 430 and back to blocks 402 , 404 and/or 406 , depending upon what is desired. Once the entry period has ended, control flows along line 432 to “determine winners” block 416 . The server system 104 then identifies from among the entries, who the winning client system or systems will be.
  • the entry period may be any desired time frame and may include multiple overlapping time frames, as desired. For example, winners may be determined daily for entries each day, monthly for entries within a month, and/or yearly for entries within one year. In addition, special entry periods may be generated, if desired, for example where a particularly important workload project had a short time frame in which it needed to be completed.
  • FIGS. 1 , 2 A-C, 3 A-D, and 4 are directed to example embodiments for a distributed processing system according to the present invention, including a sweepstakes reward or incentive feature, as shown in the embodiments of FIG. 3A and FIG. 4 .
  • FIGS. 6A and 6B further describe a capabilities scheduling feature, in which the server systems 104 may identify and consider any of a variety of client system capability vectors in determining how to organize, allocate and manage workloads and projects.
  • FIGS. 5A and 5B describe a distributed processing system and workload project that accomplishes network site indexing.
  • FIGS. 7A and 7B describe a distributed processing system and a workload project that accomplishes network site testing, such as quality of service (QoS) testing and load testing.
  • FIG. 8 describes a distributed processing system, preferably with respect to a corporate intranet, that accomplishes distributed data back-up.
  • FIG. 5A is a block diagram for a distributed processing system 550 for a network site indexing application, according to the present invention.
  • the network 102 may be a wide variety of networks.
  • the network 102 may preferably be the Internet having a multitude of network sites 552 . . . 554 .
  • Each network site 552 . . . 554 may have a variety of different content types that may be indexed, ranging from complex sites to relatively simple sites.
  • network site 552 includes text 570 A, images 570 B, audio streams 570 C, video streams 570 D, files 570 E and other content 570 F.
  • Network site 554 is less complex and includes text 572 A, images 572 B, and other content 572 C. Both network sites 552 and 554 are connected to the network 102 through communication lines 558 and 556 , respectively.
  • the server systems 104 manage workloads for the client systems 108 , 110 . . . 112 .
  • the client systems 108 , 110 . . . 112 process these workloads and produce indexing results.
  • the resulting index may be stored at a centrally managed site, such as central index storage block 560 , or may itself be distributed over the possibly millions of indexing clients 108 , . . . 112 , as shown by remote index storage blocks 562 , 564 . . . 566 .
  • a master database content index may be stored locally, for example, in the central index storage block 560 . This content index may then direct relevant searches to the distributed massively parallel engine for search queries.
  • FIG. 5B a functional block diagram is shown for a network site indexing operation 500 according to the present invention.
  • any number of computer and processing systems connected to the network 102 there may be any number of computer and processing systems connected to the network 102 . Any one of these other systems 106 may publish information on the network 102 for access by any other system connected to the network 102 .
  • This information to be indexed may take a wide variety of forms, including, for example, text, images, audio streams, video streams, databases, spreadsheets, PDF files, Shockwave data, Flash data, applications, data files, chat streams, or any other information, data or data streams that may be accessible on a network site.
  • the distributed processing system of the present invention may have as a workload the task of indexing this potentially massive amount of information.
  • the Internet uses an IP (Internet Protocol) address protocol to direct traffic around the Internet.
  • IP Internet Protocol
  • the IP address is the address of a computer attached to a TCP/IP (Transmission Control Protocol/Internet Protocol) network. Every system on the network must have a unique IP address. IP addresses are typically written as four sets of numbers separated by periods.
  • the TCP/IP packet uses 32 bits to contain the IP address, which is made up of a network and host address (NETID and HOSTID). The more bits used for network address, the fewer remain for hosts.
  • Web pages within a particular web site with a unique address may be addressed through URLs (Uniform Resource Locator) associated with that web site.
  • URLs Uniform Resource Locator
  • IP addresses there is a limited, but very large, number of possible IP addresses for uniquely identifiable Internet sites that may be accessed and analyzed to generate an index of Internet sites and web pages via URLs.
  • the operation diagram of FIG. 5B starts with the “clients receive indexing workloads” block 502 .
  • the system server 104 provides the clients systems 108 , 110 . . . 112 with a workload task to index a portion of the information accessible on the network 102 .
  • each workload may be single IP address or groups of URLs or, in some cases, large data types contained on single sites or pages.
  • the “clients interact with other systems” block 504 represents the operation of the agent installed on the client systems 108 , 110 . . . 112 to access the network sites, according to the assigned workload, and index the information accessible on that site.
  • This indexing may include all types of information accessible on that site, including text, audio, image, video, etc.
  • the client systems 108 , 110 and 112 complete the workload tasks, get the results ready for transmission, and sends those results back to the system server 104 in “clients complete workload” block 506 and “indexing results sent to server system” block 508 .
  • Control passes along line 520 to “index compiled for use” block 510 where the server system formats and/or compiles the results for use.
  • the index results may be utilized for accurate, complete and up-to-date search information for the network 102 .
  • the resulting index may be stored remotely or locally following line 522 .
  • element 524 represents remote storage of the index
  • element 526 represents central storage of the index.
  • the index may also be stored with a mixture of central and remote storage, as desired.
  • a directory or summary index for the resulting index may be generated and stored centrally, if desired.
  • FIG. 6A is a block diagram for a server system 104 according to the present invention, including a control system 304 , a workload database 308 , and a database of capability vectors 620 .
  • the workload database 308 includes a variety of sets of workload projects WL 1 , WL 2 . . . WLN. For each workload project, there may be multiple workload units.
  • workload project WL 1 includes workload units WL 11 , WL 12 . . . WL 1 N, as represented by elements 640 , 642 . . . 644 , respectively.
  • workload project WL 2 includes workload units WL 21 , W 122 . . . WL 2 N, as represented by elements 646 , 648 . . . 650 , respectively
  • workload project WL 3 includes workload units WL 31 , W 132 . . . WL 3 N, as represented by elements 652 , 654 . . . 656 , respectively.
  • the server system may access various system vectors when a client system signs up to provide processing time and other system or device capabilities to the server system.
  • This capability scheduling helps facilitate project operation and completion.
  • the capability vector database 620 keeps track of any desired feature of client systems or devices in capability vectors CBV 1 , CBV 2 CBVN, represented by elements 628 , 630 . . . 632 , respectively. These capability vectors may then be utilized by the control system 304 through line 626 to capability balance workloads.
  • This capability scheduling according to the present invention allows for the efficient management of the distributed processing system of the present invention.
  • This capability scheduling and distribution will help maximize throughput, deliver timely responses for sensitive workloads, calculate redundancy factors when necessary, and in general, help optimize the distributed processing computing system of the present invention.
  • TABLE 1 provides lists of capability vectors or factors that may be utilized. It is noted that this list is an example list, and any number of vectors or factors may be identified and utilized, as desired.
  • BIOS Support a. BIOS Type (brand) b. ACPI c. S1, S2, S3, and S4 sleep/wake states d. D1, D2 and D3 ACPI device states e. Remote Wake Up Via Modem f. Remote Wake Up Via Network g. CPU Clock Control h. Thermal Management control i. Docked/Undocked state control j. APM 1.2 support k. Hotkey support 1. Resume on Alarm, Modem Ring and LAN m. Password Protected Resume from Suspend n. Full-On power mode o. APM/Hardware Doze mode p. Stand-by mode q. Suspend to DRAM mode r. Video Logic Power Down s.
  • CPU Support a. CPU Type (brand) b. MMX instruction set c. SIMD instruction set d. WNI instruction set e. 3DNow instruction set f. Other processor dependent g. Raw integer performance instruction set(s) h. Raw FPU performance i. CPU L1 data cache size j. CPU L1 instruction cache size k. CPU L2 cache size l. CPU speed (MHz/GHz . . . ) m. System bus (MH/GHz . . . ) speed supported n. Processor Serial Number o. CPUID 3. Graphic Support a. Graphics type (brand) b. # of graphics engines c.
  • Storage Support a. Storage Type (brand) b. Storage Type (fixed, removable, c. Total storage capacity etc.) d. Free space e. Throughout speed f. Seek time g. User dedicated space for current workload h. SMART capable 5.
  • Communication Support a. Type of Connection (brand of ISP) b. Type of Connection Device (brand c. Hardware device capabilities of hardware) d. Speed of connection e. Latency of connection f. Round trip packet time of g. Number of hops on connection connection type h. Automatic connection support i. Dial-up only (yes/no) (yes/no) j.
  • Broadband type (brand) k. Broadband connection type (DLS/Sat./Cable/T1/Intranet/etc.) 7.
  • Memory a. Type of memory error correction (none, ECC, etc.) b. Type of memory supported (EDO, c. Amount of total memory SDRAM, RDRAM, etc.) d. Amount of free memory e. Current virtual memory size f. Total available virtual memory size 8.
  • Operating System a. Type of operating system (brand) b. Version of operating system c. Health of operating system
  • FIG. 6B is a functional block diagram for capabilities determination and scheduling operation 600 for workloads in a distributed processing system according to the present invention.
  • various vectors are identified for which capability information is desired in the “identify client system capability vectors” block 602 .
  • the server systems 104 then capability balances workloads among client systems 108 , 110 and 112 based upon the capability vectors in the “capability scheduling workloads based on vectors” block 604 .
  • the capabilities scheduled workloads are sent to the client systems 104 for processing in the “send capability scheduled workloads” block 606 .
  • FIG. 7A is a block diagram for a network 102 according to the present invention, including example network sites 106 A and 106 B on which site testing is to be conducted, such as load testing and/or quality-of-service (QoS) testing.
  • FIG. 7A is similar to FIG. 1 except that other systems 106 in FIG. 1 has been represented in the embodiment of FIG. 7A with network sites 106 A and 106 B.
  • Communication line 116 A between the network 102 and the network site 106 A represents a interaction by one client system 108 , 110 , and 112 .
  • Communication lines 116 B, 116 C, and 116 D represent interactions by more than one client system 108 , 110 , and 112 .
  • Site testing is typically desired to determine how a site or connected service performs under any desired set of test circumstances.
  • site performance testing may be conducted using any number of real client systems 108 , 110 , and 112 , rather than simulated activity that is currently available.
  • Several tests that are commonly desired are site load tests and quality of service (QoS) tests.
  • Quality of service (QoS) testing refers to testing a user's experience accessing a network site under normal usability situations.
  • Load testing refers to testing what a particular network site's infrastructure can handle in user interactions.
  • An extreme version of load testing is a denial-of-service attack, where a system or group of systems intentionally attempt to overload and shut-down a network site.
  • the current invention will have actual systems testing network web sites, as opposed to simulated tests for which others in the industry are capable.
  • Network site 106 B and the multiple interactions represented by communication lines 116 A, 116 B and 116 C are intended to represent a load testing environment.
  • Network site 106 A and the single interaction 116 A is indicative of a user interaction or QoS testing environment. It is noted that load testing, QoS testing and any other site testing may be conducted with any number of interactions from client systems desired, and the timing of those interactions may be manipulated and controlled to achieve any desired testing parameters. It is further noted that periodically new load and breakdown statistics will be provided for capacity planning.
  • FIG. 7B is a functional block diagram for a site-testing operation 700 according to the present invention.
  • client systems 108 , 110 and 112 receive workloads that identify testing procedures and parameters in the “clients receive testing workload” block 702 .
  • the client systems 108 , 110 and 112 access the site being tested and perform the testing in block “clients interact with other systems” block 704 .
  • the client systems 108 , 110 and 112 complete the site testing workload tasks, get the results ready for transmission, and send those results back to the system server 104 in “clients complete testing workload” block 706 and “site testing results sent to server system” block 708 .
  • the site testing results may be utilized determining modifications that need to be made to the network site to handle peek volume activities.
  • FIG. 8 is a block diagram for a distributed processing system 800 for a data back-up system application, according to the present invention.
  • the network 102 may be a wide variety of networks, including an intranet network.
  • Intranet networks such as internal networks set up by corporations, are particularly suited for this application because the systems holding the data being backed-up would be owned by the same entity owning other systems with excess data storage capabilities. In this way, security would not be as great of an issue and the client system types could be better controlled. It is noted, however, that this data back-up application would be equally applicable to other networks, such as for computer systems connected through the Internet.
  • client systems 108 , 110 . . . 112 are shown each having a backup data blocks 804 , 806 . . . 808 .
  • Customer systems 152 is shown as having data 802 , which is desired to be backed-up with the distributed back-up system 800 .
  • the server systems 104 manage the flow of data from the data 802 and the client systems that have extra storage space represented by back-up data blocks 804 , 806 . . . 808 .
  • the server systems 104 identifies client system storage capabilities. With this information, the server systems 104 can receive data for back-up from any system on the network 102 .
  • the client systems 108 , 110 . . . 112 and the customer systems 152 may communicate directly with each other in peer-to-peer type communications.
  • the server systems 104 may also manage the storage and transfer of data so that the data will be readily retrievable once backed-up and stored on the client systems 108 , 110 . . . 112 . If desired, an summary index ore directory of the backed-up data may be stored centrally on the server systems 104 , or may be stored centrally on the server systems 104 , or may be stored remotely on the client systems 108 , 110 . . . 112 . It is also noted that the server systems 104 may also distribute data back-up workloads so that each portion of the data 802 is stored redundantly on at least two of the client systems 108 , 110 . . . 112 . This redundancy provides added security should any one or more client systems suddenly cease to be operational.

Abstract

A sweepstakes incentive model and associated system for a distributed processing system are disclosed that identify the capabilities of distributed devices connected together through a wide variety of communication systems and networks and aggregate these distributed device capabilities to accomplish desired distributed workload objectives.

Description

    RELATED APPLICATIONS
  • This application is a continuation of and claims priority to co-pending U.S. patent application Ser. No. 09/794,969 entitled “System and Method for Monetizing Network Connected User Bases Utilizing Distributed Processing Systems” filed Feb. 27, 2001 to Hubbard, the disclosure of which is incorporated by reference in its entirety herein.
  • U.S. patent application Ser. No. 09/794,969 is a continuation in part of and claims priority to the following applications: U.S. patent application Ser. No. 09/539,023 entitled “Sweepstakes Incentive Model and Associated System” to Hubbard, and to U.S. patent application Ser. No. 09/539,448 entitled “Capability-Based Distributed Parallel Processing System and Associated Method” to Hubbard, and to U.S. patent application Ser. No. 09/539,428 entitled “Method of Managing Distributed Workloads and Associated System” to Hubbard, and to U.S. Pat. No. 6,891,802 entitled “Network Site Testing Method and Associated System” to Hubbard, and to U.S. Pat. No. 6,654,783 entitled “Network Site Content Indexing Method and Associated System” to Hubbard, and to U.S. patent application Ser. No. 09/539,107 entitled “Distributed Back-Up System and Associated Method” to Hubbard, and to U.S. Pat. No. 7,003,547 entitled “Distributed Parallel Processing System Having Capability-Based Incentives and Associated Method” to Hubbard, each of which was filed on Mar. 30, 3000, and the disclosure of each of which is incorporated by reference in its entirety herein.
  • U.S. patent application Ser. No. 09/794,969 is also a continuation in part of and claims priority to the following applications: U.S. patent application Ser. No. 09/602,844 entitled “Data Conversion Services and Associated Distributed Processing System” to Hubbard, and to U.S. Pat. No. 6,963,897 entitled “Customer Services and Advertising Based Upon Device Attributes and Associated Distributed Processing System” to Hubbard, and to U.S. Pat. No. 7,020,678 entitled “Machine Generated Sweepstakes Entry Model and Associated Distributed Processing System” to Hubbard, and to U.S. patent application Ser. No. 09/603,740 entitled “Method of Managing Workloads and Associated Distributed Processing System” to Hubbard, and to U.S. Pat. No. 7,082,474 entitled “Data Sharing and File Distribution Method and Associated Distributed Processing System” to Hubbard, each of which was filed on Jun. 23, 2000, and the disclosure of each of which is incorporated by reference in its entirety herein.
  • U.S. patent application Ser. No. 09/794,969 is also a continuation in part of and claims priority to U.S. Pat. No. 6,847,995 entitled “Security Architecture for Distributed Processing Systems and Associated Method” to Hubbard which was filed on Aug. 25, 2000, the disclosure of which is incorporated by reference in its entirety herein.
  • BACKGROUND
  • Prior processing systems have included the technique of multiple users within a company sharing processing time available on a mainframe or central processing system. Using small segments of mainframe processing time, departments within the company would often incur costs associated with using the processing time, which in turn was billed back to each department from the central information technology (IT) organization for the company. In other instances, a company could pay for and utilize processing time made available by third-party companies who possessed an over-capacity of mainframe processing power. These third-party companies would, in effect, create a market for the mainframe processing time that went unused by the internal organizations of that third-party company.
  • Prior processing techniques have also included distributed processing projects that have utilized the Internet or World Wide Web. These distributed processing research projects have used a multitude of personal computers (PCs) connected to the Internet to provide processing power to accomplish research project goals. Research project goals have been, for example, identifying large prime numbers, analyzing radio telescope data, and analyzing code keys in an encryption deciphering contest.
  • One example of a distributed processing project on the Internet is a research project housed at the University of California at Berkeley to analyze sky recording data gathered by SETI (the Search for Extraterrestrial Intelligence). This sky recording data has been gathered for some time from the large Arecibo Radio Telescope in Puerto Rico.
  • The processing power needed to analyze these data recordings was very large. At the peak of SETI's capture activities, SETI had accumulated over 100,000 years of signals to process, as measured by the compute power necessary to process all the signals. To analyze this data, software was developed that could be downloaded to Internet connected PCs so that these PCs could process small slices of these sky recordings. In under a year, this project, called SETI home (URL in March 2000-www.setiathome.ssl.berkeley.edu) has completely processed this backlog of data and is now returning to the sky recording dataset for further processing tasks. This massively parallel distributed system currently has a processing throughput of over 10 TFLOPs (terraFLOPS or 1012 floating point operations per second) running on about 1.8 million Internet connected machines.
  • Another example of a distributed processing technique was developed and implemented by Distributed.net (URL in March 2000-www.distributed.net) to compete in encryption breaking contests. Distributed.net created and distributed a client software program which may be downloaded by client systems connected to the Internet. This client software then acts as part of a large distributed processing system specifically designed to break encrypted messages on the Internet. Using this processing technique, Distributed.net has won encryption breaking contests sponsored by RSA Labs, which is an Internet security company. In these contests, RSA Labs has offered a monetary prize to the winner of the encryption contest. In organizing its efforts, Distributed.net has offered a share of this monetary prize to the client system that actually breaks the encryption code. In addition, Distributed.net keeps track of overall project statistics, as well as statistics concerning the efforts of its client systems through individual and team rankings by amount of processing completed.
  • Entropia.com (URL in March 2000—www.entropia.com) has utilized an Internet distributed processing system to compete in contests directed to identifying the largest prime number. Entropia.com also offers its computing power to other research projects. Users may sign on to be part of the distributed processing for free. For the largest prime number contest, Entropia.com, like Distributed.net, offers a monetary prize to the Internet connected PC that comes up with the first prime number achieved in a new order of magnitude. For other research projects, the incentive is simply to be a part of the research project.
  • Another distributing processing web site is provided by Process Tree Network (URL in March 2000—www.processtree.com). This web site is attempting to sign-up Internet connected computer systems to provide processing power for paying projects. For a project, each partner system, when connected to the Internet, will have client software that downloads a job unit and processes that job unit. The incentive offered by the Process Tree Network are “micro-payments” for the amount of work completed by any given system. These micro-payments are apparently small amounts of some total project value based upon the amount of the project completed by the given system through the jobs it has processed. In addition, each partner is given a bonus percentage of payments made to persons they sign-up as new partners.
  • In completely unrelated Internet activities outside the distributed processing arena, there have been a number of sites that have utilized a sweepstakes model as an incentive for consumer behavior. One of the most popular (currently, as of March 2000) sweepstakes sites is IWON.COM (www.iwon.com) IWON.COM is a standard Internet search and content portal that provides an incentive to users by giving them entries to a sweepstakes when the users use the portal. The more the users use the portal, the more entries the user generates, up to a limit, for example, up to 100/day. Currently (as of March 2000), at the end of each day, IWON.COM has chosen a $10,000 winner from among the entries. At the end of each month, IWON.COM has chosen a $1,000,000 winner. And, at the end of the current sweeps period (as of March 2000), IWON.COM plans to draw a single winner for a $10,000,000 grand prize, IWON.COM has created this sweepstakes model to introduce an Internet portal in late 1999 and make it a web site that has as a comparable number of people using it as does Internet portals that have existed for many years, such as, for example. Yahoo.com (URL in March 2000-www.yahoo.com).
  • Significantly, these prior distributed processing projects have failed to fully utilize the 20 capabilities of connected distributed devices.
  • SUMMARY
  • The present invention provides a distributed parallel processing system that identifies the capabilities of distributed devices connected together through a wide variety of communication systems and networks and provides a sweepstakes incentives to aggregate these distributed device capabilities to accomplish processing, storage, broadcasting or any other desired project objective.
  • In one broad respect, the present invention is a method of operating a distributed parallel processing system, including providing a server system, coupling the server system to a network, the network being connectable to distributed devices, and providing entries to a sweepstakes as an incentive to couple the distributed devices to the server system through the network so that the distributed devices are capable of performing workloads for the distributed parallel processing system.
  • In another broad respect, the present invention is a distributed parallel processing system, including a server system coupled to a network, the network being connectable to distributed devices, a capability database coupled to the server system storing workload capability factors associated with the plurality of distributed devices, and a sweepstakes database coupled to the server system, the sweepstakes database storing entries associated with a plurality of the distributed devices, and the plurality of distributed devices being capable of performing a workload for the distributed parallel processing system.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • It is noted that the appended drawings illustrate only exemplary embodiments of the invention and are, therefore, not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
  • FIG. 1A is a block diagram for a distributed processing system having client capability and incentive features, according to the present invention.
  • FIG. 1B is a block diagram for information flow among customer systems, server systems and client systems, according to the present invention.
  • FIG. 2A is a block diagram for a client system, according to the present invention.
  • FIG. 2B is a block diagram for processing elements within a client system, according to the present invention.
  • FIG. 2C is a block diagram for a client system agent installed on a client system, according to the present invention.
  • FIG. 2D is an example user interface for a client system agent, including incentive advertising, according to the present invention.
  • FIG. 3A is a block diagram for server systems, according to the present invention, including a control system, a sweepstakes system and a workload database.
  • FIG. 3B is a block diagram for servers systems, customer systems, client systems and outsourced host systems, according to the present invention.
  • FIG. 3C is a block diagram for a server system processor, according to the present invention.
  • FIG. 3D is an alternative block diagram for a server system processor, according to the present invention.
  • FIG. 4 is a functional block diagram for an example sweepstakes incentive operation according to the present invention.
  • FIG. 5A is a block diagram for a distributed processing system for a network site indexing application, according to the present invention.
  • FIG. 5B is a functional block diagram for an indexing operation according to the present invention.
  • FIG. 6A is a block diagram for a server system according to the present invention, including a control system, a workload database, and a database of client capabilities balancing vectors.
  • FIG. 6B is a functional block diagram for client capabilities balancing of workloads according to the present invention.
  • FIG. 7A is a block diagram for a distributed processing system, according to the present invention, including example network sites on which site testing is to be conducted, such as load testing and/or quality-of-service (QoS) testing.
  • FIG. 7B is a functional block diagram for site-testing, according to the present invention.
  • FIG. 8 is a block diagram for a distributed processing system for a data backup application, according to the present invention.
  • DETAILED DESCRIPTION
  • The present invention contemplates the identification of the capabilities of distributed devices connected together through a wide variety of communication systems and networks and the aggregation of these capabilities to accomplish processing, storage, broadcasting or any other desired project objective. For example, distributed devices connected to each other through the Internet, an intranet network, a wireless network, or any other network may provide any of a number of useful capabilities to third parties once their respective capabilities are identified, organized, and managed for a desired task. These distributed devices may be connected personal computer systems (PCs), internet appliances, notebook computers, servers, storage devices, network attached storage (NAS) devices, wireless devices, hand-held devices, or any other computing device that has useful capabilities and is connected to a network in any manner. The present invention further contemplates providing an incentive, which may be based in part upon capabilities of the distributed devices, to encourage users and owners of the distributed devices to allow the capabilities of the distributed devices to be utilized in the distributed parallel processing system of the present invention.
  • The number of usable distributed devices contemplated by the present invention is preferably very large. Unlike a small local network environment, for example, as may be used by an Internet Service Provider (ISP), which may include less than 100 interconnected computers systems to perform the tasks required by the ISP, the present invention preferably utilizes a multitude of widely distributed devices to provide a massively distributed processing system. With respect to the present invention, a multitude of distributed devices refers to greater than 1,000 different distributed devices. With respect to the present invention, widely distributed devices refers to a group of interconnected devices of which at least two are physically located at least 100 miles apart. With respect to the present invention, a massively distributed processing system is one that utilizes a multitude of widely distributed devices. The Internet is an example of a interconnected system that includes a multitude of widely distributed devices. An intranet system at a large corporation is an example of an interconnected system that includes multitude of distributed devices, and if multiple corporate sites are involved, may include a multitude of widely distributed devices. A distributed processing system according to the present invention that utilizes such a multitude of widely distributed devices, as are available on the Internet or in a large corporate intranet, is a massively distributed processing system according to the present invention.
  • FIG. 1A is a block diagram for a distributed parallel processing system 100 according to the present invention. The network 102 is shown having a cloud outline to indicate the unlimited and widely varying nature of the network and of attached client types. For example, the network 102 may be the Internet, an internal company intranet, a local area network (LAN), a wide area network (WAN), a wireless network, or any other system that connects together multiple systems and devices. In addition, network 102 may include any of these types of connectivity systems by themselves or in combination, for example, computer systems on a company intranet connected to computer systems of the Internet.
  • FIG. 1A also shows client systems 108, 110 . . . 112 connected to the network 102 through communication links 118, 120 . . . 122, respectively. In addition, server systems 104, other systems 106, and customer systems 152 are connected to the network 102 through communication links 114, 116 and 119, respectively. The client system capabilities block 124 is a subset of the server systems 104 and represents a determination of the capabilities of the client systems 108, 110 . . . 112. The incentives block 126 is also a subset of the server systems 104 and represents an incentive provided to the users or owners of the clients systems 108, 110 . . . 112 for allowing capabilities of the clients systems 108, 110 . . . 112 to be utilized by the distributed processing system 100. The client systems 108, 110 and represent any number of systems and/or devices that may be identified, organized and utilized by the server systems 104 to accomplish a desired task, for example, personal computer systems (PCs), internet appliances, notebook computers, servers, storage devices, network attached storage (NAS) devices, wireless devices, hand-held devices, or any other computing device that has useful capabilities and is connected to a network in any mariner. The server systems 104 represent any number of processing systems that provide the function of identifying, organizing and utilizing the client systems to achieve the desired tasks.
  • The incentives provided by the incentives block 126 may be any desired incentive. For example, the incentive may be a sweepstakes in which entries are given to client systems 108, 110 . . . 112 that are signed up to be utilized by the distributed processing system 100. Other example incentives are reward systems, such as airline frequent-flyer miles, purchase credits and vouchers, payments of money, monetary prizes, property prizes, free trips, time-share rentals, cruises, or any other desired incentive or reward.
  • As indicated above, any number of other systems may also be connected to the network 102. The element 106, therefore, represents any number of a variety of other systems that may be connected to the network 102. The other systems 106 may include ISPs, web servers, university computer systems, and any other distributed device connected to the network 102, for example, personal computer systems (PCs), interact appliances, notebook computers, servers, storage devices, network attached storage (NAS) devices, wireless devices, hand-held devices, or any other connected computing device that has useful capabilities and is connected to a network in any manner. The customer systems 152 represents customers that have projects for the distributed processing system, as further described with respect to FIG. 1B. The customer systems 152 connect to the network 102 through the communication link 119.
  • It is noted that the communication links 114, 116, 118, 119, 120, and 122 may allow for communication to occur, if desired, between any of the systems connected to the network 102. For example, client systems 108, 110, . . . 112 may communicate directly with each other in peer-to-peer type communication. It is further noted that the communication links 114, 116, 118, 119, 120, and 122 may be any desired technique for connecting into any portion of the network 102, such as Ethernet connections, wireless connections, ISDN connections, DSL connections, modem dial-up connections, cable modem connections, direct T1 or T3 connections, routers, portal computers, as well as any other network or communication connection. It is also noted that there are any number of possible configurations for the connections for network 102, according to the present invention. The client system 108 may be, for example, an individual personal computer located in someone's home and may be connected to the Internet through an Internet Service Provider (ISP). Client system 108 may also be a personal computer located on an employee's desk at a company, may be connected to an intranet through a network router, and may be connected to the Internet through a second router or portal computer. Client system 108 may further be personal computers connected to a company's intranet, and the server systems 104 may also be connected to that same intranet. In short, a wide variety of network environments are contemplated by the present invention on which a large number of potential client systems are connected.
  • FIG. 1B is a block diagram information flow 150 among customer systems 152, server systems 104 and client system 134, according to the present invention. The server systems 104, as discussed above, may include any number of different subsystems or components, as desired, including client system capabilities block 124 and incentives block 126. The server systems 104 send project and benchmark workloads 130 to client systems 134. A benchmark workload refers to a standard workload that may be used to determine the relative capabilities of the client systems 134. A project workload refers to a workload for a given project that is desired to be completed. The project workload may be, for example, a workload for projects such as network site content indexing, network site testing including network site load testing and network site quality of service testing, data back-up, bioinformatics including genetic and biological analyses, pair-wise comparisons including fingerprint and DNA analyses, data mining, or any other desired project.
  • Client systems 134, as discussed above, may be any number of different systems that are connected to the server systems 104 through a network 102, such as client systems 108, 110 . . . 112 in FIG. 1A. The client systems 134 send results 132 back to the server systems 104 after the client systems 134 complete processing any given workload. Depending upon the workload project, the server systems 104 may then provide results 156 to customer systems 152. The customer systems 152 may be, for example, an entity that desires a given project to be undertaken, and if so, provides the project details and data 158 to the server systems 104.
  • FIG. 2A is a block diagram for an example client system 108 according to the present invention. In this simplified block diagram, an original workload 204 is received through line 208 from an interface 206. The original workload 204 represents a portion of the processing, storage or other activity required to complete the desired task for which the server system 104 is trying to accomplish. This original workload 204 is sent by the server system 104 through the network 102 and received by the client system 108 through communication link 118. The client system 108 processes the original workload 204. Following line 212, results 202 are then stored for transferring along line 210 to interface 206. Interface 206 may then communicate the results back to the server system 104 through communication line 118, or to other client systems (for example, with peering of client systems) and then through the network 102.
  • It is noted that the workload received by the client system 108 and the processing or activity performed may depend up a variety of factors, as discussed further below. In part, this workload allocated by the server system 104 to each client system 108, 110, and 112 may depend upon the capabilities of the client system, such as the processing power, disk storage capacity, communication types, and other capabilities available from the various components of the systems within the client systems 108.
  • The server systems 104 can select the workloads for the client system 108 and may control when these workloads are performed, through an operational code (i.e., an agent) residing and installed on the client system 108. Alternatively, the owner or user of the client system 108 may determine when workloads are procured or obtained from the server systems 104, as well as when these workloads are performed, for example, by accessing the server systems 104 through the network 102. For example, the sever system 104 may download to the client system 108 upon request one or more workloads. At the same time, an agent residing on the client system 108 may operate to process the workload or multiple workloads downloaded to the client system 108. It is noted, therefore, that the agent may be simultaneously managing more than one workload for any number of projects. When the workload is complete, the agent may inform the owner or user of the client system 108 the results are ready to be communicated back. The client system 108 may then upload results to the server system 104 and download new workloads, if desired. Alternatively, these logistical and operational interactions may take place automatically through control of the agent and/or the server systems 104.
  • FIG. 2B is a block diagram for processing elements within a client system 108 according to the present invention. In this diagram, client system 108 is contemplated as a personal computer. In a personal computer, and internal bus 260 would typically have a variety of different devices connected to it. For example, a CPU 250 could be connected through the bus 260 to a video processor 252, a floating point processor 254 (often integrated within the CPU itself), and digital signal processors (DSPs), such as those found on sound cards and modems. In addition, any of a variety of other processing devices 258 may be included. Furthermore, other types of devices may be connected, such as hard drives 264, which provide disk storage capabilities, and a digital camera 262.
  • It is noted, therefore, that the capabilities for client systems 108, 110 . . . 112 may span the entire range of possible computing, processing, storage and other subsystems or devices that are connected to a system connected to the network 102. For example, these subsystems or devices may include: central processing units (CPUs), digital signal processors (DSPs), graphics processing engines (GPEs), hard drives (HDs), memory (MEM), audio subsystems (ASs), communications subsystems (CSs), removable media types (RMs), and other accessories with potentially useful unused capabilities (OAs). In short, for any given computer system connected to a network 102, there exists a variety of capabilities that may be utilized by that system to accomplish its direct tasks. At any given time, however, only a fraction of these capabilities are typically used on the client systems 108, 110 . . . 112. The present invention can take advantage of these unused capabilities.
  • It is also noted that along with receiving the workload, the client system 108 will also receive an agent that manages the completion of the workload. This agent may be software that is customized for the particular computer system and processing capabilities of the client system 108. For example, if the client system is a personal computer as shown in FIG. 2B, the agent may be a program that operates in the background of the computer's operating system. When the agent determines that there is unused processing or other capabilities, the agent may take advantage of it. For example, if the user is using a word processing application to create a document, little processing power is being utilized by the word processing program, leaving the computer's CPU and video processor underutilized. Thus, the agent may facilitate the completion of workload processing in a reduced time. In addition, this agent may be self-updating upon connecting to the server systems 104, so that the agent may be kept up to date with current software revisions and workload activities. It is also noted that the agent may manage work on multiple workloads at the same time, so that any given distributed device connected to the network 102 may be working on a plurality of workloads at any given time.
  • FIG. 2C is a block diagram for an example client system agent 270. The agent 270 may include a security subsystem 272 that controls the interface of the client system 108 with the agent 270. The security subsystem 272 may help keep the workloads secure and may help to keep the client systems 108 from suffering any security problems in completing the workload. For example, the agent 272 may operate to keep viruses from attacking the client system 108 while the client system 108 is processing the workload through the operation of the agent. The security subsystem 272, therefore, may provide the interface for the workloads 130 and the results 132.
  • The clients system agent 270 may also include a workload engine 274, a statistics/user interface/incentive advertising block 276, and a workload package and update processing block 278. In the example shown in FIG. 2C, workloads 130 pass through the security subsystem 272 and along line 280 to the workload package and update processing block 278. In this block 278, the agent 270 may be updated by the server systems 104. Alternatively, the agent 270 may determine, when connected to the server systems 104, whether it needs to be updated and then accomplish that updating automatically. Once the workload package is processed, the workload engine 274 may receive the workload following line 288. The workload engine 274 works on the workload, ultimately completing the workload. The results or status of the workload may then be sent through the security subsystem 272 following line 282. The results 132 may then be provided back to the server systems 104.
  • The statistics/user interface/incentive advertising block 276 may provide workload, incentive and other statistics, as well as any other desired interface features, to the user of the client system. For example, the block 276 may show a user the expected amount of processing time it will take for the client system to complete a workload task based upon the capabilities of the system. As also shown, the block 276 may receive information following lines 286 and 284 from the workload package and update processing block 278 and from the workload engine 274. If desired, security information from the security subsystem 272 could also be displayed to the user of the client system. It is noted that the information displayed to the user of the client system may be modified and selected as desired without departing from the present invention.
  • With respect to incentive advertising, the block 276 may also show the user of the client system how this processing time might change depending upon various possible upgrades to the capabilities of the system, such as a faster microprocessor, more memory, more disk storage space, etc. Furthermore, the client system capabilities may be shown correlated to the incentives provided to the client system for participation. Thus, the user may be provided information as to how the user's incentives would increase or change depending upon other computer systems or upgraded capabilities the user could acquire. This incentive value increase may also be tied to upgrades to particular vendor's devices. For example, if the user's device is a computer system having an ABC microprocessor, the block 276 may provide the user information as to increased incentive values based upon an upgrade to a more powerful ABC microprocessor. Similarly, if the user's device is a computer system obtained from ABC, the block 276 may provide the user information as to increased incentive values based upon an upgrade to a more powerful ABC computer system.
  • FIG. 2D is a an example user interface 276 for a client system agent, including incentive advertising, according to the present invention. In the example shown, interface 276 is a window 230 that may be displayed on a distributed device, for example, a computer system. This window 230 displays the desired information for the agent client manager. As indicated above, this agent client manager is initially downloaded from the server systems 104 and thereafter may be updated at various times when the client system is communicating with the server systems. The interface 276, as shown, includes interface tabs 221, 222, 224, 226, 228, 244, 246 and 248. These interface tabs may be selected through the user of a pointing device or keyboard attached, for example, to a computer system graphically displaying the window 230. It is noted that the interface tabs 221, 222, 224, 226, 228, 244, 246 and 248 are only examples, and the number, arrangement and content of tabs may be modified as desired. In addition, the example user interface 276 depicted in FIG. 2D is only an example and may be modified as desired.
  • In FIG. 2D, the processor values interface tab 224 is the one currently selected by the user. This tab 224 (Processor Values) includes example information that may be displayed to the user. Assuming that a workload is being processed by the agent client manager, the user may select the button 242 (Show My Incentive Values) to show the user's current incentive values associated with the workload being performed. The personal incentive values chart 232 (My Personal Incentive Values) may then be displayed to the user. As shown, the incentive values are provided in a relative scale from 1 to 10. The key designation 240 represents the incentives associated with the users current central processing unit (CPU) or microprocessor.
  • As indicated above, the incentive may also be tied to the specific vendor of the user's CPU, for example, ABC Company's CPU. Thus, as shown, the key designation 240 (My current processor) and the corresponding bar graph portion 236 represent incentives for the user's current CPU (e.g., a 166 MHz processor). The key designation 238 represents the incentives that the user is projected to have if the user were to upgrade the CPU. Again, this upgrade incentive information may be tied to the specific vendor of the user's CPU or to any other vendor, if desired. Thus, as shown, the key designation 238 (NEW ABC 1 GHz processor!) and the corresponding bar graph portion 234 represent incentives for an upgrade to a new ABC CPU (e.g., a new ABC 1 GHz processor). In this manner, a user may be provided an incentive to increase the capabilities of the distributed device, and a vendor may be provided advertising so that the user is also directed to a particular upgrade.
  • Looking further to FIG. 2D, other similar incentive related information tabs may be provided for any desired capability of the distributed device. For example, tab 246 (Memory Values) represents information that may be provided for the memory capabilities of the distributed device. Tab 224 (Graphics Values) represents information that may be provided for the graphics capabilities of the distributed device. Tab 226 (Communications Values) represents information that may be provided for the communication capabilities of the distributed device. Tab 228 (Storage Values) represents information that may be provided for the storage capabilities of the distributed device. Tab 248 (System Values) represents information that may be provided for the system capabilities as a whole for the distributed device.
  • In addition to these incentive related information tabs, other tabs may be included to provide information and control for any desired features of the agent client manager. For example, the tab 244 (Current: Prime Search) represents information that may be displayed to the user about the current workload being performed by the agent client manager, for example, a search for large prime numbers. The tab 221 (Settings) represents information that may be displayed to the user about various settings for the client agent manager. In particular, the tab 221 may provide the user the ability to control any desired aspect of the operation of the agent client manager. For example, the user may be able to select a portion of the capabilities that may be utilized (e.g., a maximum of 20% of the system memory), the types of workloads that may be performed (e.g., only scientific research projects), the times when the agent may utilize system resources (e.g., only between 12 to 6 am, or only when the system is idle), or any other desired operational feature. It is noted that in addition to upgrade incentive information indicated above, the user may also be provided information as to how incentives would increase if the user allocated or changed the settings for the agent client manager.
  • Now looking to FIG. 3A, the server systems 104 may be one or more computer systems that operate to identify client system capabilities, organize workloads, and utilize client systems to accomplish a desired task. The server systems 104 includes a control system 304 a workload database 308, and a sweepstakes system 306, as discussed more below. The workload database 308 stores any desired project task, which may be broken up into discrete workload tasks WL1, WL2 WLN, as represented by elements 336, 338 . . . 340. The workload database may also store one or more benchmark workloads (BWL) 335 that may be utilized to determine client system capabilities in response to a standard workload. Through line 312, the workload database 308 communicates with control system 304. Control system 304, for example, receives original workload 322 and transfers it to the interface 320 through line 330. The interface 320 then transfers the workload 322 to the network 102 through line 114. This workload 322 is ultimately received as workload 204 by client system 108, 110 or 112, as shown in FIG. 2A. The result 324 is ultimately received by the control system 304 through interface 320 and line 328.
  • In allocating workloads, the control system 304 may consider the capabilities of the client systems 108, 110 and 112 to which the control system 304 is sending workloads. For example, if client 108 has more processing power than client 110, the control system 304 may allocate and send more difficult or larger workloads. Thus, client 108 may receive WL1 336 and WL2 338, while client 110 would only receive WL3. Alternatively, the workload database 308 could be organized with differing levels of processing power or capability requirements for each workload. In this way, WL1 336 may represent a greater processing or system capability requirement than WL2 338. It should be noted that workload may be a processing task, a data storage task, or tied to any other of a variety of capabilities that may be utilized on the client systems 108, 110 . . . 112.
  • As indicated above, to encourage owners or users of client systems to allow their system capabilities to be utilized by control system 104, an incentive system may be utilized. This incentive system may be designed as desired. Incentives may be provided to the user or owner of the clients systems when the client system is signed-up to participate in the distributed processing system, when the client system completes a workload for the distributed processing system, or any other time during the process. In addition, incentives may be based upon the capabilities of the client systems, based upon a benchmark workload that provides a standardized assessment of the capabilities of the client systems, or based upon any other desired criteria.
  • One example use of a benchmark workload is to use the benchmark workload to determine incentive values. For example, the server systems 104 may be designed to send out a standard benchmark workload once an hour to each client system 108, 110 . . . 112. If a client system is not available at that time for any reason, the workload would not be completed by the client system, and there would be no incentive value generated for that client system. In this example, the benchmark workload may be a timed work-set that would exercise each subsystem with capabilities within the client system that was desired to be measured. A more capable client system would then generate greater incentive values from executing the benchmark workload, as compared to a lesser capable client system. These incentive values may be utilized as desired to determine what the client system should get in return for its efforts.
  • For example, if the incentive were a sweepstakes as discussed further below, the number of entries in the sweepstakes may be tied to the system's performance of the benchmark workload. Thus, the faster or better client system performs the benchmark workload, the more entries the client system would receive.
  • In the embodiment shown in FIG. 3A, the server systems 104 includes a sweepstakes system 306 that functions with control system 304 to provide incentives for the users or owners of client systems 108, 110 and 112 to allow their system capabilities to be used by the server systems 104. The control system 304 may determine a sweepstakes entry value 302 that is sent along line 310 to the sweepstakes system 306. The sweepstakes system 306 may then receive sweepstakes entry 332 and provide it to the sweepstakes engine 330 through line 334. The sweepstakes engine 330 may process the entries and determine a winner, when desired. In the embodiment shown, therefore, entries to the sweepstakes may be generated each time a unit of work is accomplished by one or more of the subsystems within a client system 108, 110 or 112 via an agent installed on the device for the purposes of managing and completing units of work. The total entries for any period of time would, therefore, be dynamic depending on how many are received. Odds of winning would then be determined by the total number of entries received and the total number of entries contributable to any given entrant.
  • FIG. 3B is another example block diagram of a distributed processing system 300 including servers systems 104, customer systems 152, client systems 134 and out-sourced host systems 340, according to the present invention. The servers systems 104 may include an analytic subsystem 346, a results/workload production subsystem 344, a project pre-processing subsystem 242, a client agent subsystem 243, and an incentive advertising subsystem 245. The incentive advertising subsystem 245 may operated to provide advertising information, for example, the upgrade incentive information as discussed with respect to FIG. 2D. The client agent subsystem 243 may operate to download an agent to the client systems 134 and to update this agent at times when the server systems 104 are communicating with the client systems 134.
  • The customer systems 152, which represent customers that have projects that they desired to be processed by the distributed processing system, may be connected to the project preprocessing subsystem 342 to provide projects to the servers systems 104. These projects are processed by the project pre-processing subsystem 342 and passed to the results/workloads production subsystem 344, which produces and sends out workloads 130 and receives back results 130. The analytic system 346 then takes the results and processes them as desired. Completed project information may then be provided from the analytic system 346 to the customer systems 152. In this manner, the projects of the customer systems 152 may be processed and project results reported by the distributed processing system of the present invention.
  • Also, as shown, the workloads 130 and the results 132, or other tasks of the server systems 104, may be processed and handled by out-sourced host systems 340, if desired. Thus, some or all of the workloads 130 may be sent first to out-sourced host systems 340. Out-sourced host systems 340 then send workloads 130A to the client systems 134 and receive back results 132A. The out-sourced host systems 340 then send the results 132 back to the server systems 104. It is noted that this out-sourcing of server system tasks may be implemented as desired for any given task that the server systems 104 may have. It is further noted that, if desired, the server systems 104 may perform all of the desired functions of the server systems 104 so that no out-sourced host systems 340 would be used.
  • FIG. 3C is a block diagram for one embodiment of a server system processor 350, according to the present invention. An agent abstraction layer 360 may send workloads 130 and receive results 132. The security subsystem 354 may interact with the agent abstraction layer 360 and provide information to a data parser 352 and an application programming interface (APIs) block 356. The APIs block 356, the data parser 352 and a workload manager 558 may interact to accomplish the desired tasks for the server system processor 350. It is noted that for this embodiment, the API protocol could be controlled and provided to other host systems.
  • FIG. 3D is an alternative block diagram for a server system processor 350, according to the present invention. In this embodiment, the APIs block 356 and the agent abstraction layer 360 are not present. The data parser 352, the workload manager 358 and the security subsystem 354 interact to provide the desired server system tasks. It is noted that for this embodiment, the security subsystem is controlled and utilized for communicating with client systems.
  • FIG. 4 is a functional block diagram for a sweepstakes operation 400 by the system server 104 according to the present invention. In block 402, the server systems 104 may sign-up client systems in “accept clients” block 402. Following line 418, the server systems 104 identifies the capabilities of the client's computer and processing systems in the “determine client system capabilities” block 404. Control passes along line 420 to the “distribute workloads to client systems” block 406, where the server systems 104 allocates workloads to each client system 108, 110 and 112. This workload may also be an benchmark workload, as indicated above, that acts as an entry workload to determine the entries or entry values for the client system. As also indicated above, in distributing the workloads in block 406, the server system 104 may take into consideration the capabilities of the client systems to which workloads are being distributed. The client systems 108, 110 and 112 then operate to complete the workloads allocated to them. The server system 104 receives back workload results in “receive workload results” block 408.
  • At this point, control passes along line 424 to the “determine sweepstakes entries” block 410. In this block 410, the server system 104 determines the entry value for the workload completed or for a standard benchmark or entry workload completed. This entry value may be weighted upon a variety of factors including factors such as the amount of work completed, the difficulty level of the processing required, and the accuracy of the results. It is noted that any desired weighting may be utilized. Thus, it is understood that a wide variety of considerations may be utilized to determine the entry value weighting for the sweepstakes.
  • Although the weighting determination is shown in block 410 in FIG. 4, the entry value may also be determined, in whole or in part, when a client system signs on to the distributed processing distributed system of the present invention. For example, if a client system has state-of-the-art CPU, video processor, DSP engine, memory, and large amounts of free disk storage space, a high entry value may be allocated to this client system up-front. In contrast, a client system that has a slow CPU, a weak video processor, no DSP engine, little memory, and little free disk storage space may be allocated a small entry value. In this way, the owners or users of the client systems may be provided immediate feedback as to the potential sweepstakes entry value of their computer systems, devices and system capabilities.
  • It is further noted that the entry value may take any desired form and may be, for example, a multiplier that will be used for each unit of workload completed. In this way, the owner or user will readily be cognizant that a state-of-the-art system will yield a high multiplier, where as an older system, system capability or device will yield a low multiplier. Such feedback, whether communicated to the owner or user immediately upon signing up or upon completion of each workload, will create an incentive for owners and/or users to acquire state-of-the-art systems, thereby further increasing the potential processing power of the distributed processing system of the present invention.
  • In addition, different workload projects may be designated with different entry values, as well. For example, some workload projects may require particular hardware or software processing systems within a client system or device. Thus, the number of client systems that are capable of performing the task would be limited. To further encourage participation by those owners or users with capable systems, the entry value for taking on particular workloads and/or systems with the desired features may be allocated higher entry values.
  • Referring back to FIG. 4, control passes along line 426 to the “process entries” block 412. In this block 412, the sweepstakes entries are processed and stored as desired. Following line 428, “end of entry period” decision block 414 represents a determination of whether the time for getting entries into the sweepstakes has ended. If not, the control continues to line 430 and back to blocks 402, 404 and/or 406, depending upon what is desired. Once the entry period has ended, control flows along line 432 to “determine winners” block 416. The server system 104 then identifies from among the entries, who the winning client system or systems will be.
  • The entry period may be any desired time frame and may include multiple overlapping time frames, as desired. For example, winners may be determined daily for entries each day, monthly for entries within a month, and/or yearly for entries within one year. In addition, special entry periods may be generated, if desired, for example where a particularly important workload project had a short time frame in which it needed to be completed.
  • FIGS. 1, 2A-C, 3A-D, and 4 are directed to example embodiments for a distributed processing system according to the present invention, including a sweepstakes reward or incentive feature, as shown in the embodiments of FIG. 3A and FIG. 4. FIGS. 6A and 6B further describe a capabilities scheduling feature, in which the server systems 104 may identify and consider any of a variety of client system capability vectors in determining how to organize, allocate and manage workloads and projects. FIGS. 5A and 5B describe a distributed processing system and workload project that accomplishes network site indexing. FIGS. 7A and 7B describe a distributed processing system and a workload project that accomplishes network site testing, such as quality of service (QoS) testing and load testing. And FIG. 8 describes a distributed processing system, preferably with respect to a corporate intranet, that accomplishes distributed data back-up.
  • FIG. 5A is a block diagram for a distributed processing system 550 for a network site indexing application, according to the present invention. As stated above with respect to FIG. 1A, the network 102 may be a wide variety of networks. For this network site indexing application, the network 102 may preferably be the Internet having a multitude of network sites 552 . . . 554. Each network site 552 . . . 554 may have a variety of different content types that may be indexed, ranging from complex sites to relatively simple sites. For example, network site 552 includes text 570A, images 570B, audio streams 570C, video streams 570D, files 570E and other content 570F. Network site 554 is less complex and includes text 572A, images 572B, and other content 572C. Both network sites 552 and 554 are connected to the network 102 through communication lines 558 and 556, respectively.
  • As discussed above, the server systems 104 manage workloads for the client systems 108, 110 . . . 112. The client systems 108, 110 . . . 112 process these workloads and produce indexing results. The resulting index may be stored at a centrally managed site, such as central index storage block 560, or may itself be distributed over the possibly millions of indexing clients 108, . . . 112, as shown by remote index storage blocks 562, 564 . . . 566. If remote index storage is utilized, a master database content index may be stored locally, for example, in the central index storage block 560. This content index may then direct relevant searches to the distributed massively parallel engine for search queries.
  • Referring now to FIG. 5B, a functional block diagram is shown for a network site indexing operation 500 according to the present invention. As described in FIG. 1 with respect to other systems 106, there may be any number of computer and processing systems connected to the network 102. Any one of these other systems 106 may publish information on the network 102 for access by any other system connected to the network 102. This information to be indexed may take a wide variety of forms, including, for example, text, images, audio streams, video streams, databases, spreadsheets, PDF files, Shockwave data, Flash data, applications, data files, chat streams, or any other information, data or data streams that may be accessible on a network site. The distributed processing system of the present invention may have as a workload the task of indexing this potentially massive amount of information.
  • For example, where the network 102 is the Internet or a large intranet, a large amount of processing power and time is needed to create an accurate, complete and up-to-date index of the information. The Internet uses an IP (Internet Protocol) address protocol to direct traffic around the Internet. The IP address is the address of a computer attached to a TCP/IP (Transmission Control Protocol/Internet Protocol) network. Every system on the network must have a unique IP address. IP addresses are typically written as four sets of numbers separated by periods. The TCP/IP packet uses 32 bits to contain the IP address, which is made up of a network and host address (NETID and HOSTID). The more bits used for network address, the fewer remain for hosts. Web pages within a particular web site with a unique address may be addressed through URLs (Uniform Resource Locator) associated with that web site. In short, there is a limited, but very large, number of possible IP addresses for uniquely identifiable Internet sites that may be accessed and analyzed to generate an index of Internet sites and web pages via URLs.
  • The operation diagram of FIG. 5B starts with the “clients receive indexing workloads” block 502. In this block, the system server 104 provides the clients systems 108, 110 . . . 112 with a workload task to index a portion of the information accessible on the network 102. For example, with the Internet, each workload may be single IP address or groups of URLs or, in some cases, large data types contained on single sites or pages. Following line 514, the “clients interact with other systems” block 504 represents the operation of the agent installed on the client systems 108, 110 . . . 112 to access the network sites, according to the assigned workload, and index the information accessible on that site. This indexing may include all types of information accessible on that site, including text, audio, image, video, etc.
  • Next, following lines 516 and 518, the client systems 108, 110 and 112 complete the workload tasks, get the results ready for transmission, and sends those results back to the system server 104 in “clients complete workload” block 506 and “indexing results sent to server system” block 508. Control passes along line 520 to “index compiled for use” block 510 where the server system formats and/or compiles the results for use. For example, the index results may be utilized for accurate, complete and up-to-date search information for the network 102. As indicated with respect to FIG. 5A, the resulting index may be stored remotely or locally following line 522. Thus, element 524 represents remote storage of the index, and element 526 represents central storage of the index. It is noted that the index may also be stored with a mixture of central and remote storage, as desired. In addition, as indicated above, a directory or summary index for the resulting index may be generated and stored centrally, if desired.
  • FIG. 6A is a block diagram for a server system 104 according to the present invention, including a control system 304, a workload database 308, and a database of capability vectors 620. The workload database 308 includes a variety of sets of workload projects WL1, WL2 . . . WLN. For each workload project, there may be multiple workload units. For example, workload project WL1 includes workload units WL11, WL12 . . . WL1N, as represented by elements 640, 642 . . . 644, respectively. Similarly, workload project WL2 includes workload units WL21, W122 . . . WL2N, as represented by elements 646, 648 . . . 650, respectively workload project WL3 includes workload units WL31, W132 . . . WL3N, as represented by elements 652, 654 . . . 656, respectively.
  • It may be expected that different workload projects WL1, WL2 WLN within the workload database 308 may require widely varying processing requirements. Thus, in order to better direct resources to workload projects, the server system may access various system vectors when a client system signs up to provide processing time and other system or device capabilities to the server system. This capability scheduling helps facilitate project operation and completion. In this respect, the capability vector database 620 keeps track of any desired feature of client systems or devices in capability vectors CBV1, CBV2 CBVN, represented by elements 628, 630 . . . 632, respectively. These capability vectors may then be utilized by the control system 304 through line 626 to capability balance workloads.
  • This capability scheduling according to the present invention, therefore, allows for the efficient management of the distributed processing system of the present invention. This capability scheduling and distribution will help maximize throughput, deliver timely responses for sensitive workloads, calculate redundancy factors when necessary, and in general, help optimize the distributed processing computing system of the present invention. The following TABLE 1 provides lists of capability vectors or factors that may be utilized. It is noted that this list is an example list, and any number of vectors or factors may be identified and utilized, as desired.
  • TABLE 1
    Example Client Capability Vectors of Factors
    1. BIOS Support: a. BIOS Type (brand)
    b. ACPI c. S1, S2, S3, and S4 sleep/wake
    states
    d. D1, D2 and D3 ACPI device states e. Remote Wake Up Via Modem
    f. Remote Wake Up Via Network g. CPU Clock Control
    h. Thermal Management control i. Docked/Undocked state control
    j. APM 1.2 support k. Hotkey support
    1. Resume on Alarm, Modem Ring and LAN m. Password Protected Resume from Suspend
    n. Full-On power mode o. APM/Hardware Doze mode
    p. Stand-by mode q. Suspend to DRAM mode
    r. Video Logic Power Down s. HDD, FDD and FDC Power Down
    t. Sound Chip Power Down u. Super I/O Chip Power Down
    2. CPU Support: a. CPU Type (brand)
    b. MMX instruction set c. SIMD instruction set
    d. WNI instruction set e. 3DNow instruction set
    f. Other processor dependent g. Raw integer performance
    instruction set(s)
    h. Raw FPU performance i. CPU L1 data cache size
    j. CPU L1 instruction cache size k. CPU L2 cache size
    l. CPU speed (MHz/GHz . . . ) m. System bus (MH/GHz . . . ) speed
    supported
    n. Processor Serial Number o. CPUID
    3. Graphic Support a. Graphics type (brand)
    b. # of graphics engines c. Memory capacity
    d. OpenGL support e. Direct3D/DirectX support
    f. Color depth supported g. MPEG 1/II decode assist
    h. MPEG1/II encode assist i. OS support
    j. Rendering type(s) supported k. Single-Pass Multiplexing support
    l. True Color Rendering m. Triangle Setup Engine
    n. Texture Cache o. Bilinear/Trilinear Filtering
    p. Anti-aliasing support q. Texture Compositing
    r. Texture Decompression s. Perspectively Correct Texture
    Mapping
    t. Mip-Mapping u. Z-buffering and Double-buffering
    support
    v. Bump mapping w. Fog effects
    z. Reflection support aa. Shadows support
    4. Storage Support a. Storage Type (brand)
    b. Storage Type (fixed, removable, c. Total storage capacity
    etc.)
    d. Free space e. Throughout speed
    f. Seek time g. User dedicated space for current
    workload
    h. SMART capable
    5. System a. System Type (brand)
    b. System form factor (desktop,
    portable, workstation, server, etc.)
    6. Communication Support a. Type of Connection (brand of
    ISP)
    b. Type of Connection Device (brand c. Hardware device capabilities
    of hardware)
    d. Speed of connection e. Latency of connection
    f. Round trip packet time of g. Number of hops on connection
    connection type
    h. Automatic connection support i. Dial-up only (yes/no)
    (yes/no)
    j. Broadband type (brand) k. Broadband connection type
    (DLS/Sat./Cable/T1/Intranet/etc.)
    7. Memory a. Type of memory error correction
    (none, ECC, etc.)
    b. Type of memory supported (EDO, c. Amount of total memory
    SDRAM, RDRAM, etc.)
    d. Amount of free memory e. Current virtual memory size
    f. Total available virtual memory size
    8. Operating System a. Type of operating system (brand)
    b. Version of operating system c. Health of operating system
  • FIG. 6B is a functional block diagram for capabilities determination and scheduling operation 600 for workloads in a distributed processing system according to the present invention. Initially, various vectors are identified for which capability information is desired in the “identify client system capability vectors” block 602. Following line 612, the server systems 104 then capability balances workloads among client systems 108, 110 and 112 based upon the capability vectors in the “capability scheduling workloads based on vectors” block 604. Then the capabilities scheduled workloads are sent to the client systems 104 for processing in the “send capability scheduled workloads” block 606.
  • FIG. 7A is a block diagram for a network 102 according to the present invention, including example network sites 106A and 106B on which site testing is to be conducted, such as load testing and/or quality-of-service (QoS) testing. FIG. 7A is similar to FIG. 1 except that other systems 106 in FIG. 1 has been represented in the embodiment of FIG. 7A with network sites 106A and 106B. Communication line 116A between the network 102 and the network site 106A represents a interaction by one client system 108, 110, and 112. Communication lines 116B, 116C, and 116D represent interactions by more than one client system 108, 110, and 112.
  • Site testing is typically desired to determine how a site or connected service performs under any desired set of test circumstances. With the distributed processing system of the present invention, site performance testing may be conducted using any number of real client systems 108, 110, and 112, rather than simulated activity that is currently available. Several tests that are commonly desired are site load tests and quality of service (QoS) tests. Quality of service (QoS) testing refers to testing a user's experience accessing a network site under normal usability situations. Load testing refers to testing what a particular network site's infrastructure can handle in user interactions. An extreme version of load testing is a denial-of-service attack, where a system or group of systems intentionally attempt to overload and shut-down a network site. Advantageously, the current invention will have actual systems testing network web sites, as opposed to simulated tests for which others in the industry are capable.
  • Network site 106B and the multiple interactions represented by communication lines 116A, 116B and 116C are intended to represent a load testing environment. Network site 106A and the single interaction 116A is indicative of a user interaction or QoS testing environment. It is noted that load testing, QoS testing and any other site testing may be conducted with any number of interactions from client systems desired, and the timing of those interactions may be manipulated and controlled to achieve any desired testing parameters. It is further noted that periodically new load and breakdown statistics will be provided for capacity planning.
  • FIG. 7B is a functional block diagram for a site-testing operation 700 according to the present invention. Initially, client systems 108, 110 and 112 receive workloads that identify testing procedures and parameters in the “clients receive testing workload” block 702. Following line 714, the client systems 108, 110 and 112 access the site being tested and perform the testing in block “clients interact with other systems” block 704. Next, following lines 716 and 718, the client systems 108, 110 and 112 complete the site testing workload tasks, get the results ready for transmission, and send those results back to the system server 104 in “clients complete testing workload” block 706 and “site testing results sent to server system” block 708. Control passes along line 720 to “site testing results compiled for use” block 510 where the server system formats and/or compiles the results for use by the network site. For example, the site testing results may be utilized determining modifications that need to be made to the network site to handle peek volume activities.
  • FIG. 8 is a block diagram for a distributed processing system 800 for a data back-up system application, according to the present invention. As stated above with respect to FIG. 1A, the network 102 may be a wide variety of networks, including an intranet network. Intranet networks, such as internal networks set up by corporations, are particularly suited for this application because the systems holding the data being backed-up would be owned by the same entity owning other systems with excess data storage capabilities. In this way, security would not be as great of an issue and the client system types could be better controlled. It is noted, however, that this data back-up application would be equally applicable to other networks, such as for computer systems connected through the Internet.
  • Referring back to FIG. 8, client systems 108, 110 . . . 112 are shown each having a backup data blocks 804, 806 . . . 808. Customer systems 152 is shown as having data 802, which is desired to be backed-up with the distributed back-up system 800. The server systems 104 manage the flow of data from the data 802 and the client systems that have extra storage space represented by back-up data blocks 804, 806 . . . 808. In operation, the server systems 104 identifies client system storage capabilities. With this information, the server systems 104 can receive data for back-up from any system on the network 102. It is noted, and as indicated with respect to FIG. 1A, the client systems 108, 110 . . . 112 and the customer systems 152 may communicate directly with each other in peer-to-peer type communications.
  • The server systems 104 may also manage the storage and transfer of data so that the data will be readily retrievable once backed-up and stored on the client systems 108, 110 . . . 112. If desired, an summary index ore directory of the backed-up data may be stored centrally on the server systems 104, or may be stored centrally on the server systems 104, or may be stored remotely on the client systems 108, 110 . . . 112. It is also noted that the server systems 104 may also distribute data back-up workloads so that each portion of the data 802 is stored redundantly on at least two of the client systems 108, 110 . . . 112. This redundancy provides added security should any one or more client systems suddenly cease to be operational.
  • Further modifications and alternative embodiments of this invention will be apparent to those skilled in the art in view of this description. It will be recognized, therefore, that the present invention is not limited by these example arrangements. Accordingly, this description is to be construed as illustrative only and is for the purpose of teaching those skilled in the art the manner of carrying out the invention. It is to be understood that the forms of the invention herein shown and described are to be taken as the presently preferred embodiments. Various changes may be made in the shape, size and arrangement of parts. For example, equivalent elements may be substituted for those illustrated and described herein, and certain features of the invention may be utilized independently of the use of other features, all as would be apparent to one skilled in the art after having the benefit of this description of the invention.

Claims (20)

1. A method of operating a distributed processing system, comprising:
offering a sweepstakes as an incentive for client devices to join the distributed processing system;
determining, at least in part with a computing device, a workload capability of one or more client devices;
assigning a sweepstakes entry value to individual client devices of the one or more client devices based, at least in part, on the workload capability of the one or more client devices; and
determining a winner of the sweepstakes, based at least in part, on sweepstakes entry values of the one or more client devices.
2. The method of claim 1, wherein determining the workload capability further comprises:
allocating a workload to the one or more client devices;
receiving a workload result based on completion of the workload by the one or more client devices; and
determining the workload capability of the one or more client devices based at least in part on the workload result.
3. The method of claim 2, wherein the workload comprises a benchmark workload.
4. The method of claim 2, wherein the workload comprises at least one of a network site testing workload, a network site indexing workload, a bioinformatics workload, a pair-wise comparison workload, or a data mining workload.
5. The method of claim 1, wherein the sweepstakes entry value increases for increased capabilities of the one or more client devices.
6. The method of claim 1, wherein the workload capability of the one or more client devices is based at least in part on a processor capability of the one or more client devices.
7. The method of claim 1, wherein the workload capability of the one or more client devices is based at least in part on a storage capability of the one or more client devices.
8. A system, comprising:
a server system configured to be coupled to one or more client devices and configured to:
offer a sweepstakes as an incentive for client devices to join a distributed processing system;
determine a workload capability of one or more client devices;
assign a sweepstakes entry value to individual client devices of the one or more client devices based, at least in part, on the workload capability of the one or more client devices; and
determine a winner of the sweepstakes, based at least in part, on sweepstakes entry values of the one or more client devices.
9. The system of claim 8, wherein the server system is further configured to determine the workload capability by:
allocating a workload to the one or more client devices;
receiving a workload result based on completion of the workload by the one or more client devices; and
determining the workload capability of the one or more client devices based at least in part on the workload result.
10. The system of claim 9, wherein the workload comprises a benchmark workload.
11. The system of claim 9, wherein the workload comprises at least one of a network site testing workload, a network site indexing workload, a bioinformatics workload, a pair-wise comparison workload, or a data mining workload.
12. The system of claim 8, wherein the sweepstakes entry value increases for increased capabilities of the one or more client devices.
13. The system of claim 8, wherein the workload capability of the one or more client devices is based at least in part on a processor capability of the one or more client devices.
14. The system of claim 8, wherein the workload capability of the one or more client devices is based at least in part on a storage capability of the one or more client devices.
15. A distributed processing system comprising:
a server system configured to be coupled to a plurality of client devices, wherein the server system is configured to offer a sweepstakes as an incentive for client devices to join a distributed processing system;
a capability database coupled to the server system and configured to store workload capability factors associated with the plurality of client devices; and
a sweepstakes database coupled to the server system and configured to store sweepstakes entry values associated with the plurality of client devices, the sweepstakes entry values being useable to determine a winner of the sweepstakes.
16. The system of claim 15, wherein the server system is further configured to utilize the workload capability factors to determine the sweepstakes entry values.
17. The system of claim 15, wherein the server system is configured to determine a sweepstakes entry value for a client device by:
allocating a workload to the client device;
receiving a workload result based on completion of the workload by the client device; and
determining the sweepstakes entry value for the client device based at least in part on workload result.
18. The system of claim 17, wherein the workload comprises a benchmark workload.
19. The system of claim 15, wherein the workload capability of the client device is based at least in part on a processor capability of the client device.
20. The system of claim 15, wherein the workload capability of the client device is based at least in part on a storage capability of the client device.
US12/580,149 2000-03-30 2009-10-15 Sweepstakes Incentive Model and Associated System Abandoned US20100036723A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/580,149 US20100036723A1 (en) 2000-03-30 2009-10-15 Sweepstakes Incentive Model and Associated System

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US53942800A 2000-03-30 2000-03-30
US53944800A 2000-03-30 2000-03-30
US53902300A 2000-03-30 2000-03-30
US53910700A 2000-03-30 2000-03-30
US09/539,106 US6891802B1 (en) 2000-03-30 2000-03-30 Network site testing method and associated system
US09/538,542 US6654783B1 (en) 2000-03-30 2000-03-30 Network site content indexing method and associated system
US09/538,543 US7003547B1 (en) 2000-03-30 2000-03-30 Distributed parallel processing system having capability-based incentives and associated method
US60284400A 2000-06-23 2000-06-23
US60374000A 2000-06-23 2000-06-23
US09/602,789 US7020678B1 (en) 2000-03-30 2000-06-23 Machine generated sweepstakes entry model and associated distributed processing system
US09/602,983 US6963897B1 (en) 2000-03-30 2000-06-23 Customer services and advertising based upon device attributes and associated distributed processing system
US09/602,803 US7082474B1 (en) 2000-03-30 2000-06-23 Data sharing and file distribution method and associated distributed processing system
US09/648,832 US6847995B1 (en) 2000-03-30 2000-08-25 Security architecture for distributed processing systems and associated method
US09/794,969 US20010039497A1 (en) 2000-03-30 2001-02-27 System and method for monitizing network connected user bases utilizing distributed processing systems
US12/580,149 US20100036723A1 (en) 2000-03-30 2009-10-15 Sweepstakes Incentive Model and Associated System

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/794,969 Continuation US20010039497A1 (en) 2000-03-30 2001-02-27 System and method for monitizing network connected user bases utilizing distributed processing systems

Publications (1)

Publication Number Publication Date
US20100036723A1 true US20100036723A1 (en) 2010-02-11

Family

ID=27585115

Family Applications (3)

Application Number Title Priority Date Filing Date
US09/794,969 Abandoned US20010039497A1 (en) 2000-03-30 2001-02-27 System and method for monitizing network connected user bases utilizing distributed processing systems
US09/834,785 Active 2025-07-28 US8275827B2 (en) 2000-03-30 2001-04-13 Software-based network attached storage services hosted on massively distributed parallel computing networks
US12/580,149 Abandoned US20100036723A1 (en) 2000-03-30 2009-10-15 Sweepstakes Incentive Model and Associated System

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US09/794,969 Abandoned US20010039497A1 (en) 2000-03-30 2001-02-27 System and method for monitizing network connected user bases utilizing distributed processing systems
US09/834,785 Active 2025-07-28 US8275827B2 (en) 2000-03-30 2001-04-13 Software-based network attached storage services hosted on massively distributed parallel computing networks

Country Status (6)

Country Link
US (3) US20010039497A1 (en)
EP (1) EP1360580A2 (en)
JP (1) JP2004513406A (en)
AU (1) AU6455101A (en)
CA (1) CA2403895A1 (en)
WO (1) WO2001073545A2 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020013832A1 (en) * 2000-03-30 2002-01-31 Hubbard Edward A. Software-based network attached storage services hosted on massively distributed parallel computing networks
US20040103139A1 (en) * 2000-03-30 2004-05-27 United Devices, Inc. Distributed processing system having sensor based data collection and associated method
US20090132649A1 (en) * 2000-03-30 2009-05-21 Niration Network Group, L.L.C. Method of Managing Workloads and Associated Distributed Processing System
US20090222508A1 (en) * 2000-03-30 2009-09-03 Hubbard Edward A Network Site Testing
USRE42153E1 (en) 2000-03-30 2011-02-15 Hubbard Edward A Dynamic coordination and control of network connected devices for large-scale network site testing and associated architectures
US8010703B2 (en) 2000-03-30 2011-08-30 Prashtama Wireless Llc Data conversion services and associated distributed processing system
US20130117273A1 (en) * 2011-11-03 2013-05-09 Electronics And Telecommunications Research Institute Forensic index method and apparatus by distributed processing
US10430247B2 (en) * 2012-06-29 2019-10-01 Emc Corporation Blueprint-driven environment template creation in a virtual infrastructure

Families Citing this family (256)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082474B1 (en) 2000-03-30 2006-07-25 United Devices, Inc. Data sharing and file distribution method and associated distributed processing system
US7254607B2 (en) 2000-03-30 2007-08-07 United Devices, Inc. Dynamic coordination and control of network connected devices for large-scale network site testing and associated architectures
US6891802B1 (en) 2000-03-30 2005-05-10 United Devices, Inc. Network site testing method and associated system
US7039670B2 (en) 2000-03-30 2006-05-02 United Devices, Inc. Massively distributed processing system with modular client agent and associated method
US6654783B1 (en) 2000-03-30 2003-11-25 Ethergent Corporation Network site content indexing method and associated system
US6963897B1 (en) 2000-03-30 2005-11-08 United Devices, Inc. Customer services and advertising based upon device attributes and associated distributed processing system
US7003547B1 (en) 2000-03-30 2006-02-21 United Devices, Inc. Distributed parallel processing system having capability-based incentives and associated method
US7020678B1 (en) 2000-03-30 2006-03-28 United Devices, Inc. Machine generated sweepstakes entry model and associated distributed processing system
US20020082854A1 (en) * 2000-12-27 2002-06-27 Fujitsu Limited Profits sharing system for agency service, method thereof, and computer readable recording medium
US6915274B2 (en) * 2001-03-14 2005-07-05 Hewlett-Packard Development Company, L.P. Reverse logistics method for recapturing value of used goods over internet exchange portals
US7076459B2 (en) * 2001-03-21 2006-07-11 Hewlett-Packard Development Company, Lp. Demand estimation using auction price analysis
US7392287B2 (en) * 2001-03-27 2008-06-24 Hemisphere Ii Investment Lp Method and apparatus for sharing information using a handheld device
KR100363030B1 (en) * 2001-03-27 2002-11-30 서영현 Data shared method by using internet and its system
US6996548B2 (en) * 2001-05-11 2006-02-07 Hemisphere Ii Investment Lp Method and apparatus for providing a reward for the use of a processor in a parallel processing environment
US7243153B2 (en) * 2001-06-26 2007-07-10 Eastman Kodak Company System and method for managing images over a communication network
US7124191B2 (en) * 2001-06-26 2006-10-17 Eastman Kodak Company Method and system for managing images over a communication network
AU2001286697A1 (en) * 2001-07-16 2003-03-03 America Online Incorporated Method and apparatus for calendaring reminders
US20030046335A1 (en) * 2001-08-30 2003-03-06 International Business Machines Corporation Efficiently serving large objects in a distributed computing network
US7349941B2 (en) * 2001-12-10 2008-03-25 Intel Corporation Data transfer over a network communication system
US8001052B2 (en) 2001-12-10 2011-08-16 Dunkeld Bryan C System and method for unique digital asset identification and transaction management
US7159080B1 (en) * 2001-12-20 2007-01-02 Network Appliance, Inc. System and method for storing storage operating system data in switch ports
US20030214326A1 (en) * 2002-02-11 2003-11-20 Craimer Stephen G. Distributed dynamically optimizable processing communications and storage system
US7165154B2 (en) * 2002-03-18 2007-01-16 Net Integration Technologies Inc. System and method for data backup
US20030177149A1 (en) * 2002-03-18 2003-09-18 Coombs David Lawrence System and method for data backup
JP4266096B2 (en) * 2002-03-26 2009-05-20 株式会社日立製作所 File storage system and NAS server
US7430590B1 (en) * 2002-04-17 2008-09-30 Everdream Corporation Method and system to manage services for multiple managed computer systems
JP2003330782A (en) 2002-05-10 2003-11-21 Hitachi Ltd Computer system
US7272605B1 (en) * 2002-05-13 2007-09-18 Netezza Corporation Network interface for distributed intelligence database system
US7491367B2 (en) * 2002-06-04 2009-02-17 Applera Corporation System and method for providing a standardized state interface for instrumentation
US7454458B2 (en) * 2002-06-24 2008-11-18 Ntt Docomo, Inc. Method and system for application load balancing
AU2003275181A1 (en) * 2002-09-18 2004-04-08 Netezza Corporation Programmable streaming data processor for database appliance having multiple processing unit groups
AU2003301474A1 (en) * 2002-10-16 2004-05-04 Synthetic Networks, Inc. Load testing methods and systems with transaction variability andconsistency
US7617273B2 (en) * 2002-11-15 2009-11-10 Sun Microsystems, Inc. Method and apparatus for providing a unified component architecture for client-side and server-side components
US20040122950A1 (en) * 2002-12-20 2004-06-24 Morgan Stephen Paul Method for managing workloads in an autonomic computer system for improved performance
US7703091B1 (en) * 2002-12-31 2010-04-20 Emc Corporation Methods and apparatus for installing agents in a managed network
JP4567293B2 (en) * 2003-01-21 2010-10-20 株式会社日立製作所 file server
US7222173B2 (en) 2003-02-10 2007-05-22 International Business Machines Corporation Limited knowledge of configuration information of a FICON controller
AU2003902636A0 (en) * 2003-02-19 2003-06-12 Metatheme Pty Ltd Risk management
WO2004097624A1 (en) * 2003-04-24 2004-11-11 Neopath Networks, Inc. Large file support for a network file server
US7587422B2 (en) * 2003-04-24 2009-09-08 Neopath Networks, Inc. Transparent file replication using namespace replication
US7346664B2 (en) * 2003-04-24 2008-03-18 Neopath Networks, Inc. Transparent file migration using namespace replication
US7818461B2 (en) * 2003-04-28 2010-10-19 Lsi Corporation Systems and methods for allocating an asset to interconnected devices
US20040236704A1 (en) * 2003-05-22 2004-11-25 Gotfried Bradley L. Method and system for providing a compensation opportunity to a task candidate
US7644153B2 (en) * 2003-07-31 2010-01-05 Hewlett-Packard Development Company, L.P. Resource allocation management in interactive grid computing systems
JP4676724B2 (en) * 2003-08-12 2011-04-27 株式会社リコー Information processing apparatus, information processing method, information processing program, and recording medium
US8539081B2 (en) * 2003-09-15 2013-09-17 Neopath Networks, Inc. Enabling proxy services using referral mechanisms
KR100662120B1 (en) * 2003-10-20 2006-12-27 엘지전자 주식회사 Method for using in common memory of household appliances for home networking
US7698428B2 (en) * 2003-12-15 2010-04-13 International Business Machines Corporation Apparatus, system, and method for grid based data storage
US8332483B2 (en) * 2003-12-15 2012-12-11 International Business Machines Corporation Apparatus, system, and method for autonomic control of grid system resources
US7680933B2 (en) * 2003-12-15 2010-03-16 International Business Machines Corporation Apparatus, system, and method for on-demand control of grid system resources
US20080235317A1 (en) * 2004-01-27 2008-09-25 Tom Burgmans System and Method For Providing an Extended Computing Capacity
US8051483B2 (en) 2004-03-12 2011-11-01 Fortinet, Inc. Systems and methods for updating content detection devices and systems
US7665670B2 (en) * 2004-03-25 2010-02-23 Siemens Industry, Inc. Method and apparatus for an integrated distributed MEMS based control system
US20050216560A1 (en) * 2004-03-26 2005-09-29 Seppo Pohja Marketing using distributed computing
US8195627B2 (en) 2004-04-23 2012-06-05 Neopath Networks, Inc. Storage policy monitoring for a storage network
US7720796B2 (en) * 2004-04-23 2010-05-18 Neopath Networks, Inc. Directory and file mirroring for migration, snapshot, and replication
US8190741B2 (en) * 2004-04-23 2012-05-29 Neopath Networks, Inc. Customizing a namespace in a decentralized storage environment
US20050262361A1 (en) * 2004-05-24 2005-11-24 Seagate Technology Llc System and method for magnetic storage disposal
US7490295B2 (en) 2004-06-25 2009-02-10 Apple Inc. Layer for accessing user interface elements
JP2006018430A (en) * 2004-06-30 2006-01-19 Ricoh Co Ltd Information processor, network system, program, data structure and storage medium
US7480717B2 (en) * 2004-07-08 2009-01-20 International Business Machines Corporation System and method for path saturation for computer storage performance analysis
US8898256B2 (en) * 2004-07-13 2014-11-25 International Business Machines Corporation Prioritization of application component distribution
JP4677412B2 (en) * 2004-11-08 2011-04-27 インターナショナル・ビジネス・マシーンズ・コーポレーション A method for backing up data across multiple clients
US8964765B2 (en) 2004-11-12 2015-02-24 Broadcom Corporation Mobile handheld multi-media gateway and phone
US8346910B2 (en) * 2004-11-30 2013-01-01 American Express Travel Related Services Company, Inc. Method and apparatus for managing an interactive network session
US8271574B1 (en) * 2004-12-22 2012-09-18 Hewlett-Packard Development Company, L.P. Content sharing and collaboration
JP4570952B2 (en) 2004-12-28 2010-10-27 富士通株式会社 High speed information processing apparatus, high speed information processing method and program thereof
US7844691B2 (en) * 2004-12-30 2010-11-30 Xstor Systems, Inc. Scalable distributed storage and delivery
US20060168230A1 (en) * 2005-01-27 2006-07-27 Caccavale Frank S Estimating a required number of servers from user classifications
US8316074B2 (en) * 2005-03-11 2012-11-20 Network Appliance, Inc. Network-accessible memory
KR101159788B1 (en) * 2005-03-12 2012-06-26 주진용 Advertising method and advertisement system on the internet
US20060218036A1 (en) * 2005-03-23 2006-09-28 King Michael D System and method for embedding dynamic, server-based questionnaire content within online banner ads
US7689645B2 (en) * 2005-03-24 2010-03-30 Fuji Xerox Co., Ltd. Systems and methods for brokering services
EP1900189B1 (en) * 2005-06-29 2018-04-18 Cisco Technology, Inc. Parallel filesystem traversal for transparent mirroring of directories and files
US8769663B2 (en) * 2005-08-24 2014-07-01 Fortinet, Inc. Systems and methods for detecting undesirable network traffic content
US7827596B2 (en) * 2005-08-25 2010-11-02 International Business Machines Corporation Authenticating computed results in a public distributed computing environment
US8131689B2 (en) * 2005-09-30 2012-03-06 Panagiotis Tsirigotis Accumulating access frequency and file attributes for supporting policy based storage management
US20070094323A1 (en) * 2005-10-25 2007-04-26 Smith Jeffrey C Managed resource sharing method and apparatus
US20070091809A1 (en) * 2005-10-25 2007-04-26 Smith Jeffrey C Managed network resource sharing and optimization method and apparatus
US8543824B2 (en) * 2005-10-27 2013-09-24 Apple Inc. Safe distribution and use of content
US7752556B2 (en) 2005-10-27 2010-07-06 Apple Inc. Workflow widgets
US7707514B2 (en) 2005-11-18 2010-04-27 Apple Inc. Management of user interface elements in a display environment
US8082289B2 (en) 2006-06-13 2011-12-20 Advanced Cluster Systems, Inc. Cluster computing support for application programs
US8934117B2 (en) * 2006-07-10 2015-01-13 Synnex Corporation Equipment management system
US20080015872A1 (en) * 2006-07-12 2008-01-17 Combots Product Gmbh & Co. Kg Method of providing software and a service using the software
US9015197B2 (en) * 2006-08-07 2015-04-21 Oracle International Corporation Dynamic repartitioning for changing a number of nodes or partitions in a distributed search system
US20080033958A1 (en) * 2006-08-07 2008-02-07 Bea Systems, Inc. Distributed search system with security
US8924352B1 (en) 2007-03-31 2014-12-30 Emc Corporation Automated priority backup and archive
US8307341B2 (en) * 2007-04-25 2012-11-06 International Business Machines Corporation Generating customized documentation for a software product
US8954871B2 (en) 2007-07-18 2015-02-10 Apple Inc. User-centric widgets and dashboards
EP3882797A1 (en) 2007-09-24 2021-09-22 Apple Inc. Embedded authentication systems in an electronic device
US8583601B1 (en) 2007-09-28 2013-11-12 Emc Corporation Imminent failure backup
JP2009116432A (en) * 2007-11-02 2009-05-28 Branddialog Inc Application/data transaction management system, and program for the same
US7603428B2 (en) * 2008-02-05 2009-10-13 Raptor Networks Technology, Inc. Software application striping
US8862706B2 (en) 2007-12-14 2014-10-14 Nant Holdings Ip, Llc Hybrid transport—application network fabric apparatus
US8600120B2 (en) 2008-01-03 2013-12-03 Apple Inc. Personal computing device control using face detection and recognition
US8458658B2 (en) * 2008-02-29 2013-06-04 Red Hat, Inc. Methods and systems for dynamically building a software appliance
US8948189B2 (en) * 2008-04-03 2015-02-03 Entropie Communications, Inc. System and method for scheduling reservation requests for a communication network
US8935692B2 (en) * 2008-05-22 2015-01-13 Red Hat, Inc. Self-management of virtual machines in cloud-based networks
US8849971B2 (en) * 2008-05-28 2014-09-30 Red Hat, Inc. Load balancing in cloud-based networks
US8239509B2 (en) 2008-05-28 2012-08-07 Red Hat, Inc. Systems and methods for management of virtual appliances in cloud-based network
US20090300423A1 (en) * 2008-05-28 2009-12-03 James Michael Ferris Systems and methods for software test management in cloud-based network
US9092243B2 (en) 2008-05-28 2015-07-28 Red Hat, Inc. Managing a software appliance
US8108912B2 (en) * 2008-05-29 2012-01-31 Red Hat, Inc. Systems and methods for management of secure data in cloud-based network
US8943497B2 (en) 2008-05-29 2015-01-27 Red Hat, Inc. Managing subscriptions for cloud-based virtual machines
US8868721B2 (en) 2008-05-29 2014-10-21 Red Hat, Inc. Software appliance management using broadcast data
US10657466B2 (en) 2008-05-29 2020-05-19 Red Hat, Inc. Building custom appliances in a cloud-based network
US8341625B2 (en) * 2008-05-29 2012-12-25 Red Hat, Inc. Systems and methods for identification and management of cloud-based virtual machines
US10372490B2 (en) * 2008-05-30 2019-08-06 Red Hat, Inc. Migration of a virtual machine from a first cloud computing environment to a second cloud computing environment in response to a resource or services in the second cloud computing environment becoming available
US9354853B2 (en) * 2008-07-02 2016-05-31 Hewlett-Packard Development Company, L.P. Performing administrative tasks associated with a network-attached storage system at a client
US9842004B2 (en) * 2008-08-22 2017-12-12 Red Hat, Inc. Adjusting resource usage for cloud-based networks
US9910708B2 (en) * 2008-08-28 2018-03-06 Red Hat, Inc. Promotion of calculations to cloud-based computation resources
US10025627B2 (en) 2008-11-26 2018-07-17 Red Hat, Inc. On-demand cloud computing environments
US9210173B2 (en) * 2008-11-26 2015-12-08 Red Hat, Inc. Securing appliances for use in a cloud computing environment
US9870541B2 (en) 2008-11-26 2018-01-16 Red Hat, Inc. Service level backup using re-cloud network
US9037692B2 (en) 2008-11-26 2015-05-19 Red Hat, Inc. Multiple cloud marketplace aggregation
US8782233B2 (en) * 2008-11-26 2014-07-15 Red Hat, Inc. Embedding a cloud-based resource request in a specification language wrapper
US8984505B2 (en) * 2008-11-26 2015-03-17 Red Hat, Inc. Providing access control to user-controlled resources in a cloud computing environment
US8244567B2 (en) * 2008-12-31 2012-08-14 Synnex Corporation Business goal incentives using gaming rewards
US9485117B2 (en) * 2009-02-23 2016-11-01 Red Hat, Inc. Providing user-controlled resources for cloud computing environments
US9930138B2 (en) * 2009-02-23 2018-03-27 Red Hat, Inc. Communicating with third party resources in cloud computing environment
US8977750B2 (en) 2009-02-24 2015-03-10 Red Hat, Inc. Extending security platforms to cloud-based networks
US9311162B2 (en) 2009-05-27 2016-04-12 Red Hat, Inc. Flexible cloud management
US9104407B2 (en) 2009-05-28 2015-08-11 Red Hat, Inc. Flexible cloud management with power management support
US9450783B2 (en) 2009-05-28 2016-09-20 Red Hat, Inc. Abstracting cloud management
US9201485B2 (en) 2009-05-29 2015-12-01 Red Hat, Inc. Power management in managed network having hardware based and virtual resources
US9703609B2 (en) 2009-05-29 2017-07-11 Red Hat, Inc. Matching resources associated with a virtual machine to offered resources
US20100306767A1 (en) * 2009-05-29 2010-12-02 Dehaan Michael Paul Methods and systems for automated scaling of cloud computing systems
US20100332331A1 (en) * 2009-06-24 2010-12-30 Craig Stephen Etchegoyen Systems and Methods for Providing an Interface for Purchasing Ad Slots in an Executable Program
US8239701B2 (en) * 2009-07-28 2012-08-07 Lsi Corporation Methods and apparatus for power allocation in a storage system
US8832459B2 (en) 2009-08-28 2014-09-09 Red Hat, Inc. Securely terminating processes in a cloud computing environment
US8271653B2 (en) * 2009-08-31 2012-09-18 Red Hat, Inc. Methods and systems for cloud management using multiple cloud management schemes to allow communication between independently controlled clouds
US8316125B2 (en) * 2009-08-31 2012-11-20 Red Hat, Inc. Methods and systems for automated migration of cloud processes to external clouds
US8862720B2 (en) * 2009-08-31 2014-10-14 Red Hat, Inc. Flexible cloud management including external clouds
US8504443B2 (en) 2009-08-31 2013-08-06 Red Hat, Inc. Methods and systems for pricing software infrastructure for a cloud computing environment
US8769083B2 (en) 2009-08-31 2014-07-01 Red Hat, Inc. Metering software infrastructure in a cloud computing environment
US8375223B2 (en) * 2009-10-30 2013-02-12 Red Hat, Inc. Systems and methods for secure distributed storage
US8271811B2 (en) * 2009-11-05 2012-09-18 Lsi Corporation Methods and apparatus for load-based power management of PHY logic circuits of a SAS device based upon a current workload
US9971880B2 (en) * 2009-11-30 2018-05-15 Red Hat, Inc. Verifying software license compliance in cloud computing environments
US10402544B2 (en) * 2009-11-30 2019-09-03 Red Hat, Inc. Generating a software license knowledge base for verifying software license compliance in cloud computing environments
US9389980B2 (en) * 2009-11-30 2016-07-12 Red Hat, Inc. Detecting events in cloud computing environments and performing actions upon occurrence of the events
US9529689B2 (en) * 2009-11-30 2016-12-27 Red Hat, Inc. Monitoring cloud computing environments
US10268522B2 (en) * 2009-11-30 2019-04-23 Red Hat, Inc. Service aggregation using graduated service levels in a cloud network
US8498965B1 (en) * 2010-02-22 2013-07-30 Trend Micro Incorporated Methods and apparatus for generating difference files
US9053472B2 (en) 2010-02-26 2015-06-09 Red Hat, Inc. Offering additional license terms during conversion of standard software licenses for use in cloud computing environments
US8606667B2 (en) * 2010-02-26 2013-12-10 Red Hat, Inc. Systems and methods for managing a software subscription in a cloud network
US8255529B2 (en) * 2010-02-26 2012-08-28 Red Hat, Inc. Methods and systems for providing deployment architectures in cloud computing environments
US10783504B2 (en) * 2010-02-26 2020-09-22 Red Hat, Inc. Converting standard software licenses for use in cloud computing environments
US20110214124A1 (en) * 2010-02-26 2011-09-01 James Michael Ferris Systems and methods for generating cross-cloud computing appliances
US11922196B2 (en) * 2010-02-26 2024-03-05 Red Hat, Inc. Cloud-based utilization of software entitlements
US20110213687A1 (en) * 2010-02-26 2011-09-01 James Michael Ferris Systems and methods for or a usage manager for cross-cloud appliances
US8402139B2 (en) * 2010-02-26 2013-03-19 Red Hat, Inc. Methods and systems for matching resource requests with cloud computing environments
US8606897B2 (en) 2010-05-28 2013-12-10 Red Hat, Inc. Systems and methods for exporting usage history data as input to a management platform of a target cloud-based network
US8954564B2 (en) 2010-05-28 2015-02-10 Red Hat, Inc. Cross-cloud vendor mapping service in cloud marketplace
US8504689B2 (en) 2010-05-28 2013-08-06 Red Hat, Inc. Methods and systems for cloud deployment analysis featuring relative cloud resource importance
US8364819B2 (en) 2010-05-28 2013-01-29 Red Hat, Inc. Systems and methods for cross-vendor mapping service in cloud networks
US9436459B2 (en) 2010-05-28 2016-09-06 Red Hat, Inc. Generating cross-mapping of vendor software in a cloud computing environment
US9354939B2 (en) 2010-05-28 2016-05-31 Red Hat, Inc. Generating customized build options for cloud deployment matching usage profile against cloud infrastructure options
US8909783B2 (en) 2010-05-28 2014-12-09 Red Hat, Inc. Managing multi-level service level agreements in cloud-based network
US9202225B2 (en) 2010-05-28 2015-12-01 Red Hat, Inc. Aggregate monitoring of utilization data for vendor products in cloud networks
US8996647B2 (en) 2010-06-09 2015-03-31 International Business Machines Corporation Optimizing storage between mobile devices and cloud storage providers
US9106675B2 (en) 2010-06-17 2015-08-11 International Business Machines Corporation Intelligent network storage planning within a clustered computing environment
US8489809B2 (en) 2010-07-07 2013-07-16 International Business Machines Corporation Intelligent storage provisioning within a clustered computing environment
US8719362B2 (en) * 2010-09-09 2014-05-06 Riverbed Technology, Inc. Tiered storage interface
US9329908B2 (en) * 2010-09-29 2016-05-03 International Business Machines Corporation Proactive identification of hotspots in a cloud computing environment
US20120102462A1 (en) * 2010-10-26 2012-04-26 Microsoft Corporation Parallel test execution
US8612615B2 (en) 2010-11-23 2013-12-17 Red Hat, Inc. Systems and methods for identifying usage histories for producing optimized cloud utilization
US8612577B2 (en) 2010-11-23 2013-12-17 Red Hat, Inc. Systems and methods for migrating software modules into one or more clouds
US9736252B2 (en) 2010-11-23 2017-08-15 Red Hat, Inc. Migrating subscribed services in a cloud deployment
US8904005B2 (en) 2010-11-23 2014-12-02 Red Hat, Inc. Indentifying service dependencies in a cloud deployment
US8909784B2 (en) 2010-11-23 2014-12-09 Red Hat, Inc. Migrating subscribed services from a set of clouds to a second set of clouds
US8825791B2 (en) 2010-11-24 2014-09-02 Red Hat, Inc. Managing subscribed resource in cloud network using variable or instantaneous consumption tracking periods
US8924539B2 (en) 2010-11-24 2014-12-30 Red Hat, Inc. Combinatorial optimization of multiple resources across a set of cloud-based networks
US8949426B2 (en) 2010-11-24 2015-02-03 Red Hat, Inc. Aggregation of marginal subscription offsets in set of multiple host clouds
US10192246B2 (en) 2010-11-24 2019-01-29 Red Hat, Inc. Generating multi-cloud incremental billing capture and administration
US9442771B2 (en) 2010-11-24 2016-09-13 Red Hat, Inc. Generating configurable subscription parameters
US8713147B2 (en) 2010-11-24 2014-04-29 Red Hat, Inc. Matching a usage history to a new cloud
US9606831B2 (en) 2010-11-30 2017-03-28 Red Hat, Inc. Migrating virtual machine operations
US9563479B2 (en) 2010-11-30 2017-02-07 Red Hat, Inc. Brokering optimized resource supply costs in host cloud-based network using predictive workloads
US8959221B2 (en) 2011-03-01 2015-02-17 Red Hat, Inc. Metering cloud resource consumption using multiple hierarchical subscription periods
US8832219B2 (en) 2011-03-01 2014-09-09 Red Hat, Inc. Generating optimized resource consumption periods for multiple users on combined basis
US8756310B2 (en) 2011-03-09 2014-06-17 International Business Machines Corporation Comprehensive bottleneck detection in a multi-tier enterprise storage system
WO2012158621A1 (en) 2011-05-13 2012-11-22 Indiana University Reaserch And Technology Coporation Secure and scalable mapping of human sequencing reads on hybrid clouds
US9124494B2 (en) 2011-05-26 2015-09-01 Kaseya Limited Method and apparatus of performing remote management of a managed machine
US9137104B2 (en) 2011-05-26 2015-09-15 Kaseya Limited Method and apparatus of performing remote management of a managed machine
US8631099B2 (en) 2011-05-27 2014-01-14 Red Hat, Inc. Systems and methods for cloud deployment engine for selective workload migration or federation based on workload conditions
US10102018B2 (en) 2011-05-27 2018-10-16 Red Hat, Inc. Introspective application reporting to facilitate virtual machine movement between cloud hosts
US8782192B2 (en) 2011-05-31 2014-07-15 Red Hat, Inc. Detecting resource consumption events over sliding intervals in cloud-based network
US10360122B2 (en) 2011-05-31 2019-07-23 Red Hat, Inc. Tracking cloud installation information using cloud-aware kernel of operating system
US9037723B2 (en) 2011-05-31 2015-05-19 Red Hat, Inc. Triggering workload movement based on policy stack having multiple selectable inputs
US8984104B2 (en) 2011-05-31 2015-03-17 Red Hat, Inc. Self-moving operating system installation in cloud-based network
US8769624B2 (en) 2011-09-29 2014-07-01 Apple Inc. Access control utilizing indirect authentication
US9002322B2 (en) 2011-09-29 2015-04-07 Apple Inc. Authentication with secondary approver
KR101953164B1 (en) 2011-11-08 2019-03-04 삼성전자주식회사 Operating method and communication system by using home gateway
US9100306B2 (en) * 2012-02-16 2015-08-04 International Business Machines Corporation Managing cloud services
US9262231B2 (en) 2012-08-07 2016-02-16 Advanced Micro Devices, Inc. System and method for modifying a hardware configuration of a cloud computing system
US9658895B2 (en) 2012-08-07 2017-05-23 Advanced Micro Devices, Inc. System and method for configuring boot-time parameters of nodes of a cloud computing system
US8887056B2 (en) 2012-08-07 2014-11-11 Advanced Micro Devices, Inc. System and method for configuring cloud computing systems
US20140047095A1 (en) * 2012-08-07 2014-02-13 Advanced Micro Devices, Inc. System and method for tuning a cloud computing system
US9152532B2 (en) 2012-08-07 2015-10-06 Advanced Micro Devices, Inc. System and method for configuring a cloud computing system with a synthetic test workload
US9098513B1 (en) 2012-08-27 2015-08-04 Trend Micro Incorporated Methods and systems for differencing orderly dependent files
CN103677752B (en) * 2012-09-19 2017-02-08 腾讯科技(深圳)有限公司 Distributed data based concurrent processing method and system
US8880838B2 (en) 2013-01-08 2014-11-04 Lyve Minds, Inc. Storage network data allocation
US9621480B2 (en) 2013-03-04 2017-04-11 Vigo Software Ltd Data acquisition pertaining to connectivity of client applications of a service provider network
WO2014143776A2 (en) 2013-03-15 2014-09-18 Bodhi Technology Ventures Llc Providing remote interactions with host device using a wireless device
WO2014176406A1 (en) 2013-04-26 2014-10-30 LeoNovus USA Cloud computer system and method based on distributed consumer electronic devices
US9331894B2 (en) * 2013-05-31 2016-05-03 International Business Machines Corporation Information exchange in data center systems
US9563907B2 (en) 2013-06-13 2017-02-07 Vigo Software Ltd Offer based provision of fee based network access
EP3020206B1 (en) * 2013-07-10 2018-09-26 LeoNovus USA Cloud computing system and method utilizing unused resources of non-dedicated devices
US20150039659A1 (en) * 2013-07-30 2015-02-05 William F. Sauber Data location management agent using remote storage
US9898642B2 (en) 2013-09-09 2018-02-20 Apple Inc. Device, method, and graphical user interface for manipulating user interfaces based on fingerprint sensor inputs
CN104468250B (en) * 2013-09-17 2018-06-15 深圳市共进电子股份有限公司 Message treatment method and system in TR069 tests
US20150095776A1 (en) * 2013-10-01 2015-04-02 Western Digital Technologies, Inc. Virtual manifestation of a nas or other devices and user interaction therewith
US10037554B2 (en) 2013-10-30 2018-07-31 Vigo Software Ltd Aggregated billing for application-based network access and content consumption
US9678678B2 (en) * 2013-12-20 2017-06-13 Lyve Minds, Inc. Storage network data retrieval
US9483763B2 (en) 2014-05-29 2016-11-01 Apple Inc. User interface for payments
US9967401B2 (en) 2014-05-30 2018-05-08 Apple Inc. User interface for phone call routing among devices
EP3149554A1 (en) 2014-05-30 2017-04-05 Apple Inc. Continuity
US10339293B2 (en) 2014-08-15 2019-07-02 Apple Inc. Authenticated device used to unlock another device
US20160080488A1 (en) * 2014-09-12 2016-03-17 Microsoft Corporation Implementing file-based protocol for request processing
RU2015102736A (en) 2015-01-29 2016-08-20 Общество С Ограниченной Ответственностью "Яндекс" SYSTEM AND METHOD FOR PROCESSING A REQUEST IN A NETWORK OF DISTRIBUTED DATA PROCESSING
US10650046B2 (en) 2016-02-05 2020-05-12 Sas Institute Inc. Many task computing with distributed file system
US10002029B1 (en) * 2016-02-05 2018-06-19 Sas Institute Inc. Automated transfer of neural network definitions among federated areas
US10650045B2 (en) 2016-02-05 2020-05-12 Sas Institute Inc. Staged training of neural networks for improved time series prediction performance
US10795935B2 (en) 2016-02-05 2020-10-06 Sas Institute Inc. Automated generation of job flow definitions
US10642896B2 (en) 2016-02-05 2020-05-05 Sas Institute Inc. Handling of data sets during execution of task routines of multiple languages
DK179186B1 (en) 2016-05-19 2018-01-15 Apple Inc REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION
US10621581B2 (en) 2016-06-11 2020-04-14 Apple Inc. User interface for transactions
DK201670622A1 (en) 2016-06-12 2018-02-12 Apple Inc User interfaces for transactions
US10225337B2 (en) 2016-06-30 2019-03-05 Microsoft Technology Licensing, Llc Modeling and forecasting reserve capacity for overbooked clusters
US9842330B1 (en) 2016-09-06 2017-12-12 Apple Inc. User interfaces for stored-value accounts
US10496808B2 (en) 2016-10-25 2019-12-03 Apple Inc. User interface for managing access to credentials for use in an operation
US10133566B2 (en) * 2017-03-30 2018-11-20 Adtran, Inc. Software upgrading system and method in a distributed multi-node network environment
US11431836B2 (en) 2017-05-02 2022-08-30 Apple Inc. Methods and interfaces for initiating media playback
US10992795B2 (en) 2017-05-16 2021-04-27 Apple Inc. Methods and interfaces for home media control
US20220279063A1 (en) 2017-05-16 2022-09-01 Apple Inc. Methods and interfaces for home media control
CN111343060B (en) 2017-05-16 2022-02-11 苹果公司 Method and interface for home media control
US10180801B2 (en) * 2017-05-16 2019-01-15 Veritas Technologies Llc Systems and methods for load balancing backup data
EP4155988A1 (en) 2017-09-09 2023-03-29 Apple Inc. Implementation of biometric authentication for performing a respective function
KR102185854B1 (en) 2017-09-09 2020-12-02 애플 인크. Implementation of biometric authentication
CN107807853B (en) * 2017-10-16 2021-07-02 北京航空航天大学 Node screening method and device based on machine real-time load and task state machine
US10943268B2 (en) * 2018-01-02 2021-03-09 Sony Corporation Paying for content through mining
US11170085B2 (en) 2018-06-03 2021-11-09 Apple Inc. Implementation of biometric authentication
US10860096B2 (en) 2018-09-28 2020-12-08 Apple Inc. Device control using gaze information
US11100349B2 (en) 2018-09-28 2021-08-24 Apple Inc. Audio assisted enrollment
KR20230039775A (en) 2019-05-31 2023-03-21 애플 인크. User interfaces for audio media control
US10996917B2 (en) 2019-05-31 2021-05-04 Apple Inc. User interfaces for audio media control
CN110525913B (en) * 2019-09-01 2021-02-02 吴卓阳 Wharf cargo transportation calculation traceability matching method
US11816194B2 (en) 2020-06-21 2023-11-14 Apple Inc. User interfaces for managing secure operations
CN112016812B (en) * 2020-08-06 2022-07-12 中南大学 Multi-unmanned aerial vehicle task scheduling method, system and storage medium
US11392291B2 (en) 2020-09-25 2022-07-19 Apple Inc. Methods and interfaces for media control with dynamic feedback
DE102021203061A1 (en) * 2021-03-26 2022-09-29 Robert Bosch Gesellschaft mit beschränkter Haftung Method for operating a computing unit
US11847378B2 (en) 2021-06-06 2023-12-19 Apple Inc. User interfaces for audio routing
US11784956B2 (en) 2021-09-20 2023-10-10 Apple Inc. Requests to add assets to an asset account
US20230148292A1 (en) * 2021-11-08 2023-05-11 Spawn Computing LLC System and method for reward-based computing services on a distributed computing platform
CN115604357A (en) * 2022-08-31 2023-01-13 云南电网有限责任公司(Cn) Heterogeneous integration networking communication management and control system for power transmission line

Citations (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4669730A (en) * 1984-11-05 1987-06-02 Small Maynard E Automated sweepstakes-type game
US4815741A (en) * 1984-11-05 1989-03-28 Small Maynard E Automated marketing and gaming systems
US4818064A (en) * 1987-09-24 1989-04-04 Board Of Trustees Stanford Junior University Sensor array and method of selective interferometric sensing by use of coherence synthesis
US4839798A (en) * 1984-11-07 1989-06-13 Hitachi, Ltd. Method and apparatus for controlling job transfer between computer systems
US4893075A (en) * 1988-08-29 1990-01-09 Eaton Corporation Dual speed sensor pickup assembly with anti-cross talk coils
US4987533A (en) * 1988-05-05 1991-01-22 International Business Machines Corporation Method of managing data in a data storage hierarchy and a data storage hierarchy therefor with removal of the least recently mounted medium
US5031089A (en) * 1988-12-30 1991-07-09 United States Of America As Represented By The Administrator, National Aeronautics And Space Administration Dynamic resource allocation scheme for distributed heterogeneous computer systems
US5332218A (en) * 1989-01-30 1994-07-26 Lucey Trevor C Automated golf sweepstakes game
US5402394A (en) * 1991-12-04 1995-03-28 Turski; Klaus Process for generating a common time base for a system with distributed computing units
US5483444A (en) * 1993-10-26 1996-01-09 Radisson Hotels International, Inc. System for awarding credits to persons who book travel-related reservations
US5594792A (en) * 1994-01-28 1997-01-14 American Telecorp Methods and apparatus for modeling and emulating devices in a network of telecommunication systems
US5598566A (en) * 1990-01-30 1997-01-28 Johnson Service Company Networked facilities management system having a node configured with distributed load management software to manipulate loads controlled by other nodes
US5655081A (en) * 1995-03-08 1997-08-05 Bmc Software, Inc. System for monitoring and managing computer resources and applications across a distributed computing environment using an intelligent autonomous agent architecture
US5659614A (en) * 1994-11-28 1997-08-19 Bailey, Iii; John E. Method and system for creating and storing a backup copy of file data stored on a computer
US5740549A (en) * 1995-06-12 1998-04-14 Pointcast, Inc. Information and advertising distribution system and method
US5740231A (en) * 1994-09-16 1998-04-14 Octel Communications Corporation Network-based multimedia communications and directory system and method of operation
US5768504A (en) * 1995-06-30 1998-06-16 International Business Machines Corporation Method and apparatus for a system wide logan in a distributed computing environment
US5768532A (en) * 1996-06-17 1998-06-16 International Business Machines Corporation Method and distributed database file system for implementing self-describing distributed file objects
US5790789A (en) * 1996-08-02 1998-08-04 Suarez; Larry Method and architecture for the creation, control and deployment of services within a distributed computer environment
US5793964A (en) * 1995-06-07 1998-08-11 International Business Machines Corporation Web browser system
US5862325A (en) * 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
US5881232A (en) * 1996-07-23 1999-03-09 International Business Machines Corporation Generic SQL query agent
US5884320A (en) * 1997-08-20 1999-03-16 International Business Machines Corporation Method and system for performing proximity joins on high-dimensional data points in parallel
US5887143A (en) * 1995-10-26 1999-03-23 Hitachi, Ltd. Apparatus and method for synchronizing execution of programs in a distributed real-time computing system
US5893075A (en) * 1994-04-01 1999-04-06 Plainfield Software Interactive system and method for surveying and targeting customers
US5907619A (en) * 1996-12-20 1999-05-25 Intel Corporation Secure compressed imaging
US5909540A (en) * 1996-11-22 1999-06-01 Mangosoft Corporation System and method for providing highly available data storage using globally addressable memory
US5911776A (en) * 1996-12-18 1999-06-15 Unisys Corporation Automatic format conversion system and publishing methodology for multi-user network
US5918229A (en) * 1996-11-22 1999-06-29 Mangosoft Corporation Structured data storage using globally addressable memory
US5916024A (en) * 1986-03-10 1999-06-29 Response Reward Systems, L.C. System and method of playing games and rewarding successful players
US5921865A (en) * 1997-01-16 1999-07-13 Lottotron, Inc. Computerized lottery wagering system
US5937192A (en) * 1996-01-16 1999-08-10 British Telecommunications Public Limited Company Compilation of computer program for execution on single compiling computer and for execution on multiple distributed computer system
US6014712A (en) * 1996-05-21 2000-01-11 Hewlett-Packard Company Network system
US6014634A (en) * 1995-12-26 2000-01-11 Supermarkets Online, Inc. System and method for providing shopping aids and incentives to customers through a computer network
US6024640A (en) * 1995-06-30 2000-02-15 Walker Asset Management Limited Partnership Off-line remote lottery system
US6026474A (en) * 1996-11-22 2000-02-15 Mangosoft Corporation Shared client-side web caching using globally addressable memory
US6052584A (en) * 1997-07-24 2000-04-18 Bell Atlantic Nynex Mobile CDMA cellular system testing, analysis and optimization
US6052785A (en) * 1997-11-21 2000-04-18 International Business Machines Corporation Multiple remote data access security mechanism for multitiered internet computer networks
US6058393A (en) * 1996-02-23 2000-05-02 International Business Machines Corporation Dynamic connection to a remote tool in a distributed processing system environment used for debugging
US6061660A (en) * 1997-10-20 2000-05-09 York Eggleston System and method for incentive programs and award fulfillment
US6065046A (en) * 1997-07-29 2000-05-16 Catharon Productions, Inc. Computerized system and associated method of optimally controlled storage and transfer of computer programs on a computer network
US6070190A (en) * 1998-05-11 2000-05-30 International Business Machines Corporation Client-based application availability and response monitoring and reporting for distributed computing environments
US6078953A (en) * 1997-12-29 2000-06-20 Ukiah Software, Inc. System and method for monitoring quality of service over network
US6094654A (en) * 1996-12-06 2000-07-25 International Business Machines Corporation Data management system for file and database management
US6098091A (en) * 1996-12-30 2000-08-01 Intel Corporation Method and system including a central computer that assigns tasks to idle workstations using availability schedules and computational capabilities
US6112181A (en) * 1997-11-06 2000-08-29 Intertrust Technologies Corporation Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US6112304A (en) * 1997-08-27 2000-08-29 Zipsoft, Inc. Distributed computing architecture
US6112225A (en) * 1998-03-30 2000-08-29 International Business Machines Corporation Task distribution processing system and the method for subscribing computers to perform computing tasks during idle time
US6189045B1 (en) * 1998-03-26 2001-02-13 International Business Machines Corp. Data type conversion for enhancement of network communication systems
US6191847B1 (en) * 1996-10-02 2001-02-20 Texas Instruments Incorporated Fixed optic sensor system and distributed sensor network
US6208975B1 (en) * 1996-04-01 2001-03-27 Sabre Inc. Information aggregation and synthesization system
US6212550B1 (en) * 1997-01-21 2001-04-03 Motorola, Inc. Method and system in a client-server for automatically converting messages from a first format to a second format compatible with a message retrieving device
US6211782B1 (en) * 1999-01-09 2001-04-03 Heat-Timer Corporation Electronic message delivery system utilizable in the monitoring of remote equipment and method of same
US6222449B1 (en) * 1997-07-21 2001-04-24 Ronald F. Twining Remote fish logging unit
US6249836B1 (en) * 1996-12-30 2001-06-19 Intel Corporation Method and apparatus for providing remote processing of a task over a network
US6253193B1 (en) * 1995-02-13 2001-06-26 Intertrust Technologies Corporation Systems and methods for the secure transaction management and electronic rights protection
US6263358B1 (en) * 1997-07-25 2001-07-17 British Telecommunications Public Limited Company Scheduler for a software system having means for allocating tasks
US20010014868A1 (en) * 1997-12-05 2001-08-16 Frederick Herz System for the automatic determination of customized prices and promotions
US6336124B1 (en) * 1998-10-01 2002-01-01 Bcl Computers, Inc. Conversion data representing a document to other formats for manipulation and display
US20020010757A1 (en) * 1999-12-03 2002-01-24 Joel Granik Method and apparatus for replacement of on-line advertisements
US6345240B1 (en) * 1998-08-24 2002-02-05 Agere Systems Guardian Corp. Device and method for parallel simulation task generation and distribution
US6347340B1 (en) * 2000-02-18 2002-02-12 Mobilesys, Inc. Apparatus and method for converting a network message to a wireless transport message using a modular architecture
US20020018399A1 (en) * 2000-05-26 2002-02-14 Schultz Roger L. Webserver-based well instrumentation, logging, monitoring and control
US20020019584A1 (en) * 2000-03-01 2002-02-14 Schulze Arthur E. Wireless internet bio-telemetry monitoring system and interface
US20020019725A1 (en) * 1998-10-14 2002-02-14 Statsignal Systems, Inc. Wireless communication networks for providing remote monitoring of devices
US6356929B1 (en) * 1999-04-07 2002-03-12 International Business Machines Corporation Computer system and method for sharing a job with other computers on a computer network using IP multicast
US6370560B1 (en) * 1996-09-16 2002-04-09 Research Foundation Of State Of New York Load sharing controller for optimizing resource utilization cost
US6370510B1 (en) * 1997-05-08 2002-04-09 Careerbuilder, Inc. Employment recruiting system and method using a computer network for posting job openings and which provides for automatic periodic searching of the posted job openings
US6374254B1 (en) * 1999-06-30 2002-04-16 International Business Machines Corporation Scalable, distributed, asynchronous data collection mechanism
US6377975B1 (en) * 2000-03-01 2002-04-23 Interactive Intelligence, Inc. Methods and systems to distribute client software tasks among a number of servers
US20020052778A1 (en) * 1999-12-13 2002-05-02 Murphy Thomas P. System and method for providing incentives to purchasers
US6389421B1 (en) * 1997-12-11 2002-05-14 International Business Machines Corporation Handling processor-intensive operations in a data processing system
US6393014B1 (en) * 1997-06-03 2002-05-21 At&T Wireless Services, Inc. Method and system for providing data communication with a mobile station
US20020065864A1 (en) * 2000-03-03 2002-05-30 Hartsell Neal D. Systems and method for resource tracking in information management environments
US6415373B1 (en) * 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6418462B1 (en) * 1999-01-07 2002-07-09 Yongyong Xu Global sideband service distributed computing method
US6421781B1 (en) * 1998-04-30 2002-07-16 Openwave Systems Inc. Method and apparatus for maintaining security in a push server
US6493804B1 (en) * 1997-10-01 2002-12-10 Regents Of The University Of Minnesota Global file system and data storage device locks
US6505246B1 (en) * 1998-12-30 2003-01-07 Candle Distributed Solutions, Inc. User interface for system management applications
US6516350B1 (en) * 1999-06-17 2003-02-04 International Business Machines Corporation Self-regulated resource management of distributed computer resources
US6516338B1 (en) * 1998-05-15 2003-02-04 The Macmanus Group, Inc. Apparatus and accompanying methods for implementing network servers for use in providing interstitial web advertisements to a client computer
US6546419B1 (en) * 1998-05-07 2003-04-08 Richard Humpleman Method and apparatus for user and device command and control in a network
US6570870B1 (en) * 1999-01-28 2003-05-27 International Business Machines Corporation Method and system for making a charged telephone call during an Internet browsing session
US6574628B1 (en) * 1995-05-30 2003-06-03 Corporation For National Research Initiatives System for distributed task execution
US6601101B1 (en) * 2000-03-15 2003-07-29 3Com Corporation Transparent access to network attached devices
US20040043758A1 (en) * 2002-08-29 2004-03-04 Nokia Corporation System and method for providing context sensitive recommendations to digital services
US6735630B1 (en) * 1999-10-06 2004-05-11 Sensoria Corporation Method for collecting data using compact internetworked wireless integrated network sensors (WINS)
US20040098449A1 (en) * 2000-01-20 2004-05-20 Shai Bar-Lavi System and method for disseminating information over a communication network according to predefined consumer profiles
US6757730B1 (en) * 2000-05-31 2004-06-29 Datasynapse, Inc. Method, apparatus and articles-of-manufacture for network-based distributed computing
US6847995B1 (en) * 2000-03-30 2005-01-25 United Devices, Inc. Security architecture for distributed processing systems and associated method
US6891802B1 (en) * 2000-03-30 2005-05-10 United Devices, Inc. Network site testing method and associated system
US7003547B1 (en) * 2000-03-30 2006-02-21 United Devices, Inc. Distributed parallel processing system having capability-based incentives and associated method
US7020678B1 (en) * 2000-03-30 2006-03-28 United Devices, Inc. Machine generated sweepstakes entry model and associated distributed processing system
US7082474B1 (en) * 2000-03-30 2006-07-25 United Devices, Inc. Data sharing and file distribution method and associated distributed processing system
US20070011224A1 (en) * 1999-10-22 2007-01-11 Jesus Mena Real-time Internet data mining system and method for aggregating, routing, enhancing, preparing, and analyzing web databases
US20090132649A1 (en) * 2000-03-30 2009-05-21 Niration Network Group, L.L.C. Method of Managing Workloads and Associated Distributed Processing System

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4699513A (en) * 1985-02-08 1987-10-13 Stanford University Distributed sensor and method using coherence multiplexing of fiber-optic interferometric sensors
US6135646A (en) * 1993-10-22 2000-10-24 Corporation For National Research Initiatives System for uniquely and persistently identifying, managing, and tracking digital objects
AU703349B2 (en) 1994-02-04 1999-03-25 Ic One, Inc. Method and system for allocating and redeeming incentive credits
US5978594A (en) 1994-09-30 1999-11-02 Bmc Software, Inc. System for managing computer resources across a distributed computing environment by first reading discovery information about how to determine system resources presence
US6131067A (en) * 1995-10-09 2000-10-10 Snaptrack, Inc. Client-server based remote locator device
US20010044588A1 (en) 1996-02-22 2001-11-22 Mault James R. Monitoring system
US5842219A (en) * 1996-03-14 1998-11-24 International Business Machines Corporation Method and system for providing a multiple property searching capability within an object-oriented distributed computing network
US5826261A (en) * 1996-05-10 1998-10-20 Spencer; Graham System and method for querying multiple, distributed databases by selective sharing of local relative significance information for terms related to the query
US5953420A (en) * 1996-10-25 1999-09-14 International Business Machines Corporation Method and apparatus for establishing an authenticated shared secret value between a pair of users
US6167428A (en) * 1996-11-29 2000-12-26 Ellis; Frampton E. Personal computer microprocessor firewalls for internet distributed processing
US5848415A (en) 1996-12-18 1998-12-08 Unisys Corporation Selective multiple protocol transport and dynamic format conversion in a multi-user network
US5832411A (en) * 1997-02-06 1998-11-03 Raytheon Company Automated network of sensor units for real-time monitoring of compounds in a fluid over a distributed area
US5796952A (en) * 1997-03-21 1998-08-18 Dot Com Development, Inc. Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database
US6151684A (en) 1997-03-28 2000-11-21 Tandem Computers Incorporated High availability access to input/output devices in a distributed system
US5964832A (en) 1997-04-18 1999-10-12 Intel Corporation Using networked remote computers to execute computer processing tasks at a predetermined time
US6003065A (en) 1997-04-24 1999-12-14 Sun Microsystems, Inc. Method and system for distributed processing of applications on host and peripheral devices
US5987621A (en) * 1997-04-25 1999-11-16 Emc Corporation Hardware and software failover services for a file server
US6131162A (en) 1997-06-05 2000-10-10 Hitachi Ltd. Digital data authentication method
EP0921659B1 (en) * 1997-06-18 2005-08-17 Kabushiki Kaisha Toshiba Multimedia information communication system
US6101508A (en) * 1997-08-01 2000-08-08 Hewlett-Packard Company Clustered file management for network resources
JPH11136394A (en) 1997-08-26 1999-05-21 Casio Comput Co Ltd Data output system and data output method
JP3922482B2 (en) * 1997-10-14 2007-05-30 ソニー株式会社 Information processing apparatus and method
US6134532A (en) * 1997-11-14 2000-10-17 Aptex Software, Inc. System and method for optimal adaptive matching of users to most relevant entity and information in real-time
US6148335A (en) 1997-11-25 2000-11-14 International Business Machines Corporation Performance/capacity management framework over many servers
US6078990A (en) * 1998-02-06 2000-06-20 Ncr Corporation Volume set configuration using a single operational view
JP3966598B2 (en) * 1998-03-04 2007-08-29 富士通株式会社 Server selection system
US5987233A (en) * 1998-03-16 1999-11-16 Skycache Inc. Comprehensive global information network broadcasting system and implementation thereof
US6697103B1 (en) * 1998-03-19 2004-02-24 Dennis Sunga Fernandez Integrated network for monitoring remote objects
US6009455A (en) 1998-04-20 1999-12-28 Doyle; John F. Distributed computation utilizing idle networked computers
US6473805B2 (en) * 1998-06-08 2002-10-29 Telxon Corporation Method and apparatus for intergrating wireless and non-wireless devices into an enterprise computer network using an interfacing midware server
US6604122B1 (en) * 1998-11-03 2003-08-05 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for evaluating a data processing request performed by distributed processes
JP2000194674A (en) * 1998-12-28 2000-07-14 Nec Corp Decentralized job integration management system
US6611686B1 (en) 1999-02-09 2003-08-26 Elite Logistics Services, Inc. Tracking control and logistics system and method
US7958224B2 (en) 1999-02-17 2011-06-07 Catalina Marketing Corporation Incentive network for distributing incentives on a network-wide basis and for permitting user access to individual incentives from a plurality of network servers
US6434594B1 (en) * 1999-03-09 2002-08-13 Talk2 Technology, Inc. Virtual processing network enabler
US6393415B1 (en) * 1999-03-31 2002-05-21 Verizon Laboratories Inc. Adaptive partitioning techniques in performing query requests and request routing
US6615166B1 (en) * 1999-05-27 2003-09-02 Accenture Llp Prioritizing components of a network framework required for implementation of technology
US6477565B1 (en) * 1999-06-01 2002-11-05 Yodlee.Com, Inc. Method and apparatus for restructuring of personalized data for transmission from a data network to connected and portable network appliances
US6463457B1 (en) 1999-08-26 2002-10-08 Parabon Computation, Inc. System and method for the establishment and the utilization of networked idle computational processing power
AU7114200A (en) * 1999-08-26 2001-03-19 Parabon Computation System and method for the establishment and utilization of networked idle computational processing power
EP1117220A1 (en) 2000-01-14 2001-07-18 Sun Microsystems, Inc. Method and system for protocol conversion
WO2001059625A1 (en) 2000-02-10 2001-08-16 Involve Technology, Llc System for creating and maintaining a database of information utilizing user opinions
US20020133593A1 (en) * 2000-03-03 2002-09-19 Johnson Scott C. Systems and methods for the deterministic management of information
US20020194251A1 (en) * 2000-03-03 2002-12-19 Richter Roger K. Systems and methods for resource usage accounting in information management environments
US6654783B1 (en) 2000-03-30 2003-11-25 Ethergent Corporation Network site content indexing method and associated system
US6963897B1 (en) 2000-03-30 2005-11-08 United Devices, Inc. Customer services and advertising based upon device attributes and associated distributed processing system
US20090222508A1 (en) * 2000-03-30 2009-09-03 Hubbard Edward A Network Site Testing
US20010039497A1 (en) * 2000-03-30 2001-11-08 Hubbard Edward A. System and method for monitizing network connected user bases utilizing distributed processing systems
US6742038B2 (en) 2000-04-07 2004-05-25 Danger, Inc. System and method of linking user identification to a subscriber identification module
US7134073B1 (en) 2000-06-15 2006-11-07 International Business Machines Corporation Apparatus and method for enabling composite style sheet application to multi-part electronic documents
US6738614B1 (en) 2000-06-19 2004-05-18 1477.Com Wireless, Inc. Method and system for communicating data to a wireless device
US20020078075A1 (en) 2000-12-15 2002-06-20 Colson James C. System, method, and program product for prioritizing synchronizable data
US20020143729A1 (en) 2001-03-29 2002-10-03 Gideon Fostick Portable assistant
US20020194329A1 (en) 2001-05-02 2002-12-19 Shipley Company, L.L.C. Method and system for facilitating multi-enterprise benchmarking activities and performance analysis
US8392586B2 (en) * 2001-05-15 2013-03-05 Hewlett-Packard Development Company, L.P. Method and apparatus to manage transactions at a network storage device

Patent Citations (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4669730A (en) * 1984-11-05 1987-06-02 Small Maynard E Automated sweepstakes-type game
US4815741A (en) * 1984-11-05 1989-03-28 Small Maynard E Automated marketing and gaming systems
US4839798A (en) * 1984-11-07 1989-06-13 Hitachi, Ltd. Method and apparatus for controlling job transfer between computer systems
US5916024A (en) * 1986-03-10 1999-06-29 Response Reward Systems, L.C. System and method of playing games and rewarding successful players
US4818064A (en) * 1987-09-24 1989-04-04 Board Of Trustees Stanford Junior University Sensor array and method of selective interferometric sensing by use of coherence synthesis
US4987533A (en) * 1988-05-05 1991-01-22 International Business Machines Corporation Method of managing data in a data storage hierarchy and a data storage hierarchy therefor with removal of the least recently mounted medium
US4893075A (en) * 1988-08-29 1990-01-09 Eaton Corporation Dual speed sensor pickup assembly with anti-cross talk coils
US5031089A (en) * 1988-12-30 1991-07-09 United States Of America As Represented By The Administrator, National Aeronautics And Space Administration Dynamic resource allocation scheme for distributed heterogeneous computer systems
US5332218A (en) * 1989-01-30 1994-07-26 Lucey Trevor C Automated golf sweepstakes game
US5884072A (en) * 1990-01-30 1999-03-16 Johnson Service Company Networked facilities management system with updated data based on aging time
US5598566A (en) * 1990-01-30 1997-01-28 Johnson Service Company Networked facilities management system having a node configured with distributed load management software to manipulate loads controlled by other nodes
US5402394A (en) * 1991-12-04 1995-03-28 Turski; Klaus Process for generating a common time base for a system with distributed computing units
US5483444A (en) * 1993-10-26 1996-01-09 Radisson Hotels International, Inc. System for awarding credits to persons who book travel-related reservations
US5594792A (en) * 1994-01-28 1997-01-14 American Telecorp Methods and apparatus for modeling and emulating devices in a network of telecommunication systems
US5893075A (en) * 1994-04-01 1999-04-06 Plainfield Software Interactive system and method for surveying and targeting customers
US5740231A (en) * 1994-09-16 1998-04-14 Octel Communications Corporation Network-based multimedia communications and directory system and method of operation
US5659614A (en) * 1994-11-28 1997-08-19 Bailey, Iii; John E. Method and system for creating and storing a backup copy of file data stored on a computer
US6253193B1 (en) * 1995-02-13 2001-06-26 Intertrust Technologies Corporation Systems and methods for the secure transaction management and electronic rights protection
US5655081A (en) * 1995-03-08 1997-08-05 Bmc Software, Inc. System for monitoring and managing computer resources and applications across a distributed computing environment using an intelligent autonomous agent architecture
US6574628B1 (en) * 1995-05-30 2003-06-03 Corporation For National Research Initiatives System for distributed task execution
US5793964A (en) * 1995-06-07 1998-08-11 International Business Machines Corporation Web browser system
US5740549A (en) * 1995-06-12 1998-04-14 Pointcast, Inc. Information and advertising distribution system and method
US5768504A (en) * 1995-06-30 1998-06-16 International Business Machines Corporation Method and apparatus for a system wide logan in a distributed computing environment
US6024640A (en) * 1995-06-30 2000-02-15 Walker Asset Management Limited Partnership Off-line remote lottery system
US5887143A (en) * 1995-10-26 1999-03-23 Hitachi, Ltd. Apparatus and method for synchronizing execution of programs in a distributed real-time computing system
US6014634A (en) * 1995-12-26 2000-01-11 Supermarkets Online, Inc. System and method for providing shopping aids and incentives to customers through a computer network
US5937192A (en) * 1996-01-16 1999-08-10 British Telecommunications Public Limited Company Compilation of computer program for execution on single compiling computer and for execution on multiple distributed computer system
US6058393A (en) * 1996-02-23 2000-05-02 International Business Machines Corporation Dynamic connection to a remote tool in a distributed processing system environment used for debugging
US5862325A (en) * 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
US6208975B1 (en) * 1996-04-01 2001-03-27 Sabre Inc. Information aggregation and synthesization system
US6014712A (en) * 1996-05-21 2000-01-11 Hewlett-Packard Company Network system
US5768532A (en) * 1996-06-17 1998-06-16 International Business Machines Corporation Method and distributed database file system for implementing self-describing distributed file objects
US5881232A (en) * 1996-07-23 1999-03-09 International Business Machines Corporation Generic SQL query agent
US5790789A (en) * 1996-08-02 1998-08-04 Suarez; Larry Method and architecture for the creation, control and deployment of services within a distributed computer environment
US6370560B1 (en) * 1996-09-16 2002-04-09 Research Foundation Of State Of New York Load sharing controller for optimizing resource utilization cost
US6191847B1 (en) * 1996-10-02 2001-02-20 Texas Instruments Incorporated Fixed optic sensor system and distributed sensor network
US5918229A (en) * 1996-11-22 1999-06-29 Mangosoft Corporation Structured data storage using globally addressable memory
US6026474A (en) * 1996-11-22 2000-02-15 Mangosoft Corporation Shared client-side web caching using globally addressable memory
US5909540A (en) * 1996-11-22 1999-06-01 Mangosoft Corporation System and method for providing highly available data storage using globally addressable memory
US6094654A (en) * 1996-12-06 2000-07-25 International Business Machines Corporation Data management system for file and database management
US5911776A (en) * 1996-12-18 1999-06-15 Unisys Corporation Automatic format conversion system and publishing methodology for multi-user network
US5907619A (en) * 1996-12-20 1999-05-25 Intel Corporation Secure compressed imaging
US6249836B1 (en) * 1996-12-30 2001-06-19 Intel Corporation Method and apparatus for providing remote processing of a task over a network
US6098091A (en) * 1996-12-30 2000-08-01 Intel Corporation Method and system including a central computer that assigns tasks to idle workstations using availability schedules and computational capabilities
US5921865A (en) * 1997-01-16 1999-07-13 Lottotron, Inc. Computerized lottery wagering system
US6212550B1 (en) * 1997-01-21 2001-04-03 Motorola, Inc. Method and system in a client-server for automatically converting messages from a first format to a second format compatible with a message retrieving device
US6370510B1 (en) * 1997-05-08 2002-04-09 Careerbuilder, Inc. Employment recruiting system and method using a computer network for posting job openings and which provides for automatic periodic searching of the posted job openings
US6393014B1 (en) * 1997-06-03 2002-05-21 At&T Wireless Services, Inc. Method and system for providing data communication with a mobile station
US6222449B1 (en) * 1997-07-21 2001-04-24 Ronald F. Twining Remote fish logging unit
US6052584A (en) * 1997-07-24 2000-04-18 Bell Atlantic Nynex Mobile CDMA cellular system testing, analysis and optimization
US6263358B1 (en) * 1997-07-25 2001-07-17 British Telecommunications Public Limited Company Scheduler for a software system having means for allocating tasks
US6065046A (en) * 1997-07-29 2000-05-16 Catharon Productions, Inc. Computerized system and associated method of optimally controlled storage and transfer of computer programs on a computer network
US5884320A (en) * 1997-08-20 1999-03-16 International Business Machines Corporation Method and system for performing proximity joins on high-dimensional data points in parallel
US6112304A (en) * 1997-08-27 2000-08-29 Zipsoft, Inc. Distributed computing architecture
US6493804B1 (en) * 1997-10-01 2002-12-10 Regents Of The University Of Minnesota Global file system and data storage device locks
US6061660A (en) * 1997-10-20 2000-05-09 York Eggleston System and method for incentive programs and award fulfillment
US6112181A (en) * 1997-11-06 2000-08-29 Intertrust Technologies Corporation Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US6052785A (en) * 1997-11-21 2000-04-18 International Business Machines Corporation Multiple remote data access security mechanism for multitiered internet computer networks
US20010014868A1 (en) * 1997-12-05 2001-08-16 Frederick Herz System for the automatic determination of customized prices and promotions
US6389421B1 (en) * 1997-12-11 2002-05-14 International Business Machines Corporation Handling processor-intensive operations in a data processing system
US6415373B1 (en) * 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6078953A (en) * 1997-12-29 2000-06-20 Ukiah Software, Inc. System and method for monitoring quality of service over network
US6189045B1 (en) * 1998-03-26 2001-02-13 International Business Machines Corp. Data type conversion for enhancement of network communication systems
US6112225A (en) * 1998-03-30 2000-08-29 International Business Machines Corporation Task distribution processing system and the method for subscribing computers to perform computing tasks during idle time
US6421781B1 (en) * 1998-04-30 2002-07-16 Openwave Systems Inc. Method and apparatus for maintaining security in a push server
US6546419B1 (en) * 1998-05-07 2003-04-08 Richard Humpleman Method and apparatus for user and device command and control in a network
US6070190A (en) * 1998-05-11 2000-05-30 International Business Machines Corporation Client-based application availability and response monitoring and reporting for distributed computing environments
US6516338B1 (en) * 1998-05-15 2003-02-04 The Macmanus Group, Inc. Apparatus and accompanying methods for implementing network servers for use in providing interstitial web advertisements to a client computer
US6345240B1 (en) * 1998-08-24 2002-02-05 Agere Systems Guardian Corp. Device and method for parallel simulation task generation and distribution
US6336124B1 (en) * 1998-10-01 2002-01-01 Bcl Computers, Inc. Conversion data representing a document to other formats for manipulation and display
US20020019725A1 (en) * 1998-10-14 2002-02-14 Statsignal Systems, Inc. Wireless communication networks for providing remote monitoring of devices
US6505246B1 (en) * 1998-12-30 2003-01-07 Candle Distributed Solutions, Inc. User interface for system management applications
US6418462B1 (en) * 1999-01-07 2002-07-09 Yongyong Xu Global sideband service distributed computing method
US6211782B1 (en) * 1999-01-09 2001-04-03 Heat-Timer Corporation Electronic message delivery system utilizable in the monitoring of remote equipment and method of same
US6570870B1 (en) * 1999-01-28 2003-05-27 International Business Machines Corporation Method and system for making a charged telephone call during an Internet browsing session
US6356929B1 (en) * 1999-04-07 2002-03-12 International Business Machines Corporation Computer system and method for sharing a job with other computers on a computer network using IP multicast
US6516350B1 (en) * 1999-06-17 2003-02-04 International Business Machines Corporation Self-regulated resource management of distributed computer resources
US6374254B1 (en) * 1999-06-30 2002-04-16 International Business Machines Corporation Scalable, distributed, asynchronous data collection mechanism
US6735630B1 (en) * 1999-10-06 2004-05-11 Sensoria Corporation Method for collecting data using compact internetworked wireless integrated network sensors (WINS)
US20070011224A1 (en) * 1999-10-22 2007-01-11 Jesus Mena Real-time Internet data mining system and method for aggregating, routing, enhancing, preparing, and analyzing web databases
US20020010757A1 (en) * 1999-12-03 2002-01-24 Joel Granik Method and apparatus for replacement of on-line advertisements
US20020052778A1 (en) * 1999-12-13 2002-05-02 Murphy Thomas P. System and method for providing incentives to purchasers
US20040098449A1 (en) * 2000-01-20 2004-05-20 Shai Bar-Lavi System and method for disseminating information over a communication network according to predefined consumer profiles
US6347340B1 (en) * 2000-02-18 2002-02-12 Mobilesys, Inc. Apparatus and method for converting a network message to a wireless transport message using a modular architecture
US20020019584A1 (en) * 2000-03-01 2002-02-14 Schulze Arthur E. Wireless internet bio-telemetry monitoring system and interface
US6377975B1 (en) * 2000-03-01 2002-04-23 Interactive Intelligence, Inc. Methods and systems to distribute client software tasks among a number of servers
US20020065864A1 (en) * 2000-03-03 2002-05-30 Hartsell Neal D. Systems and method for resource tracking in information management environments
US6601101B1 (en) * 2000-03-15 2003-07-29 3Com Corporation Transparent access to network attached devices
US6891802B1 (en) * 2000-03-30 2005-05-10 United Devices, Inc. Network site testing method and associated system
US6847995B1 (en) * 2000-03-30 2005-01-25 United Devices, Inc. Security architecture for distributed processing systems and associated method
US7003547B1 (en) * 2000-03-30 2006-02-21 United Devices, Inc. Distributed parallel processing system having capability-based incentives and associated method
US7020678B1 (en) * 2000-03-30 2006-03-28 United Devices, Inc. Machine generated sweepstakes entry model and associated distributed processing system
US7082474B1 (en) * 2000-03-30 2006-07-25 United Devices, Inc. Data sharing and file distribution method and associated distributed processing system
US20090132649A1 (en) * 2000-03-30 2009-05-21 Niration Network Group, L.L.C. Method of Managing Workloads and Associated Distributed Processing System
US20090138551A1 (en) * 2000-03-30 2009-05-28 Niration Network Group, L.L.C. Method of Managing Workloads and Associated Distributed Processing System
US20090164533A1 (en) * 2000-03-30 2009-06-25 Niration Network Group, L.L.C. Method of Managing Workloads and Associated Distributed Processing System
US20090171855A1 (en) * 2000-03-30 2009-07-02 Hubbard Edward A Monitizing Network Connected User Bases Utilizing Distributed Processing Systems
US20020018399A1 (en) * 2000-05-26 2002-02-14 Schultz Roger L. Webserver-based well instrumentation, logging, monitoring and control
US6757730B1 (en) * 2000-05-31 2004-06-29 Datasynapse, Inc. Method, apparatus and articles-of-manufacture for network-based distributed computing
US20040043758A1 (en) * 2002-08-29 2004-03-04 Nokia Corporation System and method for providing context sensitive recommendations to digital services

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Computing for Cash (Pittsburgh Post-Gazette, January 2, 1999, downloaded from ProQuestDirect on the Internet on 10/30/2012 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE42153E1 (en) 2000-03-30 2011-02-15 Hubbard Edward A Dynamic coordination and control of network connected devices for large-scale network site testing and associated architectures
US20090216649A1 (en) * 2000-03-30 2009-08-27 Hubbard Edward A Capability Based Distributed Processing
US20090132649A1 (en) * 2000-03-30 2009-05-21 Niration Network Group, L.L.C. Method of Managing Workloads and Associated Distributed Processing System
US20090138551A1 (en) * 2000-03-30 2009-05-28 Niration Network Group, L.L.C. Method of Managing Workloads and Associated Distributed Processing System
US20020013832A1 (en) * 2000-03-30 2002-01-31 Hubbard Edward A. Software-based network attached storage services hosted on massively distributed parallel computing networks
US20090216641A1 (en) * 2000-03-30 2009-08-27 Niration Network Group, L.L.C. Methods and Systems for Indexing Content
US20040103139A1 (en) * 2000-03-30 2004-05-27 United Devices, Inc. Distributed processing system having sensor based data collection and associated method
US20090222508A1 (en) * 2000-03-30 2009-09-03 Hubbard Edward A Network Site Testing
US20090171855A1 (en) * 2000-03-30 2009-07-02 Hubbard Edward A Monitizing Network Connected User Bases Utilizing Distributed Processing Systems
US8010703B2 (en) 2000-03-30 2011-08-30 Prashtama Wireless Llc Data conversion services and associated distributed processing system
US8249940B2 (en) 2000-03-30 2012-08-21 Niration Network Group, LLC Capability based distributed processing
US8275827B2 (en) 2000-03-30 2012-09-25 Niration Network Group, L.L.C. Software-based network attached storage services hosted on massively distributed parallel computing networks
US10269025B2 (en) 2000-03-30 2019-04-23 Intellectual Ventures Ii Llc Monetizing network connected user bases utilizing distributed processing systems
US8799291B2 (en) * 2011-11-03 2014-08-05 Electronics And Telecommunications Research Institute Forensic index method and apparatus by distributed processing
US20130117273A1 (en) * 2011-11-03 2013-05-09 Electronics And Telecommunications Research Institute Forensic index method and apparatus by distributed processing
US10430247B2 (en) * 2012-06-29 2019-10-01 Emc Corporation Blueprint-driven environment template creation in a virtual infrastructure

Also Published As

Publication number Publication date
US8275827B2 (en) 2012-09-25
WO2001073545A2 (en) 2001-10-04
CA2403895A1 (en) 2001-10-04
US20020013832A1 (en) 2002-01-31
US20010039497A1 (en) 2001-11-08
AU6455101A (en) 2001-10-08
EP1360580A2 (en) 2003-11-12
JP2004513406A (en) 2004-04-30
WO2001073545A3 (en) 2003-08-28

Similar Documents

Publication Publication Date Title
US6654783B1 (en) Network site content indexing method and associated system
US6891802B1 (en) Network site testing method and associated system
US7003547B1 (en) Distributed parallel processing system having capability-based incentives and associated method
US20100036723A1 (en) Sweepstakes Incentive Model and Associated System
US6963897B1 (en) Customer services and advertising based upon device attributes and associated distributed processing system
US7092985B2 (en) Method of managing workloads and associated distributed processing system
US7082474B1 (en) Data sharing and file distribution method and associated distributed processing system
US6847995B1 (en) Security architecture for distributed processing systems and associated method
US7039670B2 (en) Massively distributed processing system with modular client agent and associated method
US8249940B2 (en) Capability based distributed processing
US8010703B2 (en) Data conversion services and associated distributed processing system
US20040148336A1 (en) Massively distributed processing system architecture, scheduling, unique device identification and associated methods
US20110173247A1 (en) Massively Distributed Processing System Architecture, Scheduling, Unique Device Identification and Associated Methods
US7254607B2 (en) Dynamic coordination and control of network connected devices for large-scale network site testing and associated architectures
US7020678B1 (en) Machine generated sweepstakes entry model and associated distributed processing system
US20090222508A1 (en) Network Site Testing
US20180095997A1 (en) Secure automated resource-exchange system
US20090254998A1 (en) Web-browser based grid computing system
Kenwood A business case study of open source software
CN102185926A (en) Cloud computing resource management system and method
US20080183537A1 (en) Approach to comprehensive requirements specifications for complex workflows
Cappello et al. Market-based massively parallel internet computing
US6934742B2 (en) Efficiently handling client requests in a server farm
Chen et al. Optimizing enterprise IT infrastructure through virtual server consolidation
AU2001264551A1 (en) Massively distributed processing system and associated methods

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION