Changes between Version 2 and Version 3 of GENIExperimenter/Tutorials/OpenFlowNetworkDevices


Ignore:
Timestamp:
07/11/15 14:49:08 (9 years ago)
Author:
sedwards@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GENIExperimenter/Tutorials/OpenFlowNetworkDevices

    v2 v3  
    9292                       <br><b>Tip:</b> If you are not a member of any project and you don't know how to procede, <a href="mailto:help@geni.net?Subject=Help%20with%20HelloGENI%20tutorial"> email us </a>
    9393                    </li>
    94             <li> Name your slice something like <b>xxxhello</b> (where xxx are your initials)<br></li>
     94            <li> Name your slice something like <b>xxxopenflow</b> (where xxx are your initials)<br></li>
    9595            <li> Once the slice page loads, click the <b> Add Resources </b> button placed at the top left part of the screen. <br> <b>NOTE:</b> If you get a warning about not having uploaded ssh keys  just follow the instructions on providing an ssh key before you proceed.</li>
    9696            <li> In the <b> Choose RSpec </b> section, choose the <b> Hello GENI </b> choice, which should contain: <a href="http://www.gpolab.bbn.com/experiment-support/HelloGENI/hellogeni.rspec" target="_blank"> http://www.gpolab.bbn.com/exp/HelloGENI/hellogeni.rspec</a>. </li>
    97             <li> You will need to choose an aggregate where you want this topology to be instantiated. Click on the <b> Site 0 </b> box and a panel on the left side of the canvas will appear.  Choose any aggregate with <i>InstaGENI</i> or <i>ExoGENI</i> in it's name. </li>
     97            <li> You will need to choose an aggregate where you want this topology to be instantiated. Click on the <b> Site 0 </b> box and a panel on the left side of the canvas will appear.  Choose any aggregate with <i>InstaGENI</i> in it's name. </li>
    9898            <li>  Click on the <b> Reserve Resources </b> button on them bottom left part of the screen. </li>
    9999            <li> Wait while your resources are being reserved. This will take several minutes so be patient. The nodes will turn green to signify that your resources are ready. </li>
     
    121121      <td>
    122122         <h3><u> Step 3: Firewall</u></h3>
    123          For this example experiment we used the install script facility to automatically install the necessary software and kick-off the experiment. In this very simple setup, we have installed and launched a
    124 <a href="[http://en.wikipedia.org/wiki/Web_server" target="_blank"> web server </a> as well as an <a href="http://en.wikipedia.org/wiki/Iperf" target="_blank"> iperf server</a>, on the server host. On the client, we have started some processes to test both of these services. To view the results of this experiment:
     123         For this experiment we will run an OpenFlow Firewall. 
    125124            <table border="0">
    126125              <tr>
    127126                <td >
    128127                 <ol type="a">
    129             <li> Follow <a href="http://groups.geni.net/geni/wiki/HowTo/LoginToNodes" target="_blank"> these instructions</a> and log in to the server node.  Get the control interface IP address by typing <b> ifconfig</b>. This IP address should be accessible from the internet. In a web browser, type the IP address found from <b>ifconfig</b>.</li>
    130             <li> Click the <b>Web Server Statistics</b> link to look at statistics. Refresh the page a couple of times to see how the statistics change as the client requests documents.</li>
    131             <li> Click the <b>Logs from the iperf Server</b> link to see the statistics from the iperf transfers.</li>
     128            <li>Log into <tt>switch</tt> and run the following commands to download and run the firewall controller:
     129<pre>wget https://www.dropbox.com/s/wc4szossxjeairn/gpo-ryu-firewall.tar.gz
     130gunzip gpo-ryu-firewall.tar.gz
     131tar xvf gpo-ryu-firewall.tar
     132/tmp/ryu/bin/ryu-manager simple_firewall.py loading app simple_firewall.py
     133</pre>
     134 </li>
     135            <li>Log into <tt>right</tt> and run a <tt>nc</tt> server:
     136<pre>
     137nc -l 5001
     138</pre>
     139</li>
     140            <li>Log into <tt>left</tt> and run a <tt>nc</tt> client:
     141<pre>
     142nc 10.10.11.1 5001
     143</pre></li>
     144            <li>Type some text in <tt>left</tt> and it should appear in <tt>right</tt> and vis versa.</li>
     145            <li>In the terminal for <tt>switch</tt> you should see messages about the flow being passed or not:
     146<pre>
     147Extracted rule {'sport': '57430', 'dport': '5001', 'sip': '10.10.10.1', 'dip': '10.10.11.1'}
     148Allow Connection rule {'dport': '5001', 'dip': '10.10.11.1', 'sip': '10.10.10.1', 'sport': 'any'}
     149</pre>
     150</li>
    132151           </ol>
    133152                </td>