Summary: Theo Schlossnagle
A load balancing module for the Apache web server.
mod_backhand is a dynamically loadable module for the Apache web server developed at The Center for
Networks and Distributed Systems (CNDS) at The Johns Hopkins University. This module aims to
seamlessly allow for load balancing within a cluster of machines. This paper will discuss the concepts,
implementations, advantages/disadvantages, practical applications and future directions.
mod_backhand is a part of the Backhand project initiated at CNDS. The purpose of the Backhand
project is to develop tools for effective resource management and utilization. The purpose of
mod_backhand, specifically, is to provide the infrastructure to reallocate HTTP requests to any machine
within a cluster and the framework for effective and flexible decision making.
The concept behind mod_backhand is the amalgamation of several important deviations from
"standard" practice. Many network appliances used for balancing web clusters have their foundations in
the networking world. This leads to a design drawn in the image of a router. This approach was purposely
avoided in an attempt to avoid bottlenecks and single points of failure. The approach we use allows for
maximum utilization of a network's egress points and survives link failures extremely well. The flexibility
of the implementation provides a tool that can be used to build both a single and a multiple entry point