Changes between Version 15 and Version 16 of GEC21Agenda/ChoiceNet/run_tests


Ignore:
Timestamp:
10/20/14 00:08:26 (5 years ago)
Author:
griff@netlab.uky.edu
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GEC21Agenda/ChoiceNet/run_tests

    v15 v16  
    33= A !ChoiceNet Source-Routed Forwarding Service and Marketplace =
    44
    5 The first !ChoiceNet service that we will use is the ''!ChoiceNet Source-Routed Forwarding Service'' described [wiki:GEC21Agenda/ChoiceNet/gt_tool  earlier].  We assume you have [wiki:GEC21Agenda/ChoiceNet/ already created two terminal windows], '''TERMINAL 1''' and '''TERMINAL 2''' that are logged into slice nodes '''H1''' and '''H2''' respectively.  You objective in this part of the tutorial is to run ''iperf'' between H1 and H2 several different ways:
    6  1. Requesting a low cost but lower-bandwidth path (and providing the payment need to get back low bandwidth paths from the PS)
    7  1. Requesting a higher cost but higher-bandwidth path (and providing the payment need to get back high bandwidth paths from the PS)
    8  1. Requesting a medium cost, high bandwidth but high latency path and providing the payment need to get back high bandwidth/high latency paths from the PS)
    9  1. Without providing sufficient payment to the ''path service (PS)'' -- which should cause iperf to fail
     5The first !ChoiceNet service that we will use is the ''!ChoiceNet Source-Routed Forwarding Service'' described [wiki:GEC21Agenda/ChoiceNet/gt_tool  earlier].  We assume you have [wiki:GEC21Agenda/ChoiceNet/ already created two terminal windows], '''TERMINAL 1''' and '''TERMINAL 2''' that are logged into end systems '''H1''' and '''H2''' respectively.  You objective in this part of the tutorial is to run ''iperf'' between H1 and H2 across several different paths (having different prices):
     6 1. '''A low cost but low-bandwidth path''' (and providing the payment need to get back low bandwidth paths from the ''path service'' (PS))
     7 1. '''A high cost but higher-bandwidth path''' (and providing the payment need to get back high bandwidth paths from the PS)
     8 1. '''A medium cost, high bandwidth but high latency path''' (and providing the payment need to get back high bandwidth/high latency paths from the PS)
     9 1. '''Without providing sufficient payment''' to the PS -- which should cause iperf to fail
    1010
    11 You will run your iperf server on H1 and the iperf client on H2.  For each test case, we will be able to see the throughput achieved by iperf, indicating that the PS found an appropriate path, and iperf received the requested performance characteristics.   If you are logged into the GENI Desktop, you will be able to visually see the traffic taking different paths across the topology.
     11You will run your iperf server on H1 and the iperf client on H2.  For each test case, iperf will print its throughput which will show that ithe PS found an appropriate path, and that iperf received the requested performance characteristics.   Moreover, if you are logged into the GENI Desktop you will be able to visually see the traffic taking different paths across the topology.
    1212
    1313=== Start the iperf server '''on TERMINAL 1''' ('''H1''') ===
     
    5050where ''IPv6 address of H1'' is the IPv6 address you found above (in TERMINAL 1).
    5151
    52 Choicenet is all about choices in the network. For our iperf test run, we currently have a set the network to use the High Bandwidth path "HB". If you like to take an alternate route based on your network preference , you can use any editor (vim, pico , nano) that you prefer to edit the  ../config/config.txt and change HB to LB ( Low Bandwidth) path or HBHL (High bandwidth High Latency) path as the last line.
    53 We then use a Choicenet wrapper app to convert an existing tcp application into a Choicenet application as shown below
     52= Selecting and Paying for Paths =
    5453
    55 get ready to start the iperf Client here . Type the command and keep it ready . '''DO NOT RUN IT JUST YET'''
     54Users select the type of path they want to use, along with the amount they are willing to pay for a path, via a configuration file on the sending machine.  It can be found in the ~/choicenet/source/config/config.txt file.  The config.txt file stores the user's economic choices.  In particular, the config.txt file contains a list of applications and the type of path that should be selected for the application.  For example, the config file might list ''iperf'' as an application and ask for high bandwidth paths while at the same time having a listing for ''ssh'' that requests paths with low latency.  Not only does it specify the type of path, but it also specifies how much the user is willing to pay for the path.  The wrapper library used by applications consults the config.txt file before contacting the ''path service (PS)'', and uses the information in the config.txt file to determine what type of path to request.  It also uses the price information to determine the maximum consideration (payment) that the sender is willing to pay for the service.
    5655
    57 {{{
    58 #!sh
    59 sudo ./wrap /usr/bin/iperf -c <IPv6 address of H1 > -V
    60 }}}
     56= Choosing a Low Bandwidth Path =
    6157
    62 (IPv6 address should be eth1 on H1 and starts with fec0)
     58The initial config.txt file that we provided to you encodes a desire to use low bandwidth paths at a low price point.  As a result, the iperf test you ran above ended up purchasing the low bandwidth path through the LB router in your slice.  You should have seen a throughput of less that 1 Mbps as that is the maximum bandwidth achievable over the LB path.
    6359
    64 Now GOTO TERMINAL1 and run the iperf server command. Immediately then switch to TERMINAL2 and run the client command too.
     60= Choosing a Higher Bandwidth Path =
     61
     62To chose (and pay for) a higher bandwidth path (and higher cost), you will need to edit the config.txt file and replace the current policy that prefers low bandwidth paths.  In particular, you will need to change the line '''lb 1 USD''' to '''hb 10 USD'''.  This tells the wrapper library that you prefer high bandwidth paths for the iperf program and that you are willing to pay 10 USD for the paths you receive.  Having changed the policies in config.txt, all you need to do is to return iperf as you did above.
     63
     64Asking for high bandwidth paths results in the PS returning a high bandwidth path passing through the router HB.  As a result, the output from iperf should now jump to be roughly 7-8Mbps.