| 1 | = [wiki:GENIEducation/SampleAssignments/CCNAssignment/ExerciseLayout CCN ASSIGNMENT] = |
| 2 | {{{ |
| 3 | #!html |
| 4 | <table border="0"> |
| 5 | |
| 6 | <tr> |
| 7 | <td> |
| 8 | <a href="http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/CCNAssignment/ExerciseLayout/DesignSetup"> <img border="0" src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/Graphics/design_on.2.png?format=raw" alt="Hello GENI index" height="90" title="Hello GENI Web server" /> </a> |
| 9 | </td> |
| 10 | <td> |
| 11 | <a href="http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/CCNAssignment/ExerciseLayout/Execute"> <img border="0" src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/Graphics/execute.2.png?format=raw" alt="Hello GENI index" height="90" title="Hello GENI Web server" /> </a> |
| 12 | </td> |
| 13 | <td> |
| 14 | <a href="http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/CCNAssignment/ExerciseLayout/Finish"> <img border="0" src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/Graphics/finish.2.png?format=raw" alt="Hello GENI index" height="90" title="Hello GENI Web server" /> </a> |
| 15 | </td> |
| 16 | </tr> |
| 17 | </table> |
| 18 | }}} |
| 19 | |
| 20 | = STEPS FOR SETTING UP = |
| 21 | ''' Using Omni to get physical PCs from ProtoGENI:''' [[BR]] |
| 22 | '''0. Get account: (Ignore this if you already have one) [[BR]]''' |
| 23 | Go to [https://www.pgeni.gpolab.bbn.com/reqaccount.php3 Request_GENI_Account] for an emulab account and to join a GENI project.[[BR]] |
| 24 | Apparently you need to join a GENI project (which is created by PIs/GPOs/others who have permission to do so) in order to use GENI resources. |
| 25 | |
| 26 | '''1. Prepare Omni''' [[BR]] |
| 27 | Here is a very good tutorial on setting up Omni environment: [http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/HelloOmni HelloOmni] [[BR]] |
| 28 | Simply follow the tutorial to set up Omni. |
| 29 | |
| 30 | = Create an Experimental Topology for CCNx network for sharing precipitation data = |
| 31 | '''1. Use Omni to create the topology: [[BR]]''' |
| 32 | Download the RSPEC from http://www.gpolab.bbn.com/experiment-support/CCNExampleExperiment/precip.rspec [[BR]] |
| 33 | Next, we need to create this experiment using the RSPEC file: [[BR]] |
| 34 | '''Step 1. Create slice (use a unique name for your slice):''' |
| 35 | {{{ |
| 36 | omni.py createslice <slice name> |
| 37 | }}} |
| 38 | Output should be something like the following (here I am using 'CCN' as the sample slice name): |
| 39 | {{{ |
| 40 | INFO:omni:Loading config file /Users/shuang/.gcf/omni_config |
| 41 | INFO:omni:Using control framework portal |
| 42 | INFO:omni:Created slice with Name CCN, URN urn:publicid:IDN+panther:ShufengProject+slice+CCN, Expiration 2013-05-29 22:04:13 |
| 43 | INFO:omni: ------------------------------------------------------------ |
| 44 | INFO:omni: Completed createslice: |
| 45 | |
| 46 | Options as run: |
| 47 | framework: portal |
| 48 | project: ShufengProject |
| 49 | |
| 50 | Args: createslice CCN |
| 51 | |
| 52 | Result Summary: Created slice with Name CCN, URN urn:publicid:IDN+panther:ShufengProject+slice+CCN, Expiration 2013-05-29 22:04:13 |
| 53 | |
| 54 | INFO:omni: ============================================================ |
| 55 | }}} |
| 56 | '''Step 2. Renew Slice (to make sure that your reservation does not expire before you finished your experiment, renew the slice to a specific time):''' |
| 57 | {{{ |
| 58 | omni.py renewslice CCN 20130604 |
| 59 | }}} |
| 60 | Output: |
| 61 | {{{ |
| 62 | INFO:omni:Loading config file /Users/shuang/.gcf/omni_config |
| 63 | INFO:omni:Using control framework portal |
| 64 | INFO:omni.pgch:Requesting new slice expiration '2013-06-04T00:00:00' |
| 65 | INFO:omni:Slice CCN now expires at 2013-06-04 00:00:00 UTC |
| 66 | INFO:omni:Slice urn:publicid:IDN+panther:ShufengProject+slice+CCN expires on 2013-06-04 00:00:00 UTC |
| 67 | INFO:omni: ------------------------------------------------------------ |
| 68 | INFO:omni: Completed renewslice: |
| 69 | |
| 70 | Options as run: |
| 71 | framework: portal |
| 72 | project: ShufengProject |
| 73 | |
| 74 | Args: renewslice CCN 20130604 |
| 75 | |
| 76 | Result Summary: Slice CCN now expires at 2013-06-04 00:00:00 UTC |
| 77 | Slice urn:publicid:IDN+panther:ShufengProject+slice+CCN expires on 2013-06-04 00:00:00 UTC |
| 78 | INFO:omni: ============================================================ |
| 79 | }}} |
| 80 | '''Step 3. Create Sliver using precip.rspec:''' |
| 81 | {{{ |
| 82 | omni.py createsliver -a pg-utah CCN precip.rspec |
| 83 | }}} |
| 84 | Output: |
| 85 | {{{ |
| 86 | INFO:omni:Loading config file /Users/shuang/.gcf/omni_config |
| 87 | INFO:omni:Using control framework portal |
| 88 | INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN |
| 89 | INFO:omni:Slice urn:publicid:IDN+panther:ShufengProject+slice+CCN expires on 2013-06-04 00:00:00 UTC |
| 90 | INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN |
| 91 | INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN |
| 92 | INFO:omni:Creating sliver(s) from rspec file precip.rspec for slice urn:publicid:IDN+panther:ShufengProject+slice+CCN |
| 93 | INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=0fac52bbb5785bf9e358661ffb053ae9) |
| 94 | INFO:omni:Got return from CreateSliver for slice CCN at https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0: |
| 95 | INFO:omni:<!-- Reserved resources for: |
| 96 | Slice: CCN |
| 97 | at AM: |
| 98 | URN: unspecified_AM_URN |
| 99 | URL: https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0 |
| 100 | --> |
| 101 | INFO:omni:<rspec xmlns="http://www.protogeni.net/resources/rspec/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.protogeni.net/resources/rspec/2 http://www.protogeni.net/resources/rspec/2/manifest.xsd " type="manifest"> |
| 102 | <node client_id="collaborator1" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc203" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+130992"> |
| 103 | <sliver_type name="raw-pc"> |
| 104 | <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops:FEDORA15-STD"/> |
| 105 | </sliver_type> |
| 106 | <services> |
| 107 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-0.6.1-F15.tar.gz" install_path="/"/> |
| 108 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-atmos-F15.tar.gz" install_path="/"/> |
| 109 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-setup.tar.gz" install_path="/tmp"/> |
| 110 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./add-precip-routes researcher1"/> |
| 111 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./ccnx-setup router 8"/> |
| 112 | <login authentication="ssh-keys" hostname="pc203.emulab.net" port="22" username="shufeng"/></services> |
| 113 | <interface client_id="collaborator1:researcher1" component_id="urn:publicid:IDN+emulab.net+interface+pc203:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131007" mac_address="000423b723a0"> |
| 114 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.1.1"/> |
| 115 | </interface> |
| 116 | <interface client_id="collaborator1:collaborator3" component_id="urn:publicid:IDN+emulab.net+interface+pc203:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+131016" mac_address="000423b723a1"> |
| 117 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.3.1"/> |
| 118 | </interface> |
| 119 | <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc203"/><host name="collaborator1.CCN.panther.emulab.net"/></node> |
| 120 | <node client_id="collaborator3" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc310" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+130995"> |
| 121 | <sliver_type name="raw-pc"> |
| 122 | <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops:FEDORA15-STD"/> |
| 123 | </sliver_type> |
| 124 | <services> |
| 125 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-0.6.1-F15.tar.gz" install_path="/"/> |
| 126 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-atmos-F15.tar.gz" install_path="/"/> |
| 127 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-setup.tar.gz" install_path="/tmp"/> |
| 128 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./add-precip-routes collaborator1 researcher2"/> |
| 129 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./ccnx-setup router 8"/> |
| 130 | <login authentication="ssh-keys" hostname="pc310.emulab.net" port="22" username="shufeng"/></services> |
| 131 | <interface client_id="collaborator3:researcher2" component_id="urn:publicid:IDN+emulab.net+interface+pc310:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131019" mac_address="000423b726c2"> |
| 132 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.4.1"/> |
| 133 | </interface> |
| 134 | <interface client_id="collaborator3:collaborator1" component_id="urn:publicid:IDN+emulab.net+interface+pc310:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+131017" mac_address="000423b71e12"> |
| 135 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.3.2"/> |
| 136 | </interface> |
| 137 | <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc310"/><host name="collaborator3.CCN.panther.emulab.net"/></node> |
| 138 | <node client_id="collaborator2" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc201" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+130993"> |
| 139 | <sliver_type name="raw-pc"> |
| 140 | <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops:FEDORA15-STD"/> |
| 141 | </sliver_type> |
| 142 | <services> |
| 143 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-0.6.1-F15.tar.gz" install_path="/"/> |
| 144 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-atmos-F15.tar.gz" install_path="/"/> |
| 145 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-setup.tar.gz" install_path="/tmp"/> |
| 146 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./add-precip-routes researcher1"/> |
| 147 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./ccnx-setup router 8"/> |
| 148 | <login authentication="ssh-keys" hostname="pc201.emulab.net" port="22" username="shufeng"/></services> |
| 149 | <interface client_id="collaborator2:researcher1" component_id="urn:publicid:IDN+emulab.net+interface+pc201:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131004" mac_address="000423b7176c"> |
| 150 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.2.1"/> |
| 151 | </interface> |
| 152 | <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc201"/><host name="collaborator2.CCN.panther.emulab.net"/></node> |
| 153 | <node client_id="datasource2" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc289" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+130997"> |
| 154 | <sliver_type name="raw-pc"> |
| 155 | <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops:FEDORA15-STD"/> |
| 156 | </sliver_type> |
| 157 | <services> |
| 158 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-0.6.1-F15.tar.gz" install_path="/"/> |
| 159 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-atmos-F15.tar.gz" install_path="/"/> |
| 160 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-setup.tar.gz" install_path="/tmp"/> |
| 161 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/atmos-data2.tar" install_path="/tmp"/> |
| 162 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./add-precip-routes "/> |
| 163 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./ccnx-setup router 8"/> |
| 164 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./atmos-server pr_19020201_060000.nc"/> |
| 165 | <login authentication="ssh-keys" hostname="pc289.emulab.net" port="22" username="shufeng"/></services> |
| 166 | <interface client_id="datasource2:router" component_id="urn:publicid:IDN+emulab.net+interface+pc289:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131010" mac_address="000423b6cd68"> |
| 167 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.8.1"/> |
| 168 | </interface> |
| 169 | <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc289"/><host name="datasource2.CCN.panther.emulab.net"/></node> |
| 170 | <node client_id="datasource1" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc308" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+130998"> |
| 171 | <sliver_type name="raw-pc"> |
| 172 | <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops:FEDORA15-STD"/> |
| 173 | </sliver_type> |
| 174 | <services> |
| 175 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-0.6.1-F15.tar.gz" install_path="/"/> |
| 176 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-atmos-F15.tar.gz" install_path="/"/> |
| 177 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-setup.tar.gz" install_path="/tmp"/> |
| 178 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/atmos-data1.tar" install_path="/tmp"/> |
| 179 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./add-precip-routes "/> |
| 180 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./ccnx-setup router 8"/> |
| 181 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./atmos-server pr_19020101_060000.nc"/> |
| 182 | <login authentication="ssh-keys" hostname="pc308.emulab.net" port="22" username="shufeng"/></services> |
| 183 | <interface client_id="datasource1:router" component_id="urn:publicid:IDN+emulab.net+interface+pc308:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+131013" mac_address="000423b718ea"> |
| 184 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.7.1"/> |
| 185 | </interface> |
| 186 | <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc308"/><host name="datasource1.CCN.panther.emulab.net"/></node> |
| 187 | <node client_id="router" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc354" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+130996"> |
| 188 | <sliver_type name="raw-pc"> |
| 189 | <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops:FEDORA15-STD"/> |
| 190 | </sliver_type> |
| 191 | <services> |
| 192 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-0.6.1-F15.tar.gz" install_path="/"/> |
| 193 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-atmos-F15.tar.gz" install_path="/"/> |
| 194 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-setup.tar.gz" install_path="/tmp"/> |
| 195 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./add-precip-routes datasource1 datasource2"/> |
| 196 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./ccnx-setup router 8"/> |
| 197 | <login authentication="ssh-keys" hostname="pc354.emulab.net" port="22" username="shufeng"/></services> |
| 198 | <interface client_id="router:researcher1" component_id="urn:publicid:IDN+emulab.net+interface+pc354:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131002" mac_address="000423b72116"> |
| 199 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.5.2"/> |
| 200 | </interface> |
| 201 | <interface client_id="router:datasource2" component_id="urn:publicid:IDN+emulab.net+interface+pc354:eth5" sliver_id="urn:publicid:IDN+emulab.net+sliver+131011" mac_address="000423b71e03"> |
| 202 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.8.2"/> |
| 203 | </interface> |
| 204 | <interface client_id="router:researcher2" component_id="urn:publicid:IDN+emulab.net+interface+pc354:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+131023" mac_address="000423b72117"> |
| 205 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.6.2"/> |
| 206 | </interface> |
| 207 | <interface client_id="router:datasource1" component_id="urn:publicid:IDN+emulab.net+interface+pc354:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+131014" mac_address="000423b71e02"> |
| 208 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.7.2"/> |
| 209 | </interface> |
| 210 | <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc354"/><host name="router.CCN.panther.emulab.net"/></node> |
| 211 | <node client_id="researcher1" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc325" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+130994"> |
| 212 | <sliver_type name="raw-pc"> |
| 213 | <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops:FEDORA15-STD"/> |
| 214 | </sliver_type> |
| 215 | <services> |
| 216 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-0.6.1-F15.tar.gz" install_path="/"/> |
| 217 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-atmos-F15.tar.gz" install_path="/"/> |
| 218 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-setup.tar.gz" install_path="/tmp"/> |
| 219 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./add-precip-routes router"/> |
| 220 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./ccnx-setup router 8"/> |
| 221 | <login authentication="ssh-keys" hostname="pc325.emulab.net" port="22" username="shufeng"/></services> |
| 222 | <interface client_id="researcher1:router" component_id="urn:publicid:IDN+emulab.net+interface+pc325:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+131001" mac_address="000423b717d5"> |
| 223 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.5.1"/> |
| 224 | </interface> |
| 225 | <interface client_id="researcher1:collaborator1" component_id="urn:publicid:IDN+emulab.net+interface+pc325:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+131008" mac_address="000423b7148e"> |
| 226 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.1.2"/> |
| 227 | </interface> |
| 228 | <interface client_id="researcher1:collaborator2" component_id="urn:publicid:IDN+emulab.net+interface+pc325:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131005" mac_address="000423b717d4"> |
| 229 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.2.2"/> |
| 230 | </interface> |
| 231 | <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc325"/><host name="researcher1.CCN.panther.emulab.net"/></node> |
| 232 | <node client_id="researcher2" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc293" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+130991"> |
| 233 | <sliver_type name="raw-pc"> |
| 234 | <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops:FEDORA15-STD"/> |
| 235 | </sliver_type> |
| 236 | <services> |
| 237 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-0.6.1-F15.tar.gz" install_path="/"/> |
| 238 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-atmos-F15.tar.gz" install_path="/"/> |
| 239 | <install url="http://www.cs.purdue.edu/homes/fahmy/geni/tarballs/ccnx-setup.tar.gz" install_path="/tmp"/> |
| 240 | <execute shell="sh" command="cd /tmp/ccnx-setup && ./ccnx-setup router 8"/> |
| 241 | <login authentication="ssh-keys" hostname="pc293.emulab.net" port="22" username="shufeng"/></services> |
| 242 | <interface client_id="researcher2:collaborator3" component_id="urn:publicid:IDN+emulab.net+interface+pc293:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131020" mac_address="000423b71a04"> |
| 243 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.4.2"/> |
| 244 | </interface> |
| 245 | <interface client_id="researcher2:router" component_id="urn:publicid:IDN+emulab.net+interface+pc293:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+131022" mac_address="000423b71a05"> |
| 246 | <ip netmask="255.255.255.0" type="ipv4" address="192.168.6.1"/> |
| 247 | </interface> |
| 248 | <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc293"/><host name="researcher2.CCN.panther.emulab.net"/></node> |
| 249 | <link client_id="researcher1-router" sliver_id="urn:publicid:IDN+emulab.net+sliver+131000" vlantag="407"> |
| 250 | <interface_ref client_id="researcher1:router" component_id="urn:publicid:IDN+emulab.net+interface+pc325:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+131001"/> |
| 251 | <interface_ref client_id="router:researcher1" component_id="urn:publicid:IDN+emulab.net+interface+pc354:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131002"/> |
| 252 | </link> |
| 253 | <link client_id="collaborator2-researcher1" sliver_id="urn:publicid:IDN+emulab.net+sliver+131003" vlantag="421"> |
| 254 | <interface_ref client_id="collaborator2:researcher1" component_id="urn:publicid:IDN+emulab.net+interface+pc201:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131004"/> |
| 255 | <interface_ref client_id="researcher1:collaborator2" component_id="urn:publicid:IDN+emulab.net+interface+pc325:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131005"/> |
| 256 | </link> |
| 257 | <link client_id="collaborator1-researcher1" sliver_id="urn:publicid:IDN+emulab.net+sliver+131006" vlantag="406"> |
| 258 | <interface_ref client_id="collaborator1:researcher1" component_id="urn:publicid:IDN+emulab.net+interface+pc203:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131007"/> |
| 259 | <interface_ref client_id="researcher1:collaborator1" component_id="urn:publicid:IDN+emulab.net+interface+pc325:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+131008"/> |
| 260 | </link> |
| 261 | <link client_id="router-datasource2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131009" vlantag="364"> |
| 262 | <interface_ref client_id="datasource2:router" component_id="urn:publicid:IDN+emulab.net+interface+pc289:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131010"/> |
| 263 | <interface_ref client_id="router:datasource2" component_id="urn:publicid:IDN+emulab.net+interface+pc354:eth5" sliver_id="urn:publicid:IDN+emulab.net+sliver+131011"/> |
| 264 | </link> |
| 265 | <link client_id="router-datasource1" sliver_id="urn:publicid:IDN+emulab.net+sliver+131012" vlantag="424"> |
| 266 | <interface_ref client_id="datasource1:router" component_id="urn:publicid:IDN+emulab.net+interface+pc308:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+131013"/> |
| 267 | <interface_ref client_id="router:datasource1" component_id="urn:publicid:IDN+emulab.net+interface+pc354:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+131014"/> |
| 268 | </link> |
| 269 | <link client_id="collaborator3-collaborator1" sliver_id="urn:publicid:IDN+emulab.net+sliver+131015" vlantag="418"> |
| 270 | <interface_ref client_id="collaborator1:collaborator3" component_id="urn:publicid:IDN+emulab.net+interface+pc203:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+131016"/> |
| 271 | <interface_ref client_id="collaborator3:collaborator1" component_id="urn:publicid:IDN+emulab.net+interface+pc310:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+131017"/> |
| 272 | </link> |
| 273 | <link client_id="collaborator3-researcher2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131018" vlantag="422"> |
| 274 | <interface_ref client_id="collaborator3:researcher2" component_id="urn:publicid:IDN+emulab.net+interface+pc310:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131019"/> |
| 275 | <interface_ref client_id="researcher2:collaborator3" component_id="urn:publicid:IDN+emulab.net+interface+pc293:eth2" sliver_id="urn:publicid:IDN+emulab.net+sliver+131020"/> |
| 276 | </link> |
| 277 | <link client_id="researcher2-router" sliver_id="urn:publicid:IDN+emulab.net+sliver+131021" vlantag="366"> |
| 278 | <interface_ref client_id="researcher2:router" component_id="urn:publicid:IDN+emulab.net+interface+pc293:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+131022"/> |
| 279 | <interface_ref client_id="router:researcher2" component_id="urn:publicid:IDN+emulab.net+interface+pc354:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+131023"/> |
| 280 | </link> |
| 281 | </rspec> |
| 282 | INFO:omni: ------------------------------------------------------------ |
| 283 | INFO:omni: Completed createsliver: |
| 284 | |
| 285 | Options as run: |
| 286 | aggregate: ['pg-utah'] |
| 287 | framework: portal |
| 288 | project: ShufengProject |
| 289 | |
| 290 | Args: createsliver CCN precip.rspec |
| 291 | |
| 292 | Result Summary: Got Reserved resources RSpec from www-emulab-net-protogeniv2 |
| 293 | INFO:omni: ============================================================ |
| 294 | }}} |
| 295 | The above output shows the reserved nodes: pc325, pc354, pc201, pc203, pc289, pc308, pc310, pc293 and how they are connected. |
| 296 | [[BR]] |
| 297 | Alternatively, you can use the following command to show the reserved nodes as well as ways to login: |
| 298 | {{{ |
| 299 | readyToLogin.py CCN -a pg-utah |
| 300 | }}} |
| 301 | When the nodes are not ready, the status will be `notready` or `changing`. In this case, you simply have to wait then try the above command again. [[BR]] |
| 302 | Otherwise, the result is something like the following: |
| 303 | {{{ |
| 304 | #======================================== |
| 305 | #SSH CONFIGURATION INFO for User shufeng |
| 306 | #======================================== |
| 307 | |
| 308 | Host datasource2 |
| 309 | Port 22 |
| 310 | HostName pc289.emulab.net |
| 311 | User shufeng |
| 312 | IdentityFile /Users/shuang/.ssh/geni_key |
| 313 | |
| 314 | Host researcher1 |
| 315 | Port 22 |
| 316 | HostName pc325.emulab.net |
| 317 | User shufeng |
| 318 | IdentityFile /Users/shuang/.ssh/geni_key |
| 319 | |
| 320 | Host collaborator1 |
| 321 | Port 22 |
| 322 | HostName pc203.emulab.net |
| 323 | User shufeng |
| 324 | IdentityFile /Users/shuang/.ssh/geni_key |
| 325 | |
| 326 | Host researcher2 |
| 327 | Port 22 |
| 328 | HostName pc293.emulab.net |
| 329 | User shufeng |
| 330 | IdentityFile /Users/shuang/.ssh/geni_key |
| 331 | |
| 332 | Host collaborator2 |
| 333 | Port 22 |
| 334 | HostName pc201.emulab.net |
| 335 | User shufeng |
| 336 | IdentityFile /Users/shuang/.ssh/geni_key |
| 337 | |
| 338 | Host datasource1 |
| 339 | Port 22 |
| 340 | HostName pc308.emulab.net |
| 341 | User shufeng |
| 342 | IdentityFile /Users/shuang/.ssh/geni_key |
| 343 | |
| 344 | Host collaborator3 |
| 345 | Port 22 |
| 346 | HostName pc310.emulab.net |
| 347 | User shufeng |
| 348 | IdentityFile /Users/shuang/.ssh/geni_key |
| 349 | |
| 350 | Host router |
| 351 | Port 22 |
| 352 | HostName pc354.emulab.net |
| 353 | User shufeng |
| 354 | IdentityFile /Users/shuang/.ssh/geni_key |
| 355 | |
| 356 | ================================================================================ |
| 357 | LOGIN INFO for AM: https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0 |
| 358 | ================================================================================ |
| 359 | |
| 360 | datasource2's geni_status is: ready (am_status:ready) |
| 361 | User shufeng logins to datasource2 using: |
| 362 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc289.emulab.net & |
| 363 | |
| 364 | researcher1's geni_status is: ready (am_status:ready) |
| 365 | User shufeng logins to researcher1 using: |
| 366 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc325.emulab.net & |
| 367 | |
| 368 | collaborator1's geni_status is: ready (am_status:ready) |
| 369 | User shufeng logins to collaborator1 using: |
| 370 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc203.emulab.net & |
| 371 | |
| 372 | researcher2's geni_status is: ready (am_status:ready) |
| 373 | User shufeng logins to researcher2 using: |
| 374 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc293.emulab.net & |
| 375 | |
| 376 | collaborator2's geni_status is: ready (am_status:ready) |
| 377 | User shufeng logins to collaborator2 using: |
| 378 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc201.emulab.net & |
| 379 | |
| 380 | datasource1's geni_status is: ready (am_status:ready) |
| 381 | User shufeng logins to datasource1 using: |
| 382 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc308.emulab.net & |
| 383 | |
| 384 | collaborator3's geni_status is: ready (am_status:ready) |
| 385 | User shufeng logins to collaborator3 using: |
| 386 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc310.emulab.net & |
| 387 | |
| 388 | router's geni_status is: ready (am_status:ready) |
| 389 | User shufeng logins to router using: |
| 390 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc354.emulab.net & |
| 391 | }}} |
| 392 | '''Step 4. Renew the sliver:''' |
| 393 | {{{ |
| 394 | omni.py renewsliver -a pg-utah CCN 20130602 |
| 395 | }}} |
| 396 | Output: |
| 397 | {{{ |
| 398 | INFO:omni:Loading config file /Users/shuang/.gcf/omni_config |
| 399 | INFO:omni:Using control framework portal |
| 400 | INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN |
| 401 | INFO:omni:Slice urn:publicid:IDN+panther:ShufengProject+slice+CCN expires on 2013-06-04 00:00:00 UTC |
| 402 | INFO:omni:Renewing Sliver CCN until 2013-06-02 00:00:00+00:00 (UTC) |
| 403 | INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN |
| 404 | INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=85ae878711f47058145b35f9be5c25ec) |
| 405 | INFO:omni:Renewed sliver urn:publicid:IDN+panther:ShufengProject+slice+CCN at unspecified_AM_URN (https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0) until 2013-06-02T00:00:00+00:00 (UTC) |
| 406 | INFO:omni: ------------------------------------------------------------ |
| 407 | INFO:omni: Completed renewsliver: |
| 408 | |
| 409 | Options as run: |
| 410 | aggregate: ['pg-utah'] |
| 411 | framework: portal |
| 412 | project: ShufengProject |
| 413 | |
| 414 | Args: renewsliver CCN 20130602 |
| 415 | |
| 416 | Result Summary: Slice urn:publicid:IDN+panther:ShufengProject+slice+CCN expires on 2013-06-04 00:00:00 UTC |
| 417 | Renewed sliver urn:publicid:IDN+panther:ShufengProject+slice+CCN at unspecified_AM_URN (https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0) until 2013-06-02T00:00:00+00:00 (UTC) |
| 418 | |
| 419 | INFO:omni: ============================================================ |
| 420 | }}} |
| 421 | Note: When dealing with specific slivers, we need to add "-a pg-utah" to specify which aggregate manager we want to use (i.e., from where we want to reserve the resources). In our case here, we are using utah aggregate.[[BR]] |
| 422 | For a list of available aggregates, please see the file ~/.gcf/omni_config, check out `ProtoGENI AMs` section. |
| 423 | |
| 424 | OK. After this point, we are ready to log on to the nodes and do the CCNx network for sharing precipitation data experiments! :-) [[BR]] |
| 425 | Please go to [wiki:GENIEducation/SampleAssignments/CCNAssignment/ExerciseLayout/Execute Next: Run Experiment] to checkout the instructions on running the experiment. |
| 426 | |
| 427 | |
| 428 | |
| 429 | |
| 430 | |
| 431 | |
| 432 | = Create an Experimental Topology for LoadBalancing with OpenFlow = |
| 433 | To create the Load Balancing Topology, simply follow the same steps as when you created the Fire Wall Topology. [[BR]] |
| 434 | '''1. Use Omni to create the topology: [[BR]]''' |
| 435 | Download the RSPEC from http://www.gpolab.bbn.com/experiment-support/OpenFlowExampleExperiment/lb.rspec [[BR]] |
| 436 | Next, we need to create this experiment using the RSPEC file: [[BR]] |
| 437 | '''Step 1. Create slice (use a unique name for your slice): Here I am using OpenFlowLB''' |
| 438 | {{{ |
| 439 | omni.py createslice OpenFlowLB |
| 440 | }}} |
| 441 | '''Step 2. Renew Slice (to make sure that your reservation does not expire before you finished your experiment, renew the slice to a specific time):''' |
| 442 | {{{ |
| 443 | omni.py renewslice OpenFlowLB 20130521 |
| 444 | }}} |
| 445 | '''Step 3. Create Sliver using lb.rspec:''' |
| 446 | {{{ |
| 447 | omni.py createsliver -a pg-utah OpenFlowLB lb.rspec |
| 448 | }}} |
| 449 | Again, you can use the following command to show the reserved nodes as well as ways to login: |
| 450 | {{{ |
| 451 | readyToLogin.py OpenFlowLB -a pg-utah |
| 452 | }}} |
| 453 | When the nodes are not ready, the status will be `notready` or `changing`. In this case, you simply have to wait then try the above command again. [[BR]] |
| 454 | Otherwise, the result is something like the following: |
| 455 | {{{ |
| 456 | #======================================== |
| 457 | #SSH CONFIGURATION INFO for User shufeng |
| 458 | #======================================== |
| 459 | |
| 460 | Host right |
| 461 | Port 22 |
| 462 | HostName pc135.emulab.net |
| 463 | User shufeng |
| 464 | IdentityFile /Users/shuang/.ssh/geni_key |
| 465 | |
| 466 | Host router |
| 467 | Port 22 |
| 468 | HostName pc140.emulab.net |
| 469 | User shufeng |
| 470 | IdentityFile /Users/shuang/.ssh/geni_key |
| 471 | |
| 472 | Host left |
| 473 | Port 22 |
| 474 | HostName pc138.emulab.net |
| 475 | User shufeng |
| 476 | IdentityFile /Users/shuang/.ssh/geni_key |
| 477 | |
| 478 | Host switch |
| 479 | Port 22 |
| 480 | HostName pc137.emulab.net |
| 481 | User shufeng |
| 482 | IdentityFile /Users/shuang/.ssh/geni_key |
| 483 | |
| 484 | ================================================================================ |
| 485 | LOGIN INFO for AM: https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0 |
| 486 | ================================================================================ |
| 487 | |
| 488 | right's geni_status is: ready (am_status:ready) |
| 489 | User shufeng logins to right using: |
| 490 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc135.emulab.net & |
| 491 | |
| 492 | router's geni_status is: ready (am_status:ready) |
| 493 | User shufeng logins to router using: |
| 494 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc140.emulab.net & |
| 495 | |
| 496 | left's geni_status is: ready (am_status:ready) |
| 497 | User shufeng logins to left using: |
| 498 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc138.emulab.net & |
| 499 | |
| 500 | switch's geni_status is: ready (am_status:ready) |
| 501 | User shufeng logins to switch using: |
| 502 | xterm -e ssh -i /Users/shuang/.ssh/geni_key shufeng@pc137.emulab.net & |
| 503 | }}} |
| 504 | '''Step 4. Renew the sliver:''' |
| 505 | {{{ |
| 506 | omni.py renewsliver -a pg-utah OpenFlowLB 20130521 |
| 507 | }}} |
| 508 | Note: When dealing with specific slivers, we need to add "-a pg-utah" to specify which aggregate manager we want to use (i.e., from where we want to reserve the resources). In our case here, we are using utah aggregate.[[BR]] |
| 509 | For a list of available aggregates, please see the file ~/.gcf/omni_config, check out `ProtoGENI AMs` section. |
| 510 | |
| 511 | OK. After this point, we are ready to log on to the nodes and do the OpenFlow Load Balancing experiments! :-) [[BR]] |
| 512 | Please go to [wiki:GENIEducation/SampleAssignments/OpenFlowAssignment/ExerciseLayout/Execute Next: Run Experiment] to checkout the instructions on running the load balancing experiment. |
| 513 | |
| 514 | |
| 515 | = [wiki:GENIEducation/SampleAssignments/OpenFlowAssignment/ExerciseLayout/Execute Next: Run Experiment] = |