PlanetLab related software

maintained by Yun Mao
vxargs -- run stuff with dynamic arguments in parallel and with visualization

vxargs reads a list of arguments from a txt file or standard input, delimited by newlines, and executes the command one or more times with initial arguments in which {} is substituted by the arguments read from the file or standard input. The current executing commands and progress will be dynamically updated on the screen. Stdout and stderr of each command will be redirected to separate files. One of the major goals is to use vxargs to run parallel ssh commands, and other interesting stuff in wide-area networks.

openssh-related topic for PlanetLab

openssh is widely used in PlanetLab for controlling remote nodes. There are a couple of common problems:

ssh into some nodes will last (almost) forever
This is true especially for some nodes with insuffcient disk space, or extremely slow or lossy network. The ConnectTimeout parameter handles the case where the TCP connection fails altogether, but not for all the cases. One way to work around this problem is to apply the patch against openssh 3.8p1, provided by Mic Bowman, and add line

ConnectTimeout 10
to ~/.ssh/config. I also have the patched source code and compiled ssh binary available for download.

Host keys keep changing all the time, so that ssh would report some man-in-the-middle attacks.
ssh automatically maintains and checks a database containing identifications for all hosts it has ever been used with. Host keys are stored in $HOME/.ssh/known_hosts in the user's home directory. Each time when a PlanetLab node is re-installed, the host key will be re-generated. This perl script update_known_hosts.pl from Intel research should help you to update your known_hosts file. You are supposed to run it periodically, e.g. from cron.

Update: There is an updated version provided by Neil Spring with some new fixes.

Last modified: $Id: index.html,v 1.8 2005/02/03 21:24:22 maoy Exp $