OFconnect: An OpenFlow Software Defined Networking Library For Everyone
Software Defined Network (SDN) architecture has two basic elements in its simplest design - (one) controller and (many) switches. The controller is centralized and has a complete view of the network of switches. It processes control plane decisions/policies and installs forwarding rules in each switch. The switches process traffic by applying these forwarding rules. Any unknown traffic is either sent to the controller for creation of new rules or is dropped - and this too can be programmed by the controller.
The switches are connected to the controller in a “hub and spoke” topology. They talk to the controller over IP, using various transport protocols such as UDP, TCP, and TLS. OpenFlow is an SDN messaging protocol that is standardized by Open Networking Foundation for these devices to communicate.
What if all of this communication was handled by a shared library? This would allow the designers of controllers and switches to focus on the data - the topology, the packets, the flows - and the programmability of it all.
OFconnect is an open source library created by CodeChix.org that handles network connectivity of controllers and switches. The current support includes IPv4 with TCP transport and has been integrated successfully with a controller (mul).
In this talk, I will show the basic design and architecture of the library and how you can build a controller or switch around it. Additionally, I will share how you can contribute to the library by adding a transport protocol, greater OpenFlow protocol awareness, and IPv6 support.
Deepa is a Sr. Software Engineer at Ericsson with over 10 years of experience in network technologies spanning L2/L3, VRRP, VoIP and infra. She is the technical lead and project coordinator for CodeChix OFconnect, an open source library that manages OpenFlow Channels.
In addition to her passion in networking technologies, Deepa enjoys creating embedded projects, now fashionably termed IoT. You can follow her projects at http://deepadhurka.blogspot.com.
Deepa is an active member of CodeChix and has a deep commitment to supporting women in programming and technology. She has a Masters in Electrical Engineering from the University of Southern California.
Learn more about Deepa at www.linkedin.com/in/deepakarnad, and github.com/deepadhurka.