Indigo 2012.03.19 Released!

The Indigo team is pleased to announce release 2012.03.19.

For those not familiar with Indigo, its an open source project that supports OpenFlow on a range of physical switches (including Pronto and Netgear).  Indigo firmware is actively used in many campus deployments (at Stanford and several other schools), in at least one OpenFlow startup, a 20-switch conference network deployment and a 32-switch data center deployment.

If you want to get your hands dirty with OpenFlow, Indigo on a platform like Pronto is a great way to do it.  And of course, its well tested with the Floodlight controller. Continue reading »

Understanding Openflow controller statistics

Network Monitoring has been an integral part of operating a network. It not only provides the visibility into how well the network performs, but also is an important tool when it comes to troubleshoot problems. Given the distributed nature of switching or routing devices in the network, a typical network monitoring tool usually queries a set of devices via some network management protocol, such as SNMP, and correlates results into reports or graphs. Even though SNMP is standardized, many vendors provide extension to the standard MIBs, which forced the management tools to be vendor aware and sometimes even version aware. For example, each router vendor has its own MIBS for MPLS and MPLS-based tunnels and VPNs.

Openflow provides a centralized controller architecture that can consolidate many network states at a logical central server, which is called Openflow controller. The controller is not only the brain for the network, but also a software platform for other network applications. Network monitoring applications will be able to leverage controller’s global view of the network and provide visibility into the connectivities, throughputs, and flows at the data-path. The same application can also be standalone if it chooses, but still have the power to query network states and statistics via controller’s north-bound interfaces. The standardization of controller’s north bound interface is currently under consideration.
The floodlight controller has a counterStore module that support counter-like statistics. The controller already collects a set of openflow statistics, which are available through its REST interface. Currently, the controller collects overall counts of OFPacketIn, OFPacketOut, and OFFlowmod and separate counts by switches and ports. The OFPacketIn counters are further classifies into separate broadcast, multicast, and unicast counters and different Layer 3 and L4 protocol counters to give the visibility of the types of flows in the network. It also keeps track of the number of active flows per switch. All counters are available via controller’s REST interface.
For example,
  • an OFPacketIn of a particular switch can be retrieved with “http://<controllerIp>:8080/wm/core/counter/<switchdpid>/OFPacketIn/json”.  The output is a json dictionary object:
               “<switchdpid>”: {
                    “Fri Mar 02 19:38:13 UTC 2012”: 128
  • an OFPacketIn for L3 IPv4 counts: “http://<controllerIp>:8080/wm/core/counter/<switchdpid>/OFPacketIn__L3_IPv4/json”.
          The output is a json dictionary object:
               “<switchdpid>”: {
                    “Fri Mar 02 19:38:13 UTC 2012”: 102
There are many more important statistics that can be collected and useful in troubleshooting or providing better visibility into the health of the network. Please let us know or simple upload an implementation for your favorite stats.
— Kanzhe Jiang

Mirage offers an OCaml-based OpenFlow implementation

The Mirage team are very pleased to announce a new experimental OpenFlow implementation in 100% OCaml. Designed as part of the Mirage platform, this release provides both controller and switch support as libraries.

Mirage is a cloud programming platform that lets you build your OCaml application as a POSIX binary, a node.js module or a self-contained, single-purpose Xen virtual machines. The controller implementation means your application can directly control the network, acting as a full OpenFlow controller. The switch provides a software OpenFlow switch implementation, an ideal basis for experimentation and extension. Both switch and controller are high-performance, comparable with Open vSwitch and NOX respectively. For more details, see and let us know what you make of it!


Richard Mortier

Mirage Operating System