Changes between Version 9 and Version 10 of GeniTmixCalibTutorial
- Timestamp:
- 06/19/14 14:28:58 (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GeniTmixCalibTutorial
v9 v10 5 5 This page describes how to run calibration experiments with [wiki:GeniTmix 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 or Unix running on a PC or virtual machine is required. The tutorial also assumes basic familiarity with Linux or Unix, and the ability to use a terminal text editor such as emacs, vim or nano. 6 6 7 At run-time Tmix "replays" the exchanges encoded in a set of connection vectors (or c-vecs). The connection vectors are extracted from traffic captured on a real network link. Since all of the traffic crossing a busy link cannot generally be replayed using a single pair of nodes, it is customary to split the connection vectors into N pairs of tcvec files. If all of the traffic observed on a busy link cannot be simulated with just two nodes, what percentage of the traffic can we replay? How many pairs of nodes do we need to use to simulate all the traffic? It is exactly these questions that calibration seeks to answer. Below we will walk through the process of determining how much traffic can be simulated by a single pair of nodes. 7 8 8 9 == A Reserve Resources in Omni or GENI Portal == … … 21 22 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. 22 23 23 == C Run Tmix Script ==24 1. The image loaded on the nodes has the tmix tools already installed and in your path. Each time the system boots, a kernel module is automatically inserted to assist in simulating the packet delays. Issue the following command to run a Tmix setup script24 == C Run Tmix Script and view data files == 25 1. The image loaded on the nodes has the tmix tools already installed and in your path. Each time the system boots, a kernel module is automatically inserted to assist in simulating the packet delays. Issue the following command on the SSH terminal of the "left" node to run a Tmix setup script 25 26 {{{ 26 27 sudo /local/tmix-script.sh 27 28 }}} 28 29 29 2. Now, list the contents of your home directory. 30 2. '''Repeat''' the above command in the SSH terminal of the "right" node. 31 32 3. Now, list the contents of your home directory on either node. 30 33 {{{ 31 34 ls … … 33 36 You should see a tmix.conf file, which contains the configuration for a tmix experiment. Open the file with an editor such as vim, emacs, or nano, and browse its contents. These are various settings that control a tmix experiment. At the end of the file notice the Crecv_Trace and Cinit_Trace lines. These are the only lines you will need to change as we run our calibration experiments. 34 37 35 3. List the contents of the tmix data directory by typing the following :38 3. List the contents of the tmix data directory by typing the following on either node: 36 39 {{{ 37 40 ls /opt/tmix-1.2/data 38 41 }}} 39 A t run-time Tmix "replays" the exchanges encoded in a set of connection vectors (or c-vecs). The connection vectors are extracted from traffic captured on a real network link. A set of connection vectors is described by with a pair of tcvec files (labeled cinit.tcvec and crecv.tcvec). These two files correspond to connections that are initiated on either side of the link on which the traffic data was originally captured. Since all of the traffic crossing a busy link cannot generally be replayed using a single pair of nodes, it is customary to split the connection vectors into N pairs of tcvec files. Most of the files displayed in the listing are named 1ofN.crecv.tcvec. This is a single pair of connection vector files obtained by evenly splitting the original set of connection vectors into N parts. For example, running tmix with the pair of files, 1of10.crecv.tcvec and 1of10.cinit.tcvec, will replay about 1/10th the traffic originally recorded on the link.42 A set of connection vectors is described by with a pair of tcvec files (labeled cinit.tcvec and crecv.tcvec). These two files correspond to connections that are initiated on either side of the link on which the traffic data was originally captured. Since all of the traffic crossing a busy link cannot generally be replayed using a single pair of nodes, it is customary to split the connection vectors into N pairs of tcvec files. Most of the files displayed in the listing are named 1ofN.crecv.tcvec. This is a single pair of connection vector files obtained by evenly splitting the original set of connection vectors into N parts. For example, running tmix with the pair of files, 1of10.crecv.tcvec and 1of10.cinit.tcvec, will replay about 1/10th the traffic originally recorded on the link. Below we will perform a set of experiments in which we iterate to find the point at which our pair of nodes can no longer work fast enough to simulate all the network traffic. 40 43 41 4. Whe 44 == C Run Tmix Script and view data files == 45 46 1. '''Edit your tmix.conf''' file using a terminal text editor such that your Crecv and Cinit lines are the following. 47 {{{ 48 Cinit_Trace = /opt/tmix-1.2/data/1of10.cinit.tcvec 49 Crecv_Trace = /opt/tmix-1.2/data/1of10.crecv.tcvec 50 }}} 51 on the "left" node, and 52 {{{ 53 Cinit_Trace = /opt/tmix-1.2/data/1of10.crecv.tcvec 54 Crecv_Trace = /opt/tmix-1.2/data/1of10.cinit.tcvec 55 }}} 42 56 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: 43 57 {{{