|Beacon, maintained by David Erickson (the original developer) has moved to www.beaconcontroller.net due to licensing changes. A controller based on the Beacon codebase with some new contributions but keeping a BSD-style license will be launching here shortly under a new name. Watch http://www.openflowhub.org/wp/ for more details.|
Beacon is a Java-based OpenFlow controller. It was built on an OSGI framework, allowing OpenFlow applications built on the platform to be started/stopped/refreshed/installed at run-time, without disconnecting switches.
Beacon has the following features:
- Cross-platform - Runs anywhere Java runs (including embedded devices, eg switches!)
- Dynamic - Code and resource bundles can be started/stopped/refreshed/installed at runtime, including dependent bundles, without disconnecting switches
- Embedded J2EE Webserver - Jetty is optionally embedded enabling a fully capable enterprise webserver
- Unit testing - Support for JUnit unit testing
- Maven - Beacon can be built using Maven, and exported to Maven and P2 repositories
- Performance - Beacon has been tested and shown to service 250,000 L2 switch Packet-In requests per second in single threaded mode on a 2.4ghz Core 2 processor using 512MB of RAM. Widening the thread count to 3 increases performance to 340,000 Packet-Ins/s.