Changes between Initial Version and Version 1 of Layer1Transport/Usage


Ignore:
Timestamp:
07/16/13 14:02:55 (11 years ago)
Author:
tupty@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Layer1Transport/Usage

    v1 v1  
     1[[PageOutline]]
     2
     3= Introduction =
     4This page describes how to use the layer1transport service.
     5
     6= Variables =
     7|| '''Name'''   || '''Description'''             || '''Default Values''' ||
     8|| <rest_port>  || REST API port for FL          || 18080                ||
     9|| <flow_name>  || Name of flow according to SFP ||                      ||
     10
     11= Using the Service =
     12The following is a brief description of how the service can be used.
     13
     14== Common Work flows ==
     15There are limitations to what this service can do at the moment, so below I will list some steps to take for various work flows.
     16
     17=== Adding a new flow ===
     18When adding a new connection in that needs a new flow defined in the switch:
     19 1. Define the flows and put them into a new file under `/home/openflow/floodlight/flows.d/`
     20 2. Run
     21  {{{
     22  service layer1transport reload
     23  }}}
     24
     25This should push the new flows without disrupting connectivity for other existing connections.
     26
     27=== Removing a flow ===
     28When removing a connection that relies on a specific flow:
     29 1. Determine which flows should be removed and collect the names of the flows
     30 2. For each flow that should be removed, run
     31  {{{
     32  /home/openflow/floodlight/apps/layer1transport delete -n <flow_name> -p <rest_port>
     33  }}}
     34
     35This should remove flows by name without disrupting connectivity for other existing connections.
     36
     37=== Updating an existing flow ===
     38If you need to update a flow that has already been defined and pushed:
     39 1. Update the flows file to use the new flow information
     40 2. Remove the old flow by running
     41  {{{
     42  /home/openflow/floodlight/apps/layer1transport delete -n <flow_name> -p <rest_port>
     43  }}}
     44 3. Run:
     45  {{{
     46  service layer1transport reload
     47  }}}
     48
     49=== Restoring Static Flow Pusher (SFP) to a known state ===
     50If you believe that SFP may be out of sync with the desired state, but your are unsure what the specific problem is, then the best option may be to restart the service with:
     51{{{
     52service layer1transport restart
     53}}}
     54
     55This will briefly remove and reinstall all static flows, so this is disruptive to connectivity managed by this service.
     56
     57=== Listing the flows that SFP knows about ===
     58To list which flows SFP knows about, the most up-to-date information can be found in [http://docs.projectfloodlight.org/display/floodlightcontroller/Static+Flow+Pusher+API+%28New%29 the SFP documentation].
     59
     60=== Listing the flows that a switch knows about ===
     61To list which flows that a given switch knows about, the most up-to-date information can be found in [http://docs.projectfloodlight.org/display/floodlightcontroller/Floodlight+REST+API the REST API documentation] under the command for querying for flow statistics.
     62
     63
     64== Defined Service Commands ==
     65=== start ===
     66The following command will cause the floodlight controller to start and it will push the flows that exist in the flows files.
     67{{{
     68service layer1transport start
     69}}}
     70
     71=== stop ===
     72The following command will cause the flows that are defined in the flows files to be explicitly removed, and it will cause the floodlight controller to stop.  Floodlight's SFP module will not preserve flows when floodlight is shut down, so any remaining flows (whether they are inserted through other means, or if they are stale for some reason) will be removed.
     73{{{
     74service layer1transport stop
     75}}}
     76
     77=== reload ===
     78The following command will cause the floodlight module to read in the flows files, and add any flows which have names that are unknown to the floodlight SFP service.  Note that this '''will not''' remove flows that are removed from files, it '''will not''' remove flows if a file has been removed, and it '''will not''' update flows with a name that SFP already knows about.
     79{{{
     80service layer1transport reload
     81}}}
     82
     83=== restart ===
     84The following command will stop, pause, and then start the layer1transport service.
     85{{{
     86service layer1trasport restart
     87}}}
     88
     89=== status ===
     90The following command will return a non-zero value if floodlight is not running, or if there are some flows defined in `/home/openflow/floodlight/flows.d/` which the floodlight controller's SFP module doesn't know about.  It will return zero otherwise.
     91{{{
     92service layer1transport status
     93}}}