[[PageOutline]] == The Idea == == Experiment Design == '''Step 1''': Choose the application that you want to run on the WiMAX nodes (or create a new one) A number of already-OMLized applications are [http://mytestbed.net/projects/omlapp/wiki already available]. In this case, we will run two applications that we've written ourselves: a ''sensor'' application that collects measurements from temperature, humidity, and light sensors attached to the node, and a ''wmxstat'' application that collects measurements about the state of the WiMAX link. Both of these applications are Ruby scripts. '''Step 2''': If you've written your own application, instrument it with OML so that you can collect measurements from it during experiment runtime These applications were instrumented with the [https://rubygems.org/gems/oml4r oml4r] Ruby client library. OML client libraries are also available for [http://pypi.python.org/pypi/oml4py/ Python] and [http://mytestbed.net/projects/oml/wiki/Client_Programming C or C++]. == Experiment Deployment == '''Step 3''': Create a disk image with your applications installed Log onto a testbed and load a baseline disk image onto a node: {{{ omf load -i baseline-witest.ndz -t omf.witest.node1 }}} Log onto the node (''ssh root@node1'') and install your applications and any required files. Then save your disk image: {{{ omf save -n omf.witest.node1 }}} This can take a while, so we've already created a disk image for use in this tutorial. It's called '''gec15sensor.ndz''' You can load this disk image onto any number of nodes, e.g.: {{{ omf load -i gec15sensor.ndz -t omf.witest.node1,omf.witest.node2,omf.witest.node3,omf.witest.node4,omf.witest.node5,omf.witest.node6,omf.witest.node7 }}} '''Step 4''': If you've written and instrumented your own applications, you will have to write an application definition for each experiment. Before running the experiment, download the application definitions to the console where you'll run the experiment. * Sensor definition * Wmxstat definition '''Step 5''': Write an OMF script Decide exactly how you want to configure the network interfaces on your nodes and what options you want to run the applications with. Then write an OMF script to orchestrate all of this on your nodes. Since we are working at two sites, we have two OMF scripts: * NYU-Poly script * UCLA scripts Review these scripts with your instructor. == Experiment Execution == == Experiment Analysis ==