Changes between Version 31 and Version 32 of GENIExperimenter/ExperimentExample-OF


Ignore:
Timestamp:
09/19/12 15:26:47 (7 years ago)
Author:
lnevers@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GENIExperimenter/ExperimentExample-OF

    v31 v32  
    55This page illustrates an !OpenFlow (OF) example for the [wiki:HowToUseOmni Omni How-to] page. OpenFlow is used for the control of the network resources in the GENI backbone and at Meso-scale campus locations.  Experimenters can use GENI resources without learning !OpenFlow. Experimenters can choose to control the network switching fabric in their slices by running an !OpenFlow controller. Many experimenters use existing !OpenFlow controller code as-is, some use controllers with relatively simple modifications, and some experimenters have written their own controller.  The GPO is available to help design your controller and plan your experiment configuration.  Feel free to contact us at [mailto:help@geni.net].
    66
    7 The experiment in this page uses Omni from the gcf 1.6.1 package to reserve resources.  If you are using gcf 2.0 or higher, note that you '''must''' specify the AM API version option ''' ''-V 1'' ''' for all Omni commands that are executed at !OpenFlow and MyPLC aggregates, these aggregates support AM API V1. The example in this page uses credentials from the GPO ProtoGENI Clearinghouse (pgeni.gpolab.bbn.com) to set up a 3 Meso-scale sites !OpenFlow experiment. The sites are  BBN, Wisconsin and Clemson each with a MyPLC compute resource. If you are interested in using PG resources, see the [http://groups.geni.net/geni/wiki/HelloGENI HelloGENI] experiment page for an !OpenFlow experiment using PG nodes.
     7The experiment in this page uses Omni to reserve resources.  If you are using gcf 2.0 or higher, you '''must''' specify the AM API version option ''' ''-V 1'' ''' for all Omni commands that are executed at !OpenFlow and MyPLC aggregates, these aggregates support AM API V1. If you are using gcf 1.X you do not need to specify ''' ''-V 1'' ''', as the AM API version 1.0 is the default for gcf 1.x packages. The example in this page uses credentials from the GPO ProtoGENI Clearinghouse (pgeni.gpolab.bbn.com) to set up a 3 Meso-scale sites !OpenFlow experiment. The sites are  BBN, Wisconsin and Clemson each with a MyPLC compute resource. If you are interested in using PG resources, see the [http://groups.geni.net/geni/wiki/HelloGENI HelloGENI] experiment page for an !OpenFlow experiment using PG nodes.
    88
    99[[Image(OF-FOAM-experiment.jpg)]]
     
    6262
    6363{{{
    64  $ ./src/omni.py -a plc-bbn listresources -t ProtoGENI 2 -o             # generates rspec-myplc-gpolab-bbn-com-12346-.xml
    65  $ ./src/omni.py -a plc-clemson listresources -t ProtoGENI 2 -o               # generates rspec-myplc-clemson-edu-12346-.xml
    66  $ ./src/omni.py -a plc-wisconsin listresources -t ProtoGENI 2 -o  # generates rspec-wings-openflow-1-wail-wisc-edu-12346-.xml
     64 $ ./src/omni.py -a plc-bbn -V 1 listresources -t ProtoGENI 2 -o             # generates rspec-myplc-gpolab-bbn-com-12346-.xml
     65 $ ./src/omni.py -a plc-clemson -V 1 listresources -t ProtoGENI 2 -o               # generates rspec-myplc-clemson-edu-12346-.xml
     66 $ ./src/omni.py -a plc-wisconsin listresources -V 1 -t ProtoGENI 2 -o  # generates rspec-wings-openflow-1-wail-wisc-edu-12346-.xml
    6767}}}
    6868
     
    224224 1. Clemson FOAM aggregate:
    225225{{{
    226  $ ./src/omni.py -a of-clemson listresources -o    # generates output file rspec-foam-clemson-edu-3626-foam-gapi-1.xml
     226 $ ./src/omni.py -a of-clemson -V 1 listresources -o    # generates output file rspec-foam-clemson-edu-3626-foam-gapi-1.xml
    227227}}}
    228228 2. Wisconsin FOAM aggregate:
    229229{{{
    230  $ ./src/omni.py -a of-wisconsin listresources -o  # generates rspec-foam-wail-wisc-edu-3626-foam-gapi-1.xml
     230 $ ./src/omni.py -a of-wisconsin -V 1 listresources -o  # generates rspec-foam-wail-wisc-edu-3626-foam-gapi-1.xml
    231231}}}
    232232 3. BBN FOAM aggregate:
    233233{{{
    234  $ ./src/omni.py -a of-bbn listresources -o # generates rspec-foam-gpolab-bbn-com-3626-foam-gapi-1.xml
     234 $ ./src/omni.py -a of-bbn -V 1 listresources -o # generates rspec-foam-gpolab-bbn-com-3626-foam-gapi-1.xml
    235235}}}
    236236 4. NLR !OpenFlow Core FOAM aggregate:
    237237{{{
    238  $ ./src/omni.py -a of-nlr listresources -o        # generates rspec-foam-nlr-net-3626-foam-gapi-1.xml
     238 $ ./src/omni.py -a of-nlr -V 1 listresources -o        # generates rspec-foam-nlr-net-3626-foam-gapi-1.xml
    239239}}}
    240240
     
    698698 $ cd gcf-1.6.1
    699699 $ ./src/omni.py createslice 3sites-OF
    700  $ ./src/omni.py -a of-bbn createsliver 3sites-OF openflow-bbn.rspec
    701  $ ./src/omni.py -a of-clemson createsliver 3sites-OF openflow-clemson.rspec   
    702  $ ./src/omni.py -a of-wisconsin createsliver 3sites-OF openflow-wisconsin.rspec
    703  $ ./src/omni.py -a of-nlr createsliver 3sites-OF openflow-nlr.rspec
    704  $ ./src/omni.py -a plc-bbn createsliver 3sites-OF myplc-bbn.rspec
    705  $ ./src/omni.py -a plc-clemson createsliver  3sites-OF  myplc-clemson.rspec
    706  $ ./src/omni.py -a plc-wisconsin createsliver 3sites-OF myplc-wisconsin.rspec
     700 $ ./src/omni.py -a of-bbn -V 1 createsliver 3sites-OF openflow-bbn.rspec
     701 $ ./src/omni.py -a of-clemson -V 1 createsliver 3sites-OF openflow-clemson.rspec   
     702 $ ./src/omni.py -a of-wisconsin -V 1 createsliver 3sites-OF openflow-wisconsin.rspec
     703 $ ./src/omni.py -a of-nlr -V 1 createsliver 3sites-OF openflow-nlr.rspec
     704 $ ./src/omni.py -a plc-bbn -V 1 createsliver 3sites-OF myplc-bbn.rspec
     705 $ ./src/omni.py -a plc-clemson -V 1 createsliver  3sites-OF  myplc-clemson.rspec
     706 $ ./src/omni.py -a plc-wisconsin -V 1 createsliver 3sites-OF myplc-wisconsin.rspec
    707707                   
    708708}}}
     
    712712Remember, to renew the slice and slivers reservation time, as the default time is 8 hours. You may find out the current expiration time by using Omni sliverstatus commands. Following are the commands to determine the current sliverstatus along with the expiration times at each aggregate:
    713713{{{
    714  $ ./src/omni.py -a of-bbn sliverstatus 3sites-OF
    715  $ ./src/omni.py -a of-clemson sliverstatus 3sites-OF
    716  $ ./src/omni.py -a of-wisconsin sliverstatus 3sites-OF
    717  $ ./src/omni.py -a of-nlr sliverstatus 3sites-OF
    718  $ ./src/omni.py -a plc-clemson sliverstatus 3sites-OF
    719  $ ./src/omni.py -a plc-wisconsin  sliverstatus 3sites-OF
    720  $ ./src/omni.py -a plc-bbn sliverstatus 3sites-OF
     714 $ ./src/omni.py -a of-bbn -V 1 sliverstatus 3sites-OF
     715 $ ./src/omni.py -a of-clemson -V 1 sliverstatus 3sites-OF
     716 $ ./src/omni.py -a of-wisconsin -V 1 sliverstatus 3sites-OF
     717 $ ./src/omni.py -a of-nlr -V 1 sliverstatus 3sites-OF
     718 $ ./src/omni.py -a plc-clemson -V 1 sliverstatus 3sites-OF
     719 $ ./src/omni.py -a plc-wisconsin  -V 1 sliverstatus 3sites-OF
     720 $ ./src/omni.py -a plc-bbn -V 1 sliverstatus 3sites-OF
    721721}}}
    722722The output for running each of the above commands is attached [http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/ExperimentExample-OF/openflow-foam-sliverstatus.txt here].
     
    725725You can now renew the slice and slivers. Following are the commands to extend the reservation for the resources:
    726726{{{
    727  $ ./src/omni.py renewslice  3sites-OF 2012-04-30
    728  $ ./src/omni.py -a of-bbn renewsliver 3sites-OF 2012-04-30
    729  $ ./src/omni.py -a of-clemson renewsliver 3sites-OF 2012-04-30
    730  $ ./src/omni.py -a of-wisconsin renewsliver 3sites-OF 2012-04-30
    731  $ ./src/omni.py -a of-nlr renewsliver 3sites-OF 2012-04-30
    732  $ ./src/omni.py -a of-clemson renewsliver 3sites-OF 2012-04-30
    733  $ ./src/omni.py -a of-wisconsin renewsliver 3sites-OF 2012-04-30
    734  $ ./src/omni.py -a of-bbn renewsliver 3sites-OF 2012-04-30
     727 $ ./src/omni.py renewslice 3sites-OF 2012-04-30
     728 $ ./src/omni.py -a of-bbn -V 1 renewsliver 3sites-OF 2012-04-30
     729 $ ./src/omni.py -a of-clemson -V 1 renewsliver 3sites-OF 2012-04-30
     730 $ ./src/omni.py -a of-wisconsin -V 1 renewsliver 3sites-OF 2012-04-30
     731 $ ./src/omni.py -a of-nlr -V 1 renewsliver 3sites-OF 2012-04-30
     732 $ ./src/omni.py -a of-clemson -V 1 renewsliver 3sites-OF 2012-04-30
     733 $ ./src/omni.py -a of-wisconsin -V 1 renewsliver 3sites-OF 2012-04-30
     734 $ ./src/omni.py -a of-bbn renewsliver -V 1 3sites-OF 2012-04-30
    735735}}}
    736736
     
    754754To figure out how to login to the MyPLC hosts that you reserved use the Omni ''sliverstatus'' commands. Following are examples for the experiment captured in this page:
    755755{{{
    756  $ ./src/omni.py -a plc-clemson sliverstatus 3sites-OF
    757  $ ./src/omni.py -a plc-bbn sliverstatus 3sites-OF
    758  $ ./src/omni.py -a plc-wisconsin sliverstatus 3sites-OF
     756 $ ./src/omni.py -a plc-clemson -V 1 sliverstatus 3sites-OF
     757 $ ./src/omni.py -a plc-bbn -V 1 sliverstatus 3sites-OF
     758 $ ./src/omni.py -a plc-wisconsin -V 1 sliverstatus 3sites-OF
    759759}}}
    760760
     
    815815When the experiment is completed, you should release the resources by deleting the sliver for each of the resource aggregates in the Experiment. In the example experiment in this page, the following commands should be issued to release resources:
    816816{{{
    817 ./src/omni.py -a of-bbn deletesliver 3sites-OF
    818 ./src/omni.py -a of-clemson deletesliver 3sites-OF
    819 ./src/omni.py -a of-wisconsin deletesliver 3sites-OF
    820 ./src/omni.py -a of-nlr deletesliver 3sites-OF
    821 ./src/omni.py -a plc-clemson deletesliver  3sites-OF
    822 ./src/omni.py -a plc-wisconsin deletesliver 3sites-OF
    823 ./src/omni.py -a plc-bbn deletesliver 3sites-OF
     817./src/omni.py -a of-bbn -V 1 deletesliver 3sites-OF
     818./src/omni.py -a of-clemson -V 1 deletesliver 3sites-OF
     819./src/omni.py -a of-wisconsin -V 1 deletesliver 3sites-OF
     820./src/omni.py -a of-nlr -V 1 deletesliver 3sites-OF
     821./src/omni.py -a plc-clemson -V 1 deletesliver  3sites-OF
     822./src/omni.py -a plc-wisconsin -V 1 deletesliver 3sites-OF
     823./src/omni.py -a plc-bbn -V 1 deletesliver 3sites-OF
    824824
    825825}}}