Overview
MONET arose from the observation that access links are often the
weakest link in Internet availability, particularly for home users, or
users in areas without well-established Internet infrastructures. The
traditional mechanism for taking advantage of multiple access links
— multihoming with the Border Gateway Protocol (BGP) — is not
available to many of these people who need redundancy the most. Our
implementation of MONET is a Web proxy that uses an application layer
approach to harness redundant access links and multiple paths through
the Internet to dynamically avoid network failures. A deployed MONET system
has been in use at several sites since 2003.
MONET takes advantage of path redundancy from three sources, shown above:
- Multiple Internet connections
- Internet path redundancy accessed via a cooperative overlay network of proxies
- Server redundancy and server access link redundancy accessed by simultaneously contacting multiple addresses returned by the Domain Name System.
Given these sources of path redundancy, MONET's waypoint
selection algorithm probes a subset of the available paths to
quickly find a working path from the proxy to a Web server. Our
results suggest that MONET can make a large improvement in the end to
end availability of Web sites.
MONET is a follow-on project to our work on Resilient Overlay Networks (RON). Both MONET and RON take place within the larger context of our research into large-scale, robust distributed systems.
The MONET source code
MONET is implemented as a set of changes to the open-source Squid web
proxy and pdnsd parallel DNS resolver. We have released a very
beta-quality version of the MONET source code.
Papers
Talks
Coming soon.
People
Related research
This work was funded by the NSF under Cooperative Agreement No. ANI-0225660; David Andersen was funded by a Microsoft Research fellowship. Many thanks to both of these sources for making the MONET research possible.
We also owe a great debt to the systems administrators who allowed us to deploy MONET proxies on their networks, and to the many users at MIT's CSAIL who used the proxy (through internet meltdowns and proxy meltdowns) to provide us with evaluation data.