News‎ > ‎

Further advancements in the new RouteFlow design

posted Aug 13, 2012, 1:20 AM by Christian Esteve Rothenberg
[Post by Allan Vidal]

Building upon the refactored version of RouteFlow we released 2 months ago, we have a new version with several improvements.

* What's new *
The most important change in this new version is the new configuration system. It's now possible to associate datapath ports to VM ports in a predefined way, making RouteFlow much more reliable and easier to configure. This was a long-standing issue that affected lots of users, and we hope this will make RouteFlow easier for everyone. The updated project README contains information about the configuration scheme.

Other changes include:
- RouteFlow now works in a more granular level, associating individual datapath and VM ports, not entire VMs and datapaths as it used to be
- RFServer was entirely rewritten in Python, making it much easier to understand, extend and modify
- RFProxy now has a standard implementation across NOX and POX, making it easier to port to other controllers
- Logging messages are clearer and standardized
- Several minor architectural and code clean-ups

* What's next *
- Improve documentation
- Address High Availability
- On-the-fly configuration changes
- New routing abstractions implemented as services on top of the RF-Server
- Exploration of possibilities opened by the use of a central database (e.g., keep state history and allow queries like "show me flow table at timestamp x")
- RouteFlow with NOX requires Ubuntu 11.04 (POX users should be fine in newer versions). We will be adding support for Ubuntu 11.10 and 12.04
- Embrace OpenFlow v1.X. We have working prototypes of NOX and software-based reference switch using OpenFlow 1.1 and 1.2
- Extensions to support LDP label information
... a number of additions under investigation by students and project collaborators (see the TODO section in the README file)

* Other news *
We now have a main page for the code at GitHub:

This is intended to be more or less like a business card; the main website is still updated with news and resources as usual.

We also plan to improve the project documentation through GitHub's wiki, including:
- explanations about rftest1 and rftest2 scripts
- a guide on how to port RFPRoxy to other controllers
- an explanation of the new RouteFlow association algorithm