Changes between Version 4 and Version 5 of Tutorials/c0WiFi/Tutorial3


Ignore:
Timestamp:
Oct 9, 2014, 3:16:59 PM (10 years ago)
Author:
nilanjan
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Tutorials/c0WiFi/Tutorial3

    v4 v5  
    1313     2  # Tutorial experiment
    1414     3  #
    15      4  defProperty('accesspoint', 'node15-1', "node ID for access point")
    16      5  defProperty('client', 'node16-1,node17-1', "node ID for client nodes")
     15     4  defProperty('accesspoint', 'node1-1', "node ID for access point")
     16     5  defProperty('client', 'node1-2', "node ID for client nodes")
    1717     6  defProperty('duration', 60, "Seconds to run the application.")
    1818     7
     
    257257 2. ''node.addApplication'' connects the previously defined ''iperf'' application to the node(s). ''iperf'' is configured as a client connection to the specified ip address.
    258258 3. The wireless card properties are set using with the ''node.net.w0'' parameters. Note that we set ''node.net.w0.mode'' to ''managed'' to configure the wireless card as client. Other relevant parameters are also set here as well. Since we can have multiple nodes we specify ''node.net.w0.ip'' with the last byte of the IP address as %index%. In this way each node will have a unique address.
     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{{{
     262onEvent(: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
     271end
     272}}}
     273
     274=== Executing the Experiment Script ===
     275An overview on running experiment scripts on the orbit testbed can be found on the [wiki:Documentation/CGettingStarted Getting Started Page].
     276In 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{{{
     278nilanjan@console.grid:~/EXP$ omf load -i baseline-wpa.ndz -t node15-1,node16-1,node17-1,node19-1,node20-1
     279}}}
     280
     281After 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{{{
     283nilanjan@console.grid:~/EXP$ omf tell -a on -t system:topo:imaged
     284}}}
     285
     286To run this experiment with 2 clients nodes:
     287{{{
     288nilanjan@console.grid:~/EXP$ omf exec test:exp:tutorial:wifi-ap-iperf.rb -- --accesspoint node15-1 --client node16-1,node17-1 --duration 60
     289}}}
     290
     291The 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
     325The 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{{{
     3272014-10-09 10:15:38 INFO nodeHandler::exp: All my Applications are started now...
     3282014-10-09 10:15:38 INFO nodeHandler::exp: Request from Experiment Script: Wait for 60s....
     3292014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STARTED from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: ''
     3302014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STARTED from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: ''
     3312014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STARTED from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: ''
     3322014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------'
     3332014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------'
     3342014-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'
     3352014-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)'
     3362014-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'
     3372014-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)'
     3382014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#1' (node15-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------'
     3392014-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'
     3402014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------'
     3412014-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'
     3422014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------'
     3432014-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'
     3442014-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'
     3452014-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)'
     3462014-10-09 10:15:39 DEBUG nodeHandler::AgentCommands: APP_EVENT STDOUT from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: '------------------------------------------------------------'
     3472014-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'
     3482014-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'
     3492014-10-09 10:15:40 INFO nodeHandler::node::node17-1.grid.orbit-lab.org: Device 'net/w0' reported 00:60:B3:AC:2B:D5
     3502014-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'
     3512014-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'
     3522014-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'
     3532014-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'
     3542014-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'
     3552014-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'
     3562014-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'
     3572014-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'
     3582014-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'
     3592014-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'
     3602014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT DONE.OK from: 'iperf#2' (node16-1.grid.orbit-lab.org) - msg: 'status: 0'
     3612014-10-09 10:15:59 DEBUG nodeHandler::NodeApp: Application 'iperf#2' on 'node16-1.grid.orbit-lab.org' finished successfully (end of application)
     3622014-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'
     3632014-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'
     3642014-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'
     3652014-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'
     3662014-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'
     3672014-10-09 10:15:59 DEBUG nodeHandler::AgentCommands: APP_EVENT DONE.OK from: 'iperf#2' (node17-1.grid.orbit-lab.org) - msg: 'status: 0'
     3682014-10-09 10:15:59 DEBUG nodeHandler::NodeApp: Application 'iperf#2' on 'node17-1.grid.orbit-lab.org' finished successfully (end of application)
     3692014-10-09 10:16:38 DEBUG nodeHandler::nodeSetPath: Stop all applications
     370}}}