Changes between Version 69 and Version 70 of GeniTmixCalibTutorial

06/21/14 15:16:19 (5 years ago)
Ben Newton



  • GeniTmixCalibTutorial

    v69 v70  
    77Before starting it is important to understand what calibration is, and why it is important.  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.  These can then be used on N pairs of machines to simulate the captured network traffic.  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.   
    9 == A Reserve Resources on GENI Portal ==
     9== A. Reserve Resources on GENI Portal ==
    1010Click the link below for instructions on generating a slice and reserving resources using the GENI Portal.  For this tutorial we will use the '''“Tmix 10 min experiment”''' resource specification (rspec). If you are completing this tutorial at a conference you will add nodes from the aggregate you were assigned to use by the person in charge of the tutorial. Otherwise, you may use any of the '''instageni''' or ProtoGENI aggregates.  The image and setup are the same as in the basic Tmix Tutorial. 
    15 == B Log in to nodes ==
     15== B. Log in to nodes ==
    1616Two nodes have been reserved with the hostnames "left" and "right".  Open two new SSH terminals, one to each node.   
    1717On Linux you may use the following command to log in to both nodes reserved in the previous step. 
    2121As expected, <username> should be replaced with your GENI username, and <hostname> and <port> should be replaced with the hostname and port of the reserved GENI resource noted in the previous step. 
    23 == C Run Tmix  Script and view data files ==
     23== C. Run Tmix  Script and view data files ==
    24241.  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.  List the contents of your home directory on either node.
    4242A 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.   
    44 == D Run Tmix  Script and view data files ==
     44== D. Run Tmix  Script and view data files ==
    45451. Make a new directory for this experiment, change to it, and copy tmix.conf there by typing:
    102 == E Iterate ==
     102== E. Iterate ==
    103103[[Image(calibration.png, 550, nolink, right)]] '''Repeat steps 1 through 10 of section D''' for various input files (i.e. 1of02.cinit.tcvec), and plot the resulting bytes transferred.  You should reach a point where the linear growth stops.  The graph below is the resulting graph from calibrating two GENI nodes.  At least 3 pairs of nodes would be needed to reliably replay data on these nodes. You can use the following table to record your results.     
    120120||1 of 30||17,175|| || ||
    122 == E Delete Resources ==
     122== F. Delete Resources ==
    123123Once your experiment is complete and you have collected your results, you should return the reserved resources.  To do so, follow the step below.