wiki:GENIRacksHome/InstageniRacks/AcceptanceTestStatus/IG-EXP-7

Version 21 (modified by lnevers@bbn.com, 7 years ago) (diff)

--

EG-EXP-7: Click Router Experiment Acceptance Test

This page captures status for the test case EG-EXP-7, which verifies a click router scenario. This test has been executed for two topologies:

Results for both test scenario are captured in this page.

For overall status see the InstaGENI Acceptance Test Status page.

Last update: 2013/01/16

Test Status

This section captures the status for each step in the acceptance test plan.

Step State/Scenario 2: State/Scenario 1: Date completed Ticket
Step 1 Color(green,Pass)?
Step 2 Color(green,Pass)?
Step 3 Color(green,Pass)?
Step 4 Color(green,Pass)?
Step 5 Color(green,Pass)?
Step 6 Color(green,Pass)?
Step 7
Step 8
Step 9
Step 10
Step 11
Step 12
Step 13
Step 14
Step 15
Step 16


State Legend Description
Color(green,Pass)? Test completed and met all criteria
Color(#98FB98,Pass: most criteria)? Test completed and met most criteria. Exceptions documented
Color(red,Fail)? Test completed and failed to meet criteria.
Color(yellow,Complete)? Test completed but will require re-execution due to expected changes
Color(orange,Blocked)? Blocked by ticketed issue(s).
Color(#63B8FF,In Progress)? Currently under test.


Test Plan Steps

The following aggregate manager nicknames are used in this test case:

ig-utah=,https://utah.geniracks.net/protogeni/xmlrpc/am/2.0
ig-gpo=,https://instageni.gpolab.bbn.com/protogeni/xmlrpc/am/2.0

Scenario 1 - GPO Rack

1. As Experimenter1, request ListResources from GPO InstaGENI

As user lnevers@bbn.com requested listresources from GPO and Utah InstaGENI aggregates:

$ omni.py listresources -a ig-gpo -o

2. Review ListResources

Reviews output file rspec-instageni-gpolab-bbn-com-protogeniv2.xml to determine available resources.

3. Define a request RSpec for three VMs at GPO InstaGENI

The RSpec generated is IG-EXP-7.rspec requests a topology shown in here:

4. Define a request RSpec for GPO InstaGENI

The RSpec generated is IG-EXP-7-gpo.rspec.

5. Create slice

Created a slice:

$ omni.py createslice IG-EXP-7

6. Create a sliver

In the slice IG-EXP-7 create a slivers at the GPO InstaGENI AM using the RSpecs IG-EXP-7-gpo.rspec.

$ omni.py createsliver -a ig-gpo IG-EXP-7 IG-EXP-7-gpo.rspec

7. Install Click router

The Rspec used defines the following services to install the click router:

      <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    </services>

The above service will get the click-example.tar.gz place it on /local on the 4 router nodes, unpack the tar.gz file which contains two files:

  • install-script.sh - installs click routes v.2.0.1 ran as part of the createsliver.
  • extractClickConfig.py - determines MAC and IP settings for the configuration, ran manually after sliver is ready.

8. Determine Click router settings

The click router setting are determined by the extractClickConfig.py script. To run this script, determin login for each of the nodes in the experiment at each resource aggregate:

$ readyToLogin.py -a ig-gpo IG-EXP-7

First logged into hostA and hostB to verify connection are in place:

Generated configuration on each click router:

9. Run the user-level Click router

Login to each of the routers, and run the user-level Click router by providing the print pings configuration file name. Leave terminal connection open:

$ cd /local/click/userlevel
$ sudo ./click ~/click.conf 

10. Log in to Host1 and send traffic to host2

Log in to host1 and send traffic to host2 and leave traffic running. Review the output on the terminal for each of the

Log in to host2 and send traffic to host1

11. Review Click logs on each Click router

16. Delete slivers

Scenario 2 - GPO and Utah IG Racks

1. As Experimenter1, request ListResources from GPO and Utah InstaGENI

As user lnevers@bbn.com requested listresources from GPO and Utah InstaGENI aggregates:

$ omni.py listresources -a ig-gpo -o
$ omni.py listresources -a ig-utah -o

2. Review ListResources output from both AMs

Reviews output files rspec-instageni-gpolab-bbn-com-protogeniv2.xml and rspec-utah-geniracks-net-protogeniv2.xml to determine available resources.

3. Define a request RSpec for three VMs at GPO InstaGENI

For InstaGENI aggregates, the RSpec for a sliver can include resources from multiple aggregates. The aggregate handling the request will only allocate its own resources, therefore one RSpec is used to capture the resource requests for both sites in this scenario.

Defined an RSpec that requests one three VMs at the GPO rack and three VMs at the Utah rack. For each rack aggregate, one of the VMs will be an end-point host and the other two VMs will be click routers.

The RSpec generated is IG-EXP-7.rspec and the topology is shown in the following image using client_ids defined in the RSpec:

Note: link-0 and link-3 are GRE tunnels

4. Define a request RSpec for three VMs at Utah InstaGENI

The RSpec generated for the GPO aggregate is also used for the Utah aggregate, the file is IG-EXP-7.rspec.

5. Create slice

Created a slice:

$ omni.py createslice IG-EXP-7

6. Create a sliver

In the slice IG-EXP-7 create a slivers at each AM, using the RSpecs IG-EXP-7.rspec defined above.

$ omni.py createsliver -a ig-gpo IG-EXP-7 IG-EXP-7.rspec
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework pg
INFO:omni:Substituting AM nickname ig-gpo with URL http://instageni.gpolab.bbn.com/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN
INFO:omni:Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+IG-EXP-7 expires on 2013-01-16 15:33:02 UTC
INFO:omni:Substituting AM nickname ig-gpo with URL http://instageni.gpolab.bbn.com/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN
INFO:omni:Substituting AM nickname ig-gpo with URL http://instageni.gpolab.bbn.com/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN
INFO:omni:Creating sliver(s) from rspec file IG-EXP-7.rspec for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+IG-EXP-7
INFO:omni:Got return from CreateSliver for slice IG-EXP-7 at http://instageni.gpolab.bbn.com/protogeni/xmlrpc/am/2.0:
INFO:omni:<!-- Reserved resources for:
	Slice: IG-EXP-7
	at AM:
	URN: unspecified_AM_URN
	URL: http://instageni.gpolab.bbn.com/protogeni/xmlrpc/am/2.0
 -->
INFO:omni:<rspec xmlns:flack="http://www.protogeni.net/resources/rspec/ext/flack/1" xmlns:client="http://www.protogeni.net/resources/rspec/ext/client/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.geni.net/resources/rspec/3" type="manifest" xsi:schemaLocation="http://www.geni.net/resources/rspec/3 http://www.geni.net/resources/rspec/3/manifest.xsd">
  <node client_id="hostA" component_manager_id="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm" exclusive="false" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+node+pc2" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+600">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="hostA:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:lo0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+605" mac_address="0271a211d0d1">
    <ip address="192.168.4.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pcvm2-4"/><host name="hostA.IG-EXP-7.pgeni-gpolab-bbn-com.instageni.gpolab.bbn.com"/><services><login authentication="ssh-keys" hostname="pc2.instageni.gpolab.bbn.com" port="30778" username="lnevers"/></services></node>
  <node client_id="top" component_manager_id="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm" exclusive="false" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+node+pc2" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+602">
    <sliver_type name="emulab-openvz"/>
    <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    <login authentication="ssh-keys" hostname="pc2.instageni.gpolab.bbn.com" port="30780" username="lnevers"/></services>
    <interface client_id="top:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:lo0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+606" mac_address="020e86a48ac8">
    <ip address="192.168.4.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="top:if1" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:lo0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+608" mac_address="024e8070267e">
    <ip address="192.168.1.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="top:if2" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+613" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:eth0">
    <ip address="192.168.0.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pcvm2-6"/><host name="top.IG-EXP-7.pgeni-gpolab-bbn-com.instageni.gpolab.bbn.com"/></node>
  <node client_id="left" component_manager_id="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm" exclusive="false" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+node+pc2" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+601">
    <sliver_type name="emulab-openvz"/>
    <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    <login authentication="ssh-keys" hostname="pc2.instageni.gpolab.bbn.com" port="30779" username="lnevers"/></services>
    <interface client_id="left:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:lo0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+609" mac_address="02aadbf6c174">
    <ip address="192.168.1.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="left:if1" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+611" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:eth0">
    <ip address="192.168.3.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pcvm2-5"/><host name="left.IG-EXP-7.pgeni-gpolab-bbn-com.instageni.gpolab.bbn.com"/></node>
  <node client_id="right" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    </services>
    <interface client_id="right:if0">
    <ip address="192.168.0.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="right:if1">
    <ip address="192.168.2.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="bottom" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    </services>
    <interface client_id="bottom:if0">
    <ip address="192.168.2.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="bottom:if1">
    <ip address="192.168.3.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="bottom:if2">
    <ip address="192.168.5.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="hostB" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="hostB:if0">
    <ip address="192.168.5.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <link client_id="link-A" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+604">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <interface_ref client_id="hostA:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:lo0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+605"/>
    <interface_ref client_id="top:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:lo0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+606"/>
    <property source_id="hostA:if0" dest_id="top:if0"/>
    <property source_id="top:if0" dest_id="hostA:if0"/>
    <link_type name="lan"/>
  </link>
  <link client_id="link-0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+607">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <interface_ref client_id="top:if1" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:lo0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+608"/>
    <interface_ref client_id="left:if0" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:lo0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+609"/>
    <property source_id="top:if1" dest_id="left:if0"/>
    <property source_id="left:if0" dest_id="top:if1"/>
    <link_type name="lan"/>
  </link>
  <link client_id="link-2" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+610">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="left:if1" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:eth0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+611"/>
    <interface_ref client_id="bottom:if1"/>
    <property source_id="left:if1" dest_id="bottom:if1"/>
    <property source_id="bottom:if1" dest_id="left:if1"/>
    <link_type name="gre-tunnel"/>
  </link>
  <link client_id="link-1" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+612">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="top:if2" component_id="urn:publicid:IDN+instageni.gpolab.bbn.com+interface+pc2:eth0" sliver_id="urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+613"/>
    <interface_ref client_id="right:if0"/>
    <property source_id="top:if2" dest_id="right:if0"/>
    <property source_id="right:if0" dest_id="top:if2"/>
    <link_type name="gre-tunnel"/>
  </link>
  <link client_id="link-3">
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="bottom:if0"/>
    <interface_ref client_id="right:if1"/>
    <property source_id="bottom:if0" dest_id="right:if1"/>
    <property source_id="right:if1" dest_id="bottom:if0"/>
    <link_type name="lan"/>
  </link>
  <link client_id="link-B">
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="bottom:if2"/>
    <interface_ref client_id="hostB:if0"/>
    <property source_id="bottom:if2" dest_id="hostB:if0"/>
    <property source_id="hostB:if0" dest_id="bottom:if2"/>
    <link_type name="lan"/>
  </link>
</rspec>
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed createsliver:

  Options as run:
		aggregate: ['ig-gpo']
		framework: pg

  Args: createsliver IG-EXP-7 IG-EXP-7.rspec

  Result Summary: Got Reserved resources RSpec from instageni-gpolab-bbn-com-protogeniv2 
INFO:omni: ============================================================

$ omni.py createsliver -a ig-utah IG-EXP-7 IG-EXP-7.rspec
INFO:omni:Loading config file /home/lnevers/.gcf/omni_config
INFO:omni:Using control framework pg
INFO:omni:Substituting AM nickname ig-utah with URL http://utah.geniracks.net/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN
INFO:omni:Slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+IG-EXP-7 expires on 2013-01-16 15:33:02 UTC
INFO:omni:Substituting AM nickname ig-utah with URL http://utah.geniracks.net/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN
INFO:omni:Substituting AM nickname ig-utah with URL http://utah.geniracks.net/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN
INFO:omni:Creating sliver(s) from rspec file IG-EXP-7.rspec for slice urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+IG-EXP-7
INFO:omni:Got return from CreateSliver for slice IG-EXP-7 at http://utah.geniracks.net/protogeni/xmlrpc/am/2.0:
INFO:omni:<!-- Reserved resources for:
	Slice: IG-EXP-7
	at AM:
	URN: unspecified_AM_URN
	URL: http://utah.geniracks.net/protogeni/xmlrpc/am/2.0
 -->
INFO:omni:<rspec xmlns:flack="http://www.protogeni.net/resources/rspec/ext/flack/1" xmlns:client="http://www.protogeni.net/resources/rspec/ext/client/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.geni.net/resources/rspec/3" type="manifest" xsi:schemaLocation="http://www.geni.net/resources/rspec/3 http://www.geni.net/resources/rspec/3/manifest.xsd">
  <node client_id="hostA" component_manager_id="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="hostA:if0">
    <ip address="192.168.4.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="top" component_manager_id="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    </services>
    <interface client_id="top:if0">
    <ip address="192.168.4.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="top:if1">
    <ip address="192.168.1.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="top:if2">
    <ip address="192.168.0.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="left" component_manager_id="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm" exclusive="false">
    <sliver_type name="emulab-openvz"/>
    <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    </services>
    <interface client_id="left:if0">
    <ip address="192.168.1.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="left:if1">
    <ip address="192.168.3.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  </node>
  <node client_id="right" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc3" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16059">
    <sliver_type name="emulab-openvz"/>
    <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    <login authentication="ssh-keys" hostname="pc3.utah.geniracks.net" port="32060" username="lnevers"/></services>
    <interface client_id="right:if0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16064" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:eth0">
    <ip address="192.168.0.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="right:if1" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:lo0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16067" mac_address="02a3b92aa943">
    <ip address="192.168.2.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pcvm3-5"/><host name="right.IG-EXP-7.pgeni-gpolab-bbn-com.utah.geniracks.net"/></node>
  <node client_id="bottom" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc3" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16057">
    <sliver_type name="emulab-openvz"/>
    <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    <login authentication="ssh-keys" hostname="pc3.utah.geniracks.net" port="32058" username="lnevers"/></services>
    <interface client_id="bottom:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:lo0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16066" mac_address="02a1ad72891b">
    <ip address="192.168.2.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="bottom:if1" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16062" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:eth0">
    <ip address="192.168.3.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
    <interface client_id="bottom:if2" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:lo0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16069" mac_address="02d57252a31c">
    <ip address="192.168.5.1" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pcvm3-1"/><host name="bottom.IG-EXP-7.pgeni-gpolab-bbn-com.utah.geniracks.net"/></node>
  <node client_id="hostB" component_manager_id="urn:publicid:IDN+utah.geniracks.net+authority+cm" exclusive="false" component_id="urn:publicid:IDN+utah.geniracks.net+node+pc3" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16058">
    <sliver_type name="emulab-openvz"/>
    <interface client_id="hostB:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:lo0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16070" mac_address="028915f5aa5e">
    <ip address="192.168.5.2" netmask="255.255.255.0" type="ipv4"/>
    </interface>
  <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pcvm3-3"/><host name="hostB.IG-EXP-7.pgeni-gpolab-bbn-com.utah.geniracks.net"/><services><login authentication="ssh-keys" hostname="pc3.utah.geniracks.net" port="32059" username="lnevers"/></services></node>
  <link client_id="link-A">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <interface_ref client_id="hostA:if0"/>
    <interface_ref client_id="top:if0"/>
    <property source_id="hostA:if0" dest_id="top:if0"/>
    <property source_id="top:if0" dest_id="hostA:if0"/>
    <link_type name="lan"/>
  </link>
  <link client_id="link-0">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <interface_ref client_id="top:if1"/>
    <interface_ref client_id="left:if0"/>
    <property source_id="top:if1" dest_id="left:if0"/>
    <property source_id="left:if0" dest_id="top:if1"/>
    <link_type name="lan"/>
  </link>
  <link client_id="link-2" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16061">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="left:if1"/>
    <interface_ref client_id="bottom:if1" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:eth0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16062"/>
    <property source_id="left:if1" dest_id="bottom:if1"/>
    <property source_id="bottom:if1" dest_id="left:if1"/>
    <link_type name="gre-tunnel"/>
  </link>
  <link client_id="link-1" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16063">
    <component_manager name="urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm"/>
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="top:if2"/>
    <interface_ref client_id="right:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:eth0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16064"/>
    <property source_id="top:if2" dest_id="right:if0"/>
    <property source_id="right:if0" dest_id="top:if2"/>
    <link_type name="gre-tunnel"/>
  </link>
  <link client_id="link-3" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16065">
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="bottom:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:lo0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16066"/>
    <interface_ref client_id="right:if1" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:lo0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16067"/>
    <property source_id="bottom:if0" dest_id="right:if1"/>
    <property source_id="right:if1" dest_id="bottom:if0"/>
    <link_type name="lan"/>
  </link>
  <link client_id="link-B" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16068">
    <component_manager name="urn:publicid:IDN+utah.geniracks.net+authority+cm"/>
    <interface_ref client_id="bottom:if2" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:lo0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16069"/>
    <interface_ref client_id="hostB:if0" component_id="urn:publicid:IDN+utah.geniracks.net+interface+pc3:lo0" sliver_id="urn:publicid:IDN+utah.geniracks.net+sliver+16070"/>
    <property source_id="bottom:if2" dest_id="hostB:if0"/>
    <property source_id="hostB:if0" dest_id="bottom:if2"/>
    <link_type name="lan"/>
  </link>
</rspec>
INFO:omni: ------------------------------------------------------------
INFO:omni: Completed createsliver:

  Options as run:
		aggregate: ['ig-utah']
		framework: pg

  Args: createsliver IG-EXP-7 IG-EXP-7.rspec

  Result Summary: Got Reserved resources RSpec from utah-geniracks-net-protogeniv2 
INFO:omni: ============================================================

7. Install Click router

The Rspec used defines the following services to install the click router:

      <services>
      <execute command="sudo /local/install-script.sh" shell="sh"/>
      <install install_path="/local" url="http://www.gpolab.bbn.com/experiment-support/ClickExampleExperiment/click-example.tar.gz"/>
    </services>

The above service will get the click-example.tar.gz place it on /local on the 4 router nodes, unpack the tar.gz file which contains two files:

  • install-script.sh - installs click routes v.2.0.1 ran as part of the createsliver.
  • extractClickConfig.py - determines MAC and IP settings for the configuration, ran manually after sliver is ready.

8. Determine Click router settings

The click router setting are determined by the extractClickConfig.py script. To run this script, determin login for each of the nodes in the experiment at each resource aggregate:

$ readyToLogin.py -a ig-gpo IG-EXP-7
<...>
hostA's geni_status is: ready (am_status:ready) 
User lnevers logins to hostA using:
	xterm -e ssh -p 30778  -i /home/lnevers/.ssh/id_rsa lnevers@pc2.instageni.gpolab.bbn.com &

left's geni_status is: ready (am_status:ready) 
User lnevers logins to left using:
	xterm -e ssh -p 30779  -i /home/lnevers/.ssh/id_rsa lnevers@pc2.instageni.gpolab.bbn.com &

top's geni_status is: ready (am_status:ready) 
User lnevers logins to top using:
	xterm -e ssh -p 30780  -i /home/lnevers/.ssh/id_rsa lnevers@pc2.instageni.gpolab.bbn.com &

$ readyToLogin.py -a ig-utah IG-EXP-7
<...>

right's geni_status is: ready (am_status:ready) 
User lnevers logins to right using:
	xterm -e ssh -p 32060  -i /home/lnevers/.ssh/id_rsa lnevers@pc3.utah.geniracks.net &

bottom's geni_status is: ready (am_status:ready) 
User lnevers logins to bottom using:
	xterm -e ssh -p 32058  -i /home/lnevers/.ssh/id_rsa lnevers@pc3.utah.geniracks.net &

hostB's geni_status is: ready (am_status:ready) 
User lnevers logins to hostB using:
	xterm -e ssh -p 32059  -i /home/lnevers/.ssh/id_rsa lnevers@pc3.utah.geniracks.net &

Note: The sliver for each aggregate only includes hostname for the local aggregate, to simplify the experiment, added the GPO nodes to the Utah nodes /etc/hosts definitions, and vice versa.

First logged into hostA and hostB to verify connection are in place:

Generated configuration on each click router: }}}

9. Run the user-level Click router

Login to each of the routers, and run the user-level Click router by providing the print pings configuration file name. Leave terminal connection open:

$ cd /local/click/userlevel
$ sudo ./click ~/click.conf 

10. Log in to Host1 and send traffic to host2

Log in to host1 and send traffic to host2 and leave traffic running. Review the output on the terminal for each of the

Log in to host2 and send traffic to host1

11. Review Click logs on each Click router

16. Delete slivers

Attachments (7)

Download all attachments as: .zip