About Us












Secure Spread

About Us

Overview Research Software Facilities Faculty


The Distributed Systems and Networks (DSN) lab at Johns Hopkins University focuses on the interplay between theory and practice in distributed systems and networks. Our vision is to create a paradigm shift in the way distributed systems are designed and built. In contrast to the ad-hoc methods underlying most current systems, the lab is building a small set of general tools that are provably correct and provide high performance. These tools encapsulate the challenging aspects of asynchronous networks and enable people to build scalable distributed applications. The impact of our lab encompasses the whole range of theoretical ideas, prototype academic systems, and commercial-grade tools that are used by industry.


Our research focuses on creating the algorithms, protocols, and infrastructure tools that enable the development of correct distributed systems that scale to Internet size, with an emphasis on high performance and high availability. The following is an overview of our current research activities. Please click here for more information.
  • Survivable Systems
    We are interested in designing and implementing systems resilient to both internal and external attacks. Our work in this area combines Byzantine fault-tolerant protocols with cryptographic mechanisms to create scalable, efficient, and robust software solutions.

  • Messaging Systems
    We focus on messaging systems in wide area and wireless environments, more specifically on routing, multicast and reliability protocols for networks that rapidly change in structure, availability and bandwidth.

  • Group Communication
    Our work in Group Communication area involves creating both advanced group communication systems for local and wide area networks, and applications that use group communication. A wide area group communication system scales to tens of sites (Local Area Networks), with hundreds of servers, supporting thousands of users. This kind of service is crucial for building useful infrastructures such as scalable certification systems and high performance access control services , as well as collaborative applications and replicated databases.


Some of the research at DSN has translated into useful systems that are publicly available:
  • Spread is a group communication toolkit that supports wide and local area networks including the Internet. Spread provides services ranging from reliable message passing to fully ordered messages with delivery guarantees, even in case of computer failures and network partitions. Current versions of the toolkit are used by industry (mostly Internet startups) as well as other academic institutions. To see the next generation of such tools, come visit our lab :)

  • Secure Spread integrates security services into the Spread group communication toolkit.

  • mod_backhand is an open source load balancing module for the Apache web server. mod_backhand incorporates some of the resource management techniques developed in our Metacomputing research. The system is included in the SuSE Linux distribution and is used by many web sites.

  • The Frugal System transforms Jini-enabled networks into metacomputers, allowing users on any machine to run their Java jobs on any other machine in the network. It uses advanced decision-making algorithms to automatically place these jobs on the best machine.


The lab has its own network with about 35 computers, including a cluster of 18 Xeon 64bit Dual-CPU machines, 8 brand-new Intel 64-bit Quad-Core machines and a brand new 8TB filesystem, all running 64-bit versions of Linux. A 1 Gbit/sec direct connection from the lab to the Internet and VBNS allow us to experiment with high speed wide-area networks. In addition, we have a 10Gbits/sec connection on our internal network, on which we can run even more rigorous experiments.


  • Yair Amir

    Yair teaches Distributed Systems, Operating Systems, and Advanced Distributed Systems. Research highlights:

    • Distributed systems: Group communication and multicast protocols; security for such systems; Spread.
    • Internet: Distributed and replicated servers for local and wide area clusters; Backhand.
    • Distributed algorithms: Metacomputing, distributed resource management, database replication.

Questions or comments to:
TEL: (410) 516-5562
FAX: (410) 516-6134
Distributed Systems and Networks Lab
Computer Science Department
Johns Hopkins University
3400 N. Charles Street Baltimore, MD 21218-2686