wiki:GeniTmixTutorial

Version 52 (modified by Ben Newton, 5 years ago) (diff)

--

Using Tmix on GENI

This page describes how to run experiments with Tmix on GENI nodes. This tutorial assumes that you are already familiar with basic experimentation with GENI, and that you have access to a machine from which you can execute ssh commands and login to external machines. If you wish to reserve resources using omni, some version of Linux/Unix running on a PC or virtual machine is required. The tutorial also assumes basic familiarity with Linux/Unix.

1 Reserve Resources in Omni or GENI Portal

Determine whether you wish to use Omni or GENI Portal to reserve GENI resources for this Tutorial. We recommend you use GENI Portal, unless you are experienced with, or wish to gain experience with Omni. Click one of the links below that matches your choice.

Reserve Resources using GENI Portal

Reserve Resources using Omni

2 Login to nodes

We suggest you now open two new terminal windows, one for each node. To log into the nodes reserved in the previous step issue the following command for each node in one of the new windows.

ssh -i ~/.ssh/id_geni_ssh_rsa <username>@<hostname> -p <port>

As expected, <username> should be replaced with your GENI username, and <hostname> and <port> are replaced with the hostname and port of the reserved Geni resource noted in the previous step.

3 Run Tmix

The image loaded on the nodes has the tmix tools already installed and in your path. Also, while booting the first time, a script has generated a set of tmix configuration files for these nodes. Each time the system boots, a kernel module is automatically inserted to assist in simulating the packet delays. List the contents of your home directory.

ls

You should see a tmix.conf file, which is contains the configuration for the tmix experiment. Feel free to open the file and browse its contents.

Tmix relies upon a pre-determined start time to synchronize tmix on the two nodes. On both nodes run the following command to determine the time and date:

date

Note that the time may be in a different time zone. Decide on a start time about 2-3 minutes in the future, relative to the time displayed by the date command. It should be far enough in the future for you to issue the following command on both nodes with 30 seconds to spare before that start time.

Finally, execute the following command on both nodes:

tmix -s HH:MM:SS tmix.conf &

where HH:MM:SS is the chosen start time in hours minutes and seconds.

Tmix on both hosts will load the data files and then wait until the designated start time. You will see "Running for ???? seconds" once tmix is ready to go.

To verify when tmix has started run

top

You should see tmix at the top of the list once it starts. To exit top type 'q'.

After about 12 minutes, the experiment will complete, and a list of statistics will be output to the console. Also a set of log files with extentions .ert, .trt, .unc, .rt, and .ts will be created in the directory.

4 Delete Resources

Once your experiment is complete and you have collected your results, you should return the reserved resources. To do so, follow the step below which matches your choice to use GENI Portal or Omni.

4.1 Using GENI Portal

  1. Click on slices in the upper right-hand corner.
  1. Find your slice in the list, and click on the corresponding Delete Resources button.
  1. Click "Delete Resources" again to confirm that you want to delete all reserved resources.

4.2 Using Omni

In the terminal execute the following command:

omni.py -a pg-utah deletesliver <sliceName>

where <sliceName> is once again replaced with your chosen unique slice name.