CSD Home | SCS Home



Research Areas - Distributed Systems Research in the Computer Science Department at Carnegie Mellon

CSD faculty: Dave Andersen, Christos Faloutsos, Eugene Fink, Greg Ganger (ECE), Phil Gibbons (Intel), Garth Gibson, Seth Goldstein, Mor Harchol-Balter, David O'Hallaron, M. Satyanarayanan, Srini Seshan, Peter Steenkiste, John Wilkes (Google), Jeannette Wing, Hui Zhang


In the last few decades, computing has spread throughout our society to become an essential part of our lives. Today, many of the most important applications are distributed, either accessing other client computers or a distributed service infrastructure. Examples range from simple applications such as web browsing to sophisticated e-commerce and game applications--and the oftentimes massive distributed systems that underlie all of these applications. While distributed computing has been around since the early days of the DARPA net, the scale and importance of today’s service infrastructure’s is unprecedented. At the same time, embedded systems---formerly stand-alone systems---are themselves becoming part of the global infrastructure. The rapid deployment of sensors, cell phones and tablets, and networked microcontrollers throughout all of our technology creates fantastic opportunities and tremendous challenges.

In this section we focus on the distributed service infrastructure used in today’s distributed systems, complementing the client-centric view taken in Section Mobile and Pervasive Computing. The research agenda is driven by the critical role the distributed service infrastructure plays in today’s society. While high performance remains important, system properties such as high availability, security and privacy (often bundled together as "trustworthy computing"), and manageability have also arisen as first-order requirements. All of these challenges are major research areas at Carnegie Mellon.

Carnegie Mellon has a rich history in distributed systems, with early work in parallel and distributed computers (CM*, iWarp), distributed file systems (AFS), and cluster computing (Nectar). This research was characterized by an empirical, application-driven approach: the research addressed pressing application needs and developed prototypes that could be used and evaluated by users. This research style continues to drive today’s research. In the last 5-10 years, we have also developed a “foundations of systems” research thrust that complements, but is integrated with, this empirical approach. It uses mathematical tools to resolve fundamental challenges in systems.

In the remainder of this section, we elaborate on recent and ongoing distributed systems research in our department. The research is organized in four categories: data centers, information retrieval, peer-to-peer systems, and foundations. While the research is very diverse, “self-management” is a common theme shared by many of the projects. Self-management means that the system automatically optimizes one or more system features, in response to changes in the load, system status, and environment. This trend towards self-managing systems is caused by several factors. A first factor is cost: management is the dominant cost in computing systems, so self-management can lead to significant cost reductions. A second factor is complexity: today’s systems are so complicated that manual management is impractical and is likely to result in poor performance.

We focus on projects in CSD. However, many projects involve faculty, students, and staff from the Department of Electrical and Computer Engineering, Intel Research Pittsburgh, and other units in the School of Computer Science.



      CSD Home   Webteam  ^ Top   SCS Home