OpenIRIS is an open source version of IRIS. IRIS is an Openflow-based SDN controller designed to solve scalability and availability issues of SDN.
Repository to download OpenIRIS package
- Supports Openflow 1.0.1 ~ 1.3.2
- Loxigen-based Openflow API
- Pure Java-based Implementation
- Supports about 500 concurrent connections to switches with Commodity HW
- Follows the same licensing policy as Floodlight (Apache-2.0 license)
- Provides with Learning mac, Link discovery, Topology management, Forwarding, Device manager, Firewall, Net Failover, Static Flow pusher, and State manager modules
- Includes three sample controller implementations, which are fully functional
- User's Guide: https://github.com/bjlee72/IRIS/wiki
- Javadoc API Reference: for 1.0.1, for 1.3.2.
- open IRIS forum: https://groups.google.com/forum/#!forum/openiris
- IRIS project blog: openirisproject.tumblr.com
- Please use GitHub's Releases section (https://github.com/bjlee72/IRIS/releases)
IRIS (pronounced ai-ri-s) is the Resursive SDN Openflow Controller created by IRIS Research Team of ETRI.
In Greek mythodology, Iris is the goddess of the rainbow as well as the messenger of the other gods. We named our controller after Iris in the hopes of creating a control plane architecture that can effectively deliver network policies to the underlying data plane.
Technically, IRIS is built on Beacon-like NIO-based event handler. On top of the IO engine, we have ported many of Floodlight core/application modules including Learning Switch, Link Discovery, Topology Manager, Device Manager, Forwarding, Firewall, and Static Flow Entry Pusher. Firewall module is improved, and Net Failover module is newly introduced.
Though a large portion of the IRIS functions take after those of Floodlight and Beacon, we did not want to stop at merely creating an improved version of the famous open-source controllers. Our vision was to create an SDN controller platform with the following features (* not all of these are to be included in the open-source IRIS):
- Horizontal Scalability for carrier-grade network
- High Availability with transparent failover from failure
- Multi-domain support with recursive network abstraction based on Openflow
We strived to satisfy above qualities with much simpler architecture that facilitates developers to comfortably use and customize. To do so, we have re-factored Floodlight a lot, successfully simplifying it to give better performance and maintain an easy-to-learn development model.