Changes between Version 10 and Version 11 of Internal/OpenFlow/Controllers/FloodLight
- Timestamp:
- Jun 2, 2012, 5:50:52 AM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Internal/OpenFlow/Controllers/FloodLight
v10 v11 108 108 The following steps describe the startup process of the Floodlight controller. The reference is the source code in Main.java. 109 109 [[BR]] 110 [[BR]] 110 111 1. The `FloodlightModuleLoader` reads in the list of modules, and loads them, returning an `IFloodlightModuleContext` instance. 111 112 112 113 The `FloodlightModuleLoader` basically coordinates calls to the functions provided by the `IFloodlightModule` interface for each module in the config file (floodlightdefault.properties) and the modules that they depend on. Some key points are: [[BR]] 113 114 * `IFloodlightModule` is the interface that lets you define Floodlight module behavior in a uniform way. 114 * The function ''loadModulesFromList'' finds all of the modules that it needs to load via a DFS beginning with the modules listed in the config file. The search is facilitated by `IFloodlightModule` functions .115 * The function ''loadModulesFromList'' finds all of the modules that it needs to load via a DFS beginning with the modules listed in the config file. The search is facilitated by `IFloodlightModule` functions such as ''getModuleDependencies''. 115 116 * The structure ''moduleSet'' will ultimately contain the minimum number of modules that need to be loaded at startup. 116 117 117 118 2. The `IFloodlightModuleContext` instance fetches copies of the `IRestApiService` and `IFloodlightProviderService` modules. 118 119 119 120 `IFloodlightModuleContext` provides a clean mechanism for retrieving references to the loaded modules/services, and their configuration parameters. `FloodlightModuleContext` implements this interface. [[BR]] 120 121 * `IRestApiService` provides REST API functions. 121 122 * `IFloodlightProviderService` provides the core controller functions and then some. … … 123 124 3. Run the REST API and core controller. 124 125 125 126 At this point, Floodlight is up and running. 126 127 127 128 === IFloodlightProviderService === 128 This interface lies at the core of Floodlight's functions . The class `Controller` implements this interface.129 This interface lies at the core of Floodlight's functions (literally in net.floodlightcontroller.core). The class `Controller` implements this interface. 129 130 130 131