Changes between Version 29 and Version 30 of Internal/OpenFlow/FloodlightFVModule


Ignore:
Timestamp:
Jul 19, 2012, 5:30:00 AM (12 years ago)
Author:
akoshibe
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Internal/OpenFlow/FloodlightFVModule

    v29 v30  
    301301
    302302The grey dotted box containing receive() and write() represents a single module. We avoid making changes to the existing modules. The box containing the pink elements represents the part of the proxy module sitting between the main controller module and the rest; the other pink boxes show the proxy module's components that sit between the modules and the switches (involving modifications to OFSwitchImpl).   
     303
     304==== (7/19) ====
     3051. A major cleanup was done to the base proxy code. We essentially build analogous classes to the core components:
     306
     307||||'''core'''||'''proxy'''||
     308||'''module'''||!FloodlightProvider||FVProxyProvider||
     309||'''service'''||IFloodlightProviderService||IFloodlightProviderService||
     310||'''controller'''||Controller||FVProxyController||
     311
     312FVProxyController is a derived class of Controller - meaning it has all of the functions of the core controller class, plus any features to be added in. We simply replace the original core controller module with the proxy module. This approach has two (big) benefits:
     313 1. We no longer have two separate services (IFPS and IFPP) that the core classes would have to consider. This means the changes that were made in the original code base to shuffle between the proxy service and the !FloodlightProvider are not needed.
     314 1. We can swap between normal and proxy mode by merely changing the entries in the config file. 
     315
     316In addition to these changes, we have the following:
     317 * net.floodlightcontroller.flowvisor : !FlowMap and Flowspace-related code
     318 * net.floodlightcontroller.proxy : classes interfacing proxy and Flowvisor-related components
     319
     3202. Organization of branches.
     321To keep things organized, we work on two main branches.
     322
     323 * proxy-edge-0.82 : main branch where changes are made
     324 * proxy-stable-0.82 : once the changes in proxy-edge look ok, they go here (major save points). 
     325 
     326 
    303327== . ==#end