Indigo is an open source OpenFlow implementation that runs on physical switches and uses the hardware features of switching chipsets to run OpenFlow at line rates. It is based on the OpenFlow Reference Implementation from Stanford and currently implements all features of the OpenFlow 1.0 standard.
Indigo runs on a number of physical switches using Broadcom including:
- Pronto 3240/Quanta LB4G - A 48x1Gb+4x10Gb based on the BRCM 56514 Chip
- Pronto 3290/Quanta LB9A - A 48x1Gb+4x10Gb based on the BRCM 56534 Chip
- Netgear GSM7328 - A 24x1Gb + 4x10Gb/s switch
- Netgear GSM7352 - A 48x1Gb + 4x10Gb/s switch
- Select Broadcom reference designs using XGS chipsets.
It has been successfully ported to other broadcom based platforms.
Using Indigo
To use Indigo, you will need one of the above switches and the Indigo firmware. Reflashing the switches to use Indigo may require special hardware, please check out the detailed information for each switch before attempting to use them for OpenFlow.
- For Pronto/Quanta Switches, read the LB4G/3240 Quickstart Guide or the LB9A/3290 Quickstart Guide
- Obtain the firmware image. To do this contact dtalayco@bigswitch.com.
- Read the documentation on Indigo Configuration
Support
- Indigo Support Forums - Hosted on OpenFlow Hub
- Indigo Bugs & Issues - OpenFlow Hub's JIRA
Compiling Indigo from the Source
The source code for Indigo is available under a BSD style license, however we can only make the hardware specific parts of the source code available to parties that are under NDA with Broadcom and have access to the Broadcom SDK. Please contact support@bigswitch.com or info@openflow.org if you want access to the full source.
Compiling the source code requires some experience with cross-compilation and an understanding of the Broadcom SDK. The Indigo Source Code itself is licensed under a BSD style license and there are few restrictions on use other than the NDA/SLA requirements from Broadcom.