Programming Methodology Group publications by topic

Also see our publications by date and by author.

Research topics:

Automatic Software Upgrades

Dynamic Module Replacement in a Distributed Programming System (Ph.D. dissertation, 1983)
Reconfiguration in Argus (Intl. Workshop on Configurable Dist. Systems, 1992)
Dynamic Reconfiguration of Component-Based Applications in Java (Masters thesis, 2000)
Scheduling and Simulation: How to Upgrade Distributed Systems (Ninth Workshop on Hot Topics in Operating Systems (HotOS-IX), 2003)
Presents a methodology and infrastructure for supporting automatic software upgrades for long-lived distributed systems.
Automatic Software Upgrades for Distributed Systems (Ph.D. dissertation, 2004)
Modular Software Upgrades for Distributed Systems (European Conference on Object-Oriented Programming (ECOOP), 2006)

Peer-to-Peer Computing

ConChord: Cooperative SDSI Certificate Storage and Name Resolution (First International Workshop on Peer-to-Peer Systems (IPTPS), 2002)
Presents a large-scale certificate distribution system built on a peer-to-peer distributed hash table.
The Design of a Robust Peer-to-Peer System (10th ACM SIGOPS European Workshop, 2002)
We present techniques to build fault-tolerant peer-to-peer systems
High Availability, Scalable Storage, Dynamic Peer Networks: Pick Two (Ninth Workshop on Hot Topics in Operating Systems (HotOS-IX), 2003)
This paper argues that trying to achieve all three things - scalability, storage guarantees, and resilience to highly dynamic membership - overreaches bandwidth resources likely to be available to users in a peer-to-peer storage system.
One Hop Lookups for Peer-to-Peer Overlays (Ninth Workshop on Hot Topics in Operating Systems (HotOS-IX), 2003)
An Agenda for Robust Peer-to-Peer Storage (First IRIS Student Workshop, 2003)
We present a research agenda for the design and implementation of a robust storage system based on DHTs.
Two Hop Lookups for Large Scale Peer-to-Peer Overlays (First IRIS Student Workshop, 2003)
When Multi-Hop Peer-to-Peer Routing Matters (3rd International Workshop on Peer-to-Peer Systems (IPTPS), 2004)
We present an analytic model that allows us to determine when are multi-hop peer-to-peer lookups desirable.
Efficient Routing for Peer-to-Peer Overlays (First Symposium on Networked Systems Design and Implementation (NSDI), 2004)
EpiChord: Parallelizing the Chord Lookup Algorithm with Reactive Routing State Management (Technical Report, 2004)
Achieving One-Hop DHT Lookup and Strong Stabilization by Passing Tokens (12th International Conference on Networks (ICON), 2004)
EpiChord: Parallelizing the Chord Lookup Algorithm with Reactive Routing State Management (12th International Conference on Networks (ICON), 2004)
High Availability in DHTs: Erasure Coding vs. Replication (Peer-to-Peer Systems IV 4th International Workshop IPTPS 2005, 2005)

Byzantine Fault Tolerance

Using a Byzantine-Fault-Tolerant Algorithm to Provide a Secure DNS (Masters thesis, 1999)
Practical Byzantine Fault Tolerance (Third Symposium on Operating Systems Design and Implementation (OSDI), 1999)
This paper presents a new, practical algorithm for state machine replication that tolerates Byzantine faults.
A Correctness Proof for a Practical Byzantine-Fault-Tolerant Replication Algorithm (Technical Memo, 1999)
Authenticated Byzantine Fault Tolerance Without Public-Key Cryptography (Technical Memo, 1999)
Proactive Recovery in a Byzantine-Fault-Tolerant System (Fourth Symposium on Operating Systems Design and Implementation (OSDI), 2000)
This paper describes a new system for asynchronous state-machine replication that offers both integrity and high availability in the presence of Byzantine faults. Our system is interesting for two reasons: it improves security by recovering replicas proactively, and it is based on symmetric cryptography, which allows it to perform well so that it can be used in practice to implement real services.
A Scalable Byzantine Fault Tolerant Secure Domain Name System (Masters thesis, 2001)
Practical Byzantine Fault Tolerance (Ph.D. dissertation, 2001)
Combining Abstraction with Byzantine Fault Tolerance (Masters thesis, 2001)
Using Abstraction to Improve Fault Tolerance (8th Workshop on Hot Topics in Operating Systems (HotOS-VIII), 2001)
This paper describes a replication technique which uses abstraction to reduce the cost of Byzantine fault tolerance and to improve its ability to mask software errors.
Byzantine fault tolerance can be fast (International Conference on Dependable Systems and Networks (DSN), 2001)
Experince paper reporting on the optimizations that make BFT fast.
BASE: Using Abstraction to Improve Fault Tolerance (18th Symposium on Operating Systems Principles (SOSP), 2001)
We present BASE, a novel replication technique which uses abstraction to reduce the cost of Byzantine fault tolerance and to improve its ability to mask software errors.
Practical Byzantine Fault Tolerance and Proactive Recovery (ACM Transactions on Computer Systems (TOCS), 2002)
BASE: Using Abstraction to Improve Fault Tolerance (ACM Transactions on Computer Systems (TOCS), 2003)
Byzantine Fault Tolerance in Long-Lived Systems (2nd Bertinoro Workshop on Future Directions in Distributed Computing (FuDiCo II), 2004)
Byzantine Modification Detection in Multicast Networks using Randomized Network Coding (Proceedings of the 2004 IEEE International Symposium on Information Theory (ISIT), 2004)
Authentication in a Reconfigurable Byzantine Fault Tolerant System (Masters thesis, 2004)
Reconfigurable Byzantine-Fault-Tolerant Atomic Memory (Twenty-Third Annual ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (PODC), 2004)
Byzantine Clients Rendered Harmless (Technical Report, 2005)
Tolerating Byzantine Faulty Clients in a Quorum System (Proceedings of the 26th IEEE International Confererence on Distributed Computing SYstems (ICDCS06), 2006)
HQ Replication: A Hybrid Quorum Protocol for Byzantine Fault Tolerance (Proceedings of the Seventh Symposium on Operating Systems Design and Implementations (OSDI), 2006)
HQ Replication: Properties and Optimizations (Technical Report, 2007)
HQ Replication (Masters thesis, 2007)
Tolerating Byzantine Faults in Database Systems using Commit Barrier Scheduling (Proceedings of the 21st ACM Symposium on Operating Systems Principles (SOSP), 2007)
Computing Network Coordinates in the Presence of Byzantine Faults (Masters thesis, 2008)
Detecting and Tolerating Byzantine Faults in Database Systems (Ph.D. dissertation, 2008)
Tolerating Latency in Replicated State Machines (Proceedings of the Sixth Symposium on Networked Systems Design and Implementation (NSDI), 2009)
MPSS: Mobile Proactive Secret Sharing (ACM Transactions on Information and System Security (TISSEC), 2010)
From Viewstamped Replication to Byzantine Fault Tolerance (Replication: Theory and Practice, 2010)
Automatic Reconfiguration for Large-Scale Reliable Storage Systems (IEEE Transactions on Dependable and Secure Computing, 2012)

Viewstamped Replication

Viewstamped Replication for Highly Available Distributed Systems (Ph.D. dissertation, 1988)
Viewstamped Replication: A New Primary Copy Method to Support Highly-Available Distributed Systems (Proceedings of the Seventh Annual ACM Symposium on Principles of Distributed Computing (PODC), 1988)
Replication in the Harp File System (13th ACM Symposium on Operating Systems Principles (SOSP), 1991)
Viewstamped Replication Revisited (TR, 2012)

Persistent Object Storage

Object Clusters May Be Better Than Pages (4th Workshop on Workstation Operating Systems, 1993)
Disk Management for Object-Oriented Databases (3rd International Workshop on Object-Oriented Operating Systems, 1993)
Lockup of a Client Object Cache and How to Avoid It (3rd International Workshop on Object-Oriented Operating Systems, 1993)
Distributed Object Management in Thor (Distributed Object Management, 1993)
References to Remote Mobile Objects in Thor (ACM Letters on Programming Languages and Systems, 1994)
Fault-Tolerant Distributed Garbage Collection in a Client-Server, Object-Oriented Database (Parallel and Distributed Information Systems, 1994)
Hybrid Caching for Scalable Object Systems (Think Globally, Act Locally) (6th International Workshop on Persistent Object Systems, 1994)
Opportunistic Log: Efficient Installation Reads in a Reliable Object Server (1st USENIX Symposium on Operating Systems Design and Implementation (OSDI), 1994)
Disconnected Operation in the Thor Object-Oriented Database System (IEEE Workshop on Mobile Computing Systems and Applications, 1994)
The Language-Independent Interface of the Thor Persistent Object System (Object-Oriented Multidatabase Systems, 1994)
Efficient optimistic concurrency control using loosely synchronized clocks (ACM Conference on Management of Data (SIGMOD), 1995)
Collecting Cyclic Distributed garbage by Controlled Migration (Proceedings of Principles of Distributed Computing (PODC), 1995)
Fragment Reconstruction: Providing Global Cache Coherence in a Transactional Storage System (International Conference on Distributed Computing Systems, 1997)
Collecting Distributed Garbage Cycles by Back Tracing (ACM Symposium on Principles of Distributed Computing (PODC), 1997)
Lazy Consistency Using Loosely Synchronized Clocks (ACM Symposium on Principles of Distributed Computing (PODC), 1997)
HAC: Hybrid Adaptive Caching for Distributed Storage Systems (ACM Symposium on Operating Systems Principles (SOSP), 1997)
Weak Consistency: A Generalized Theory and Optimistic Implementations for Distributed Transactions (Ph.D. dissertation, 1999)
Providing Persistent Objects in Distributed Systems (European Conference on Object-Oriented Programming (ECOOP), 1999)
Lazy Type Changes in Object-Oriented Databases (Masters thesis, 2000)
Generalized Isolation Level Definitions (International conference on Data Engineering ICDE, 2000)
Lazy Schema Evolution in Object-Oriented Databases (Masters thesis, 2001)
Safe Lazy Software Upgrades in Object-Oriented Databases (TR, 2002)
Ownership Types and Safe Lazy Upgrades in Object-Oriented Databases (TR, 2002)
Snapshots in a Distributed Persistent Object Storage System (Masters thesis, 2003)
Lazy Modular Upgrades in Persistent Object Stores (ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 2003)
TimeLine: A High Performance Archive for a Distributed Object Store (First Symposium on Networked Systems Design and Implementation (NSDI), 2004)
Transactional File Systems Can Be Fast (11th ACM SIGOPS European Workshop, 2004)
This paper argues that performance is not a barrier to running transactions in a file system, and presents a simple mechanism that substantially lowers the cost of read-only transactions.

Object-Oriented Languages

A Behavioral Notion of Subtyping (ACM Transactions on Programming Languages and Systems, 1994)
Bidirectional Object Layout for Separate Compilation (ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 1995)
Subtypes vs. where clauses: Constraining parametric polymorphism (ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 1995)
Parameterized Types for Java (24th ACM Symposium on Principles of Programming Languages (POPL), 1997)
Ownership Types for Object Encapsulation (ACM Symposium on Principles of Programming Languages (POPL), 2003)
SafeJava: A Unified Type System for Safe Programming (Ph.D. dissertation, 2004)

Information Flow

A Decentralized Model for Information Flow Control (ACM Symposium on Operating Systems Principles (SOSP), 1997)
Complete, Safe Information Flow with Decentralized Labels (19th IEEE Symposium on Research in Security and Privacy (RSP), 1998)
JFlow: Practical Mostly-Static Information Flow Control (Symposium on Principles of Programming Languages (POPL), 1999)
A Trusted Execution Platform for Multiparty Computation (Masters thesis, 2000)
Presents a system that supports general-purpose shared computation between mutually-distrusting parties. Also describes new SPKI certificate discovery algorithms for distributed systems.
A Trusted Third-Party Computation Service (TR, 2001)
Presents a system that supports general-purpose shared computation between mutually-distrusting parties.

Miscellaneous

Resolving the Integrity/Performance Conflict (4th Workshop on Workstation Operating Systems, 1993)
Mobile Proactive Secret Sharing (Masters thesis, 2007)
MapJAX: Data Structure Abstractions for Asynchronous Web Applications (Proceedings of the 2007 USENIX Annual Technical Conference, 2007)
Overshadow: A Virtualization-Based Approach to Retrofitting Protection in Commodity Operating Systems (Proceedings of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '08), 2008)
Towards Application Security on Untrusted Operating Systems (Proceedings of the 3rd Workshop on Hot Topics in Security (HotSec '08), 2008)
Mobile Proactive Secret Sharing (Twenty-Seventh Annual ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (PODC), 2008)
Census: Location-Aware Membership Management for Large-Scale Distributed Systems (Proceedings of the 2009 USENIX Annual Technical Conference, 2009)
Transactional Consistency and Automatic Management in an Application Data Cache (Proceedings of the 9th USENIX Symposium on Operating Systems Design and Implementation (OSDI '10), 2010)
Application-Level Caching with Transactional Consistency (Ph.D. dissertation, 2012)
Granola: Low-Overhead Distributed Transaction Coordination (Proceedings of the 2012 USENIX Annual Technical Conference, 2012)
Low-Overhead Distributed Transaction Coordination (Ph.D. dissertation, 2012)
Serializable Snapshot Isolation in PostgreSQL (Proceedings of the 38th International Conference on Very Large Data Bases (VLDB '12), 2012)

Information Flow Control

Information Flow for Secure Distributed Applications (Ph.D. dissertation, 2009)
Audit Trails in the Aeolus Distributed Security Platform (Masters thesis, 2010)
Analyzing Audit Trails in the Aeolus Security Platform (Masters thesis, 2011)
A File System Design for the Aeolus Security Platform (Masters thesis, 2011)
Abstractions for Usable Information Flow Control in Aeolus (Proceedings of the 2012 USENIX Annual Technical Conference, 2012)
Decentralized Information Flow Control for Databases (Ph.D. dissertation, 2012)
Aeolus Reference Manual (TR, 2012)
Summarizing Audit Trails in the Aeolus Security Platform (Masters thesis, 2012)
IFDB: Decentralized Information Flow Control for Databases (Proceedings of the 8th ACM European Conference on Computer Systems, 2013)

This page was generated Wed May 1 12:49:40 2013 by bibtex2web

Programming Methodology Group