PlanetLab? : The Design Principles of PlanetLab?
Authors: Larry Peterson and Timothy Roscoe
Complete Citation
- Peterson, Larry. Roscoe, Timothy. 2006. The Design Principles of PlanetLab? . Appears in "Operatign Systems Review", 40(1):11-16, January 2006
Abstract
PlanetLab? is a geographically distributed platform for deploying, evaluating, and accessing planetary-scale net- work services.
PlanetLab? is a shared community effort by a large international group of researchers, each of whom gets access to one or more isolated slices of
PlanetLab? 's global resources. Because we deployed
PlanetLab? and started supporting users before we fully understood what its architecture would be, being able to evolve the system became a requirement. This paper examines the set of design principles that guided this evolution. Some of these principles were explicit at the project outset, and others have become crystallized as the platform has developed.
Annotations
* Purpose:
PlanetLab? is a major player in network and Internet testing and research. I felt it was important to gain an understanding of its workings and design, in my work both as a network testbed devloper and as a student in the field of network research in general.
* Although this paper covers many different aspects of
PlanetLab? , some stand out as key. First, they describe three goal: provide a platform for planetary-scale network experiments, provide a platform for actual useful services, and help the Internet itself evolve in a service-oriented way. These overall goals are served by a variety of actual implementation decisions. "Slices" of virtual-machine usage are isolated from eachother in the system. A "chain of responsiblity" is a key part of the system, allowing users to "trust" eachother with their machines. They avoid "clean slate" designs, as the system's use is such it cannot be totally rebuilt. Finally, they avoid integration with the OS as far as possible, to keep things simple.
* My interest in
PlanetLab? is that it forms a large-scale, global example of a developed distributed testbed, something that we are finishing in-miniature here oncampus. As such, the decisions and issues they dealt with are relevant to the project here.
* Conclusion:
PlanetLab? 's pervasive, widespread use and success make it an excellent model to examine and ponder in the development of any network testbed. Understanding their design principles lends insight into problems and solutions one may encounter in similar tasks.
--
DavidMoore - 18 Jul 2007