Changes between Initial Version and Version 1 of Internal/OpenFlow/FloodlightFVModule


Ignore:
Timestamp:
Jun 10, 2012, 6:20:25 AM (12 years ago)
Author:
akoshibe
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Internal/OpenFlow/FloodlightFVModule

    v1 v1  
     1= An attempt at Floodlight Development. =
     2This page documents the (attempted) process of developing a version of Floodlight with !FlowVisor-like slicing capabilities.
     3
     4This is an on-going process - therefore this page will be updated frequently.
     5
     6== Overview. ==
     7''Slicing'' is the SDN (in our case referring to !OpenFlow) term for network virtualization. Specifically, A slice is a SDN controller and the network resources allocated to it by a hypervisor-like entity such as !FlowVisor. With proper resource isolation and allocation, multiple controllers can coexist on a single physical network.     
     8
     9In the usual case, !FlowVisor behaves as a proxy, intercepting and modifying the !OpenFlow control messages between the switches and the multiple controllers so that each slice only sees a subset of the network.   
     10
     11Floodlight is a modularized !OpenFlow controller, in that its functional components can be split into two major parts:
     12 1. The core event dispatcher, and
     13 2. The various event handlers.
     14The event handlers (Floodlight modules) are what define the behavior of swicthes (hub, learning switch, router, etc.). A more in-depth discussion of these components can be found [http://www.orbit-lab.org/wiki/Internal/OpenFlow/Controllers/FloodLight#arch here].
     15
     16The key point here is that Floodlight's modular structure allows for multiple different handlers to coexist, with various (groups of) modules imposing different capabilities on the switches. If these modules controlled different groups of switches e.g. had their own bit of resource, each <module:resource> set can be viewed as a slice. Floodlight does not currently have this capability, so the objective of the process described here is to try to realize this feature.
     17
     18== Approach. == 
     19Development is done on two VMs, one hosting Flowvisor and Floodlight source, and the other, Mininet for testing our code.