Changes between Version 23 and Version 24 of Internal/OpenFlow/FloodlightFVModule


Ignore:
Timestamp:
Jul 8, 2012, 3:43:42 AM (12 years ago)
Author:
akoshibe
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Internal/OpenFlow/FloodlightFVModule

    v23 v24  
    263263For now, a sane goal is probably to have the proxy identify which slice a message belongs to based on the contents of the configuration file. 
    264264   
     265==== (7/7) ====
     266To tie back to the proxy module:
     267 * receive() gets all IO Events.
     268 * Added/!RemovedSwitch() gets all switch joinleave events.
     269The actions that must occur at reception of an IO event include, as per Flowvisor documentations:
     270 * identification of origin - switch or a slice?
     271 * if from a switch, which slice(s) it belongs to
     272 * if from a slice, which switch(es) they apply to
     273As of now, we assume that there is one module per slice (forwarding, switch, hub...).
     274
     275The flow of event handling for messages, compared to the components of Flowvisor, looks like the following in the modified version of Floodlight:
     276{{{
     277OFSwitchAcceptor             FVClassifier                                     FVSlicer
     278                   _______________/\_______________  ____________________________/\____________________________
     279                  /                                \/                                                          \
     280   FVAcceptor        FVController        Modules        OFSwitchImpl         FVController               Modules   
     281   receive()  ->   handleMesssage() ->  receive()  ->     write()    ->  handleOutgoingMessage()  ->   receive()
     282}}}
     283receive() in the modules may be called twice, but since message handling varies with OFType, this does not loop as one may think.
     284We can then use these functions to handle the functionalities of the Slicers and Classifiers in Flowvisor.
    265285
    266286== . ==#end