| 259 | |
| 260 | * At the end of the script once all the nodes are at the same point and all applications have been initialized, an event is triggered to continue and execute the remaining steps. The 10 second delay before the call to ''startApplications'', this allows time for the clients to establish a wifi connection with the access point before continuing. Iperf is started on all the nodes, execution of experiment script is delayed again giving time to collect experiment data. Finally all applications are stopped and the experiment exits out. |
| 261 | {{{ |
| 262 | onEvent(:ALL_UP_AND_INSTALLED) do |event| |
| 263 | info "Wifi Multi Client Iperf Experiment" |
| 264 | wait 10 |
| 265 | allGroups.startApplications |
| 266 | info "All my Applications are started now..." |
| 267 | wait property.duration |
| 268 | allGroups.stopApplications |
| 269 | info "All my Applications are stopped now." |
| 270 | Experiment.done |
| 271 | end |
| 272 | }}} |
| 273 | |
| 274 | === Executing the Experiment Script === |
| 275 | An overview on running experiment scripts on the orbit testbed can be found on the [wiki:Documentation/CGettingStarted Getting Started Page]. |
| 276 | In order to run this experiment script, load ''baseline.ndz'' image on nodes with wifi cards. Check the ''Status Page' on the [https://www.orbit-lab.org/cPanel/controlPanel/start Control Panel] to select any particular type of wifi card. |
| 277 | {{{ |
| 278 | nilanjan@console.grid:~/EXP$ omf load -i baseline-wpa.ndz -t node15-1,node16-1,node17-1,node19-1,node20-1 |
| 279 | }}} |
| 280 | |
| 281 | After the nodes have finished imaging, turn the nodes on. The topology used here is ''system:topo:imaged'' which selected the prior set of node that were successfully imaged. |
| 282 | {{{ |
| 283 | nilanjan@console.grid:~/EXP$ omf tell -a on -t system:topo:imaged |
| 284 | }}} |
| 285 | |
| 286 | To run this experiment with 2 clients nodes: |
| 287 | {{{ |
| 288 | nilanjan@console.grid:~/EXP$ omf exec test:exp:tutorial:wifi-ap-iperf.rb -- --accesspoint node15-1 --client node16-1,node17-1 --duration 60 |
| 289 | }}} |
| 290 | |
| 291 | The output of this script should be similar to the following: |
| 292 | {{{ |
| 293 | INFO NodeHandler: OMF Experiment Controller 5.4 (git 3fb37b9) |
| 294 | INFO NodeHandler: Reading configuration file /etc/omf-expctl-5.4/services.yaml |
| 295 | INFO NodeHandler: Add domain http - http://internal1.orbit-lab.org:5054/ |
| 296 | INFO NodeHandler: Add domain http - http://repository1.orbit-lab.org:5054/ |
| 297 | INFO NodeHandler: Slice ID: default_slice (default) |
| 298 | INFO NodeHandler: Experiment ID: default_slice-2014-10-09t10.15.22.101-04.00 |
| 299 | INFO NodeHandler: Message authentication is disabled |
| 300 | INFO Experiment: load system:exp:stdlib |
| 301 | INFO property.resetDelay: resetDelay = 230 (Fixnum) |
| 302 | INFO property.resetTries: resetTries = 1 (Fixnum) |
| 303 | INFO Experiment: load system:exp:eventlib |
| 304 | INFO Experiment: load system:exp:winlib |
| 305 | INFO Experiment: load wifi-ap-iperf.rb |
| 306 | INFO property.accesspoint: accesspoint = "node15-1" (String) |
| 307 | INFO property.client: client = "node16-1,node17-1" (String) |
| 308 | INFO property.duration: duration = 60 (Fixnum) |
| 309 | INFO ALL_UP_AND_INSTALLED: Event triggered. Starting the associated tasks. |
| 310 | INFO exp: Wifi Multi Client Iperf Experiment |
| 311 | INFO exp: Request from Experiment Script: Wait for 10s.... |
| 312 | INFO node17-1.grid.orbit-lab.org: Device 'net/w0' reported Not-Associated |
| 313 | INFO node16-1.grid.orbit-lab.org: Device 'net/w0' reported 00:60:B3:AC:2B:D5 |
| 314 | INFO exp: All my Applications are started now... |
| 315 | INFO exp: Request from Experiment Script: Wait for 60s.... |
| 316 | INFO node17-1.grid.orbit-lab.org: Device 'net/w0' reported 00:60:B3:AC:2B:D5 |
| 317 | INFO exp: All my Applications are stopped now. |
| 318 | INFO EXPERIMENT_DONE: Event triggered. Starting the associated tasks. |
| 319 | INFO NodeHandler: |
| 320 | INFO NodeHandler: Shutting down experiment, please wait... |
| 321 | INFO NodeHandler: |
| 322 | INFO run: Experiment default_slice-2014-10-09t10.15.22.101-04.00 finished after 1:20 |
| 323 | }}} |
| 324 | |
| 325 | The output of the iperf applications are aggregated in a file named with the ''Experiment ID'' shown in the script output above. Partial contents of this file is shown below: |
| 326 | {{{ |
| 327 | 2014-10-09 10:15:38 INFO nodeHandler::exp: All my Applications are started now... |
| 328 | 2014-10-09 10:15:38 INFO nodeHandler::exp: Request from Experiment Script: Wait for 60s.... |
| 329 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STARTED from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '' |
| 330 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STARTED from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '' |
| 331 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STARTED from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '' |
| 332 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------' |
| 333 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------' |
| 334 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: 'Server listening on TCP port 5001' |
| 335 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: 'TCP window size: 85.3 KiByte (default)' |
| 336 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: 'Client connecting to 192.168.0.254, TCP port 5001' |
| 337 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: 'TCP window size: 21.0 KiByte (default)' |
| 338 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------' |
| 339 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '[ 7] local 192.168.0.254 port 5001 connected with 192.168.0.2 port 45466' |
| 340 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------' |
| 341 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '[ 6] local 192.168.0.2 port 45466 connected with 192.168.0.254 port 5001' |
| 342 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------' |
| 343 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '[ 8] local 192.168.0.254 port 5001 connected with 192.168.0.3 port 47013' |
| 344 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: 'Client connecting to 192.168.0.254, TCP port 5001' |
| 345 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: 'TCP window size: 21.0 KiByte (default)' |
| 346 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------' |
| 347 | 2014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '[ 6] local 192.168.0.3 port 47013 connected with 192.168.0.254 port 5001' |
| 348 | 2014-10-09 10:15:40 DEBUG nodeHandler::AgentCommands: DEV_EVENT CELL_ID from: 'net/w0' (node17-1.grid.orbit-lab.org) - msg: '00:60:B3:AC:2B:D5' |
| 349 | 2014-10-09 10:15:40 INFO nodeHandler::node::node17-1.grid.orbit-lab.org: Device 'net/w0' reported 00:60:B3:AC:2B:D5 |
| 350 | 2014-10-09 10:15:44 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '[ ID] Interval Transfer Bandwidth' |
| 351 | 2014-10-09 10:15:44 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '[ 6] 0.0- 5.0 sec 2.88 MiBytes 4.82 Mbits/sec' |
| 352 | 2014-10-09 10:15:44 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '[ ID] Interval Transfer Bandwidth' |
| 353 | 2014-10-09 10:15:44 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '[ 6] 0.0- 5.0 sec 4.62 MiBytes 7.76 Mbits/sec' |
| 354 | 2014-10-09 10:15:49 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '[ 6] 5.0-10.0 sec 2.00 MiBytes 3.36 Mbits/sec' |
| 355 | 2014-10-09 10:15:49 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '[ 6] 5.0-10.0 sec 4.38 MiBytes 7.34 Mbits/sec' |
| 356 | 2014-10-09 10:15:54 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '[ 6] 10.0-15.0 sec 2.62 MiBytes 4.40 Mbits/sec' |
| 357 | 2014-10-09 10:15:54 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '[ 6] 10.0-15.0 sec 2.75 MiBytes 4.61 Mbits/sec' |
| 358 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '[ 6] 15.0-20.0 sec 3.00 MiBytes 5.03 Mbits/sec' |
| 359 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '[ 6] 0.0-20.1 sec 10.6 MiBytes 4.43 Mbits/sec' |
| 360 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT DONE.OK from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: 'status: 0' |
| 361 | 2014-10-09 10:15:59 DEBUG nodeHandler::NodeApp: Application 'iperf#2' on 'node16-1.grid.orbit-lab.org' finished successfully (end of application) |
| 362 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '[ ID] Interval Transfer Bandwidth' |
| 363 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '[ 7] 0.0-20.3 sec 10.6 MiBytes 4.40 Mbits/sec' |
| 364 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '[ 6] 15.0-20.0 sec 3.75 MiBytes 6.29 Mbits/sec' |
| 365 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '[ 6] 0.0-20.1 sec 15.6 MiBytes 6.51 Mbits/sec' |
| 366 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '[ 8] 0.0-20.2 sec 15.6 MiBytes 6.49 Mbits/sec' |
| 367 | 2014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT DONE.OK from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: 'status: 0' |
| 368 | 2014-10-09 10:15:59 DEBUG nodeHandler::NodeApp: Application 'iperf#2' on 'node17-1.grid.orbit-lab.org' finished successfully (end of application) |
| 369 | 2014-10-09 10:16:38 DEBUG nodeHandler::nodeSetPath: Stop all applications |
| 370 | }}} |