Why Apache is important to Openflow

As everyone in the networking world knows, OpenFlow has developed a nearly unstoppable amount of momentum.  It began as an academic tool for segmenting networks and is currently thriving in academia and campus environments.  It’s finding its way into cloud providers, entering the datacenter, and emerging as the defacto communication protocol for Software-Defined Networking.  In fact, a number of switch vendors like Cisco, Juniper, and IBM have made announcements about supporting the protocol in their switches and routers.As open source advocates and developers, we’ve spent a lot of time thinking about how we can turn this momentum into ubiquitous OpenFlow adoption.  In looking at the controller landscape, it became obvious that OpenFlow needed a professional quality, truly open controller platform that could support both academic and commercial interests.  This is why we created the Floodlight OpenFlow Controller and chose the Apache license for it.Why is Apache so important for Floodlight and OpenFlow?  As OpenFlow makes the shift from academia to industry, it’s important to offer a truly free, open development platform that does not place any limitations on how OpenFlow is used or commercialized.  A liberal open source license will play a key role in fostering innovation in a startup ecosystem, attracting key industry players, and easing enterprise adoption.

Lets look at two of the most popular open source projects today, OpenStack and Hadoop.  OpenStack was created by Rackspace and NASA under and Apache license and has spawned an ecosystem of over 140 companies including  startups like Nebula, Piston, Cloudscaling, Stackops, and major players like Rackspace, HP, and Citrix.  Hadoop, created by Yahoo and also offered under an Apache license, has a huge ecosystem including Cloudera, HortonWorks, Mapr, Datameer, Platfora, Karmasphere, Hadapt and has been adopted by virtually every large scale internet company.  In the cases of both Hadoop and OpenStack, the existence of a high quality, flexibly licensed reference platform has spurred a tremendous amount of innovation.

Even beyond fostering a startup and vendor ecosystem, there is actually concrete data that enterprises prefer adopting Apache licensed projects.   A survey by OpenLogic released in May 2011 found that 69% of open source applications are licensed under the GPL but GPL projects represent only 9.5% of open source applications used in the enterprise.  Flexible licenses (Apache, MIT, BSD) on the other hand represent 36.6%.  Kim Weins, senior vice president of marketing for OpenLogic, went on record saying that “open source developers choosing more liberal licenses will lower the barriers to enterprise adoption.”

While OpenFlow has achieved some great successes so far, it has the potential to fundamentally transform the networking industry just as Hadoop is tranforming data analytics and OpenStack is transforming cloud infrastructure.   Realizing this potential will require openness in just about every dimension — open working groups, specifications, and high quality, flexibly licensed open source tools.  This is why we are so happy to make Floodlight available under the Apache license.

Free t-shirts for Floodlight developers!

We’ve gotten our first stock of Floodlight t-shirts in and I’d love to share them with folks developing applications on top of Floodlight (they are really nice microfiber!).  As I’m sure you know, Floodlight is our Apache-licensed OpenFlow controller platform.
There are just a few guidelines:
  • The “application” is up to you but it must be more interesting than a simple hello world-style app.  Some of the work done on Trema apps (https://github.com/trema/apps) is probably a good guide here.  Be creative and think about some interesting ways to use OpenFlow.  We will be liberal on this front but if you have a question or need ideas, just ask.  
  • The application must be open source.  We will include it in the Floodlight repository as a code example if its not hosted somewhere else already.
  • The application can either be in Java using Floodlight’s event handlers or written to use the static flow pusher REST API in any language you choose.
The submission process is simple — just email the Floodlight admin list (floodlight-admin@openflowhub.org) and let us know what you’ve built (or are in the process of building).   We’ll take a look and send you a free t-shirt!

Check out NodeFlow – a Node.js-based OpenFlow Controller

Last week, I officially announced the release of Floodlight, a Java-based OpenFlow controller, and as you might imagine, I’m always interested in new developments in the world of OpenFlow and Software-Defined Networking.  After all, projects that make SDN development easier and more accessible to a large pool of developers are essential to the emergence of an application ecosystem.

Source: http://nodejs.org/logos/

That’s why I wanted to mention NodeFlow, a Node.js-based OpenFlow controller.  Node is a fast, lightweight, and efficient server-side javascript platform based on Google’s V8 runtime and its gaining a lot of developer momentum.  While I haven’t spent a lot of time with NodeFlow (I’ve neither contributed to it nor talked with the author), it struck me as a great project and a great way to expand the community of SDN developers.

So, if you have a minute, check out NodeFlow!

 

 

Announcing Floodlight: An Apache-licensed OpenFlow Controller

We are incredibly excited to announce the release of Floodlight, a Java-based, Apache-licensed OpenFlow controller. Floodlight was created by the team at Big Switch Networks as a high quality open source controller that will form the foundation of a Software-Defined Networking (SDN) platform.What’s compelling about Floodlight?

  • Apache license – Floodlight is one of the few controllers available with truly flexible licensing terms.
  • Professional-quality toolchain – Floodlight inherits a growing list of build and debugging tools developed by the folks at Big Switch Networks.
  • Ease of use – Floodlight is written in Java, can run just about anywhere, and is accessible to even novice Java programmers.
  • Open community – Floodlight is developed by an open community of developers.  We welcome code contributions from active participants and we’ll openly share information on project status, roadmap, bugs, etc.
  • Testing and robustness – We are testing Floodlight against a number of physical and virtual OpenFlow switches in real network environments.
  • Help and Support – Many of us at Big Switch Networks are active on the Floodlight mailing list and happy to answer questions and offer advice.

Floodlight emerged from the Beacon controller, a project created by Stanford student and Big Switch Networks alumnus David Erickson, which recently changed licenses to a modified GPL license.  While we saw the Beacon core as an obvious leap forward in controller technology, we had a vision of creating a unified platform for OpenFlow development — one easy enough to be a learning tool, powerful enough for advanced research, and flexible enough to support commercial objectives. After all, part of the power of OpenFlow and SDN lies in creating an open, standardized platform on which developers can innovate quickly.

So, we set out to create Floodlight, pouring in much of what we learned from talking to top researchers and leading hardware and software vendors, and we are inviting everyone in the OpenFlow community to participate in its development.  With your help, we’ll help OpenFlow realize its potential.

Ready to go?  Download the code, read the documentation, and join the  mailing list.