Floodlight v1.2
Release Notes
Release Date: February 7, 2016
Overview
The v1.2 Floodlight release builds upon the improvements made in v1.1, with emphasis on more robust and feature-rich core modules, including completely rewritten Device, Topology, and Forwarding modules. A new Statistics module provides port bandwidth statistics and also serves a multithreading and statistics collection example. IPv6, Link latency, OF-DPA, message listener, and many more exciting features are discussed below. Many thanks to everyone who has contributed to and supported Floodlight!
Want help make Floodlight even better in the next release? Check out the cool features we'd like to implement here.
Things Added
Major Updates and Additions
- New and improved Forwarding, Routing, and Topology modules that support loops between OpenFlow islands
- New IPv6 support, including an IPv6 class, support in Forwarding, and integration into the Device Manager module
- New and improved Device Manager module fixing many bugs and adding new features, including IPv6
- New link latency tracking/updating between Floodlight and switches and between switches via LLDP
- New Statistics module for gathering of port bandwidth consumption
- New ICompletionListener for notification of the end of OF message processing pipeline
- New outgoing message listener for notification of messages written to switches
- New OpenFlow version negotiation using version bitmap and hello header versions
- New switch table features support and exposure to user modules
- New human readable JSON serializers for OXMs and other OpenFlow types
- New OF-DPA driver for easy interfacing with OF-DPA switches; example use in Forwarding
- New SPUD support for use within UDP packets
- New masked match support for Static Flow pusher
- New Travis continuous integration for pull request automated unit testing
- New Maven build support; ant also supported
- Refactored core package to move most interface implementations to core.internal
- Updated LoadBalancer module to work with a single host and multiple load balanced connections
- Forwarding can optionally set send-flow-removed flag
- ActionUtils and MatchUtils bug fixes
- ACL module bug fixes and improvements
- Static Flow Pusher bug fixes
- Web UI bug fixes
- REST API bug fixes and improvements
- Firewall module bug fixes
- LearningSwitch module bug fixes
- Concurrency patches in Link Discovery, Load Balancer and DHCP server modules
- Patched TCP checksum calculation for unaccounted for edge cases
- Updated to Netty 4
- Updated to Jackson 2.4.4
- Updated Restlet to 2.2.0
Minor Package Updates
- util
- core
- core.internal
- core.web
- core.web.serializers
- forwarding
- linkdiscovery
- topology
- devicemanger
- packet
New Documentation
- How to an experimenter extension to Loxigen
- How to collect switch statistics
- How to add a REST API to a module
- How to port a v0.91 or earlier module to v1.0 and up
- How to use OpenFlow queues
- How to use OpenFlow meters
- How to process a packet-in message
- How to create a packet-out message
- How to use OpenFlow groups
- New easy to navigate and updated REST API page
- Setting the OpenFlow version of Floodlight
- Switch flow table configuration
- I want to contribute to Floodlight! What can I do?
- Floodlight Javadoc
- OpenFlowJ-Loxi Javadoc
Distributions and Releases
- A v1.2 branch can be accessed from the main GitHub repository: http://github.com/floodlight/floodlight/tree/v1.2
- The master branch will contain any updates and patches leading up to the next minor/major release: http://github.com/floodlight/floodlight
- The "bleeding edge" branch is located in my fork's master branch: http://github.com/rizard/floodlight
Things Removed
N/A
Bug Fixes
Details of the fixes can be seen via 'git log --all'.
Known Issues
HA role configuration is still in the works.
See the issue tracking system for current issues:
https://github.com/floodlight/floodlight/issues
Want help make Floodlight even better in the next release? Check out the cool features we'd like to implement here.