Athicha Muthitacharoen

Learn More
Users rarely consider running network file systems over slow or wide-area networks, as the performance would be unacceptable and the bandwidth consumption too high. Nonetheless, efficient remote file access would often be desirable over such networks---particularly when high latency makes remote login sessions unresponsive. Rather than run interactive(More)
Ivy is a multi-user read/write peer-to-peer file system. Ivy has no centralized or dedicated components, and it provides useful integrity properties without requiring users to fully trust either the underlying peer-to-peer storage system or the other users of the file system.An Ivy file system consists solely of a set of logs, one log per participant. Ivy(More)
Many interesting large-scale systems are distributed systems of multiple communicating components. Such systems can be very hard to debug, especially when they exhibit poor performance. The problem becomes much harder when systems are composed of "black-box" components: software from many different (perhaps competing) vendors, usually without source code(More)
The current domain name system (DNS) couples ownership of domains with the responsibility of serving data for them. The DNS security extensions (DNSSEC) allow verificaton of records obtained by alternate means, opening exploration of alternative storage systems for DNS records. We explore one such alternative using DHash, a peer-to-peer distributed hash(More)
This paper presents Etna, an algorithm for atomic reads and writes of replicated data stored in a distributed hash table. Etna correctly handles dynamically changing sets of replica hosts, and is optimized for reads, writes, and reconfiguration, in that order. Etna maintains a series of replica configurations as nodes in the system change, using new sets of(More)
This paper presents Etna, an algorithm for atomic reads and writes of replicated data stored in a distributed hash table. Etna correctly handles dynamically changing sets of replica hosts, and is optimized for reads, writes, and reconfiguration, in that order. Etna maintains a series of replica configurations as nodes in the system change, using new sets of(More)
L is a technique for building multi-user distributed data structures out of untrusted peer-to-peer distributed hash tables (DHTs). L uses multiple logs, one log per participant, to store changes to the data structure. Each participant finds data by consulting all logs, but performs modifications by appending only to its own log. This decentralized structure(More)
Object-oriented database (OODB) systems provide persistent storage for large numbers of long-lived objects shared by many programs. At any point in time, the database obeys some schema. Over time, the system is likely to experience schema changes. The requirement for both good performance and sound semantics has made schema evolution a long-standing(More)
Structured peer-to-peer distributed hash tables (DHTs) provide a simple API for reading and writing key/value pairs (often called blocks). A DHT typically takes care of finding a network host to store each key/value pair; replicating data for availability; and checking that retrieved blocks have not been tampered with. The DHT interface is fairly low level,(More)
This thesis presents a virtual disk cluster called END, the Expandable Network Disk. END aggregates storage on a cluster of servers into a single virtual disk. END'S main goals are to offer good performance during normal operation, and efficiently handle changes in the cluster membership. END achieves these goals using a two-layer design, in which storage(More)
  • 1