Directed Research Project Details
Result Verification and Trust-Based Scheduling in Open Peer-to-Peer Cycle Sharing Systems
|Date:||December 02, 2004|
|Committee:||Virginia Lo (Chair)|
Systems that seek to harvest idle cycles available throughout the Internet are vulnerable to hosts that fraudulently accept computational tasks and then maliciously return arbitrary results. Current strategies employed by popular cooperative computing systems, such as SETI@Home, rely heavily on task replication to check results. However, result verification through replication suffers from two potential shortcomings: (1) susceptibility to collusion in which a group of malicious hosts conspire to return the same bad results and (2) high fixed overhead incurred by running redundant copies of the task. In this paper, we first propose a scheme called Quiz to combat collusion. The basic idea of Quiz is to insert indistinguishable quiz tasks with verifiable results known to the client within a package containing several normal tasks. The client can then accept or reject the normal task results based on the correctness of quiz results. Our second contribution is the promotion of trust-based task scheduling. By coupling a reputation system with the basic verification schemes - Replication and Quiz - a client can potentially avoid malicious hosts and also reduce the overhead of verification. Furthermore, by adjusting the degree of result verification according to the trust value of a particular host, a client can tailor the system to achieve the desired level of accuracy. Our mathematical analysis and simulation results show that Quiz greatly outperforms Replication in terms of accuracy and overhead under collusion assumptions. In non-collusion scenarios Replication is a better solution although Quiz also performs well. Reputation systems effectively improve the performance of both Quiz and Replication in a variety of cheating scenarios.