PlanetLab Project
A Divert Mechanism for Service Overlays
Aki Nakao
Princeton University
Description
Overlays are gaining popularity as a vehicle for deploying network
services. Examples include resilient transport, distributed object location,
peer-to-peer storage, and multicast. Most of these services
behave in the same way: participants collectively and cooperatively
implement some service for the benefit of all overlay members.
We propose a new perspective on such overlay networks.
Provided there are multiple service overlays that implement
their own network services on shared overlay nodes, we let users
subscribe to arbitrary service overlays in a way that is transparent
to applications they are running.
In our design, we made a clear distinction between desktop and
overlay nodes. A desktop is a user's machine that subscribes to
a service overlay. Desktops are usually under full control of the
user. All privileged operations, such as loading kernel modules and
setting up firewall rules, are allowed on desktop machines. On the
other hand, overlay nodes are shared, protected, and restricted,
intermediate resources, where privileged operations are prohibited, or
modified to be restricted or protected in some way.
We made use of protected RAW socket machanism avaliable on our
overlay nodes.
We explored the idea of transparently diverting designated
packets onto arbitrary service overlays. By implementing an example
routing overlay service based on RON
on PlanetLab,
we have identified a general-purpose mechanism that allows users
to connect their desktops
to arbitrary service overlays, with both client and server
applications unaware of the existence of the service overlay. In
addition, by turning RON into an overlay service, we are able to scale
RON to a larger number of client nodes, and allow thin clients to access
the service as well.
Download
Links
Copyright (C) 2002 Akihiro Nakao.
All rights reserved.