| 169 | |
| 170 | The {{{fedd_spewlog.py}}} command prints changes to the log as they appear and terminates when the experiment transitions to either active or failed state. |
| 171 | |
| 172 | === Interacting with the Experiment === |
| 173 | |
| 174 | Once an experiment is active, it completes stitching itself together and a user can log in to the various nodes using the native testbed mechanisms. That stitching may take a minute or two after the federation system declares the experiment active. Additionally it may take the dynamic routing some time to converge, depending on the complexity of the topology. |
| 175 | |
| 176 | Inside the DETER experiment, one can log into the nodes and interact with them by node name as usual. Details are [ https://trac.deterlab.net/wiki/Tutorial/UsingNodes here]. With node b on ExoGENI and a on DETER, as shown above, this sequence shows the transparent connection. A user logs into node a in the local experiment (experiment faber-smart5 in in project detertest) and pings node b from node a. |
| 177 | |
| 178 | {{{ |
| 179 | users.isi.deterlab.net:~$ ssh a.faber-test.detertest |
| 180 | a:~$ ping b |
| 181 | PING b-link0 (10.0.3.2) 56(84) bytes of data. |
| 182 | 64 bytes from b-link0 (10.0.3.2): icmp_req=1 ttl=64 time=152 ms |
| 183 | 64 bytes from b-link0 (10.0.3.2): icmp_req=2 ttl=64 time=76.3 ms |
| 184 | }}} |
| 185 | |
| 186 | While for all intents and purposes, b (in ExoGENI) is part of the experiment, the long ping times make it easy to identify: |
| 187 | |
| 188 | {{{ |
| 189 | a:~$ ping e |
| 190 | PING e-link3 (10.0.1.1) 56(84) bytes of data. |
| 191 | 64 bytes from e-link3 (10.0.1.1): icmp_req=1 ttl=63 time=0.797 ms |
| 192 | 64 bytes from e-link3 (10.0.1.1): icmp_req=2 ttl=63 time=0.437 ms |
| 193 | }}} |
| 194 | |
| 195 | Similarly, one can log into the ExoGENI node and see the DETER nodes by the same names: |
| 196 | |
| 197 | {{{ |
| 198 | root@server-18393:~# ping a |
| 199 | PING a-link2 (10.0.0.2) 56(84) bytes of data. |
| 200 | 64 bytes from a-link2 (10.0.0.2): icmp_req=1 ttl=64 time=76.7 ms |
| 201 | 64 bytes from a-link2 (10.0.0.2): icmp_req=2 ttl=64 time=76.5 ms |
| 202 | }}} |
| 203 | |
| 204 | It may be surprising, but the ExoGENI node can route to nodes throughout our multi-hop DETER topology: |
| 205 | |
| 206 | {{{ |
| 207 | root@server-18393:~# ping c |
| 208 | PING c-link3 (10.0.1.2) 56(84) bytes of data. |
| 209 | 64 bytes from c-link3 (10.0.1.2): icmp_req=1 ttl=63 time=153 ms |
| 210 | 64 bytes from c-link3 (10.0.1.2): icmp_req=2 ttl=63 time=76.7 ms |
| 211 | }}} |
| 212 | |
| 213 | The federated experiment in DETER runs [http://en.wikipedia.org/wiki/Ospf ospf] on each node, and fedd.py starts an ospf daemon on the ExoGENI node as well. The ExoGENI node simply discovers the routing table from that connection. We will show how to expolit this connection to interconnect more interesting topologoes. |
| 214 | |
| 215 | === Tearing The Experiment Down === |
| 216 | |
| 217 | To tear down the experiment, use the command: |
| 218 | |
| 219 | {{{ |
| 220 | users:~$ fedd_terminate.py --experiment_name $EXPNAME |
| 221 | }}} |
| 222 | |
| 223 | This releases the DETER resources and disconnects the ExoGENI node. The ExoGENI slice remains intact and can be connected to another DETER experiment. |
| 224 | |
| 225 | If an experimenter tears down the ExoGENI slice before the {{{fedd_terminate.py}}} command is issued, or there is some other problem, the {{{--force}}} flag can be given to make {{{fedd_terminate.py}}} purge all state that the federation system can reach. |
| 226 | |