Over time, many software defined networking (SDN) protocols will likely emerge, but for now, the OpenFlow is the mostly commonly used SDN language. In an SDN with a centralized control plane, the OpenFlow protocol carries the message between SDN controllers and the underlying network infrastructure, bringing network applications to life. So far, vendors and enterprises have made swift advancements in OpenFlow product development and network design strategies. In this tutorial, learn about the basics of the OpenFlow protocol, as well as OpenFlow SDN controllers and applications already in testing and production.
Table of contents:
OpenFlow protocol basics: A look under the hood
OpenFlow is a software-defined networking protocol that can be used to centrally control switches and traffic flows in a network.
In a conventional network, switches handle both high-level routing (the control path) and packet forwarding (the data path). In some SDNs, the control plane is decoupled from the physical network and placed into a centralized controller. These controllers use OpenFlow to communicate with all components on the network.
Using this combination of technologies, engineers can manage the network as a whole rather than as a number of individual devices. This model also allows for more effective use of network resources. The controller and switches communicate via the OpenFlow protocol.
Read this tip on the basics of OpenFlow protocol operations to learn about how OpenFlow carries out communications between controllers and switches.
Using the OpenFlow protocol for network programmability
Why go with OpenFlow SDN? Many believe that OpenFlow SDN will enable the kind of network programmability necessary to better manage server virtualization environments.
Server virtualization has made the IT infrastructure much more dynamic. When a server administrator moves a virtual machine from one server to another, the network must be able to automatically adjust VLANs, Quality oService policy and access control lists. But traditional networks are static and don't support this fluidity. So when a virtual machine is ready to be moved on the network, changes must be made manually.
OpenFlow and software-defined networks change that. Together they can make the network more responsive and adaptable to the rest of the IT infrastructure. Most importantly, using a centralized controller and OpenFlow, engineers can coordinate the forwarding of data across all network devices, enabling automation and granularly managed dynamic provisioning for virtualized environments and cloud networks.
To learn more about OpenFlow's role, read this article on OpenFlow hype and SDN.
OpenFlow in action: Many vendors, many strategies
OpenFlow started as a Stanford University research project back in 2008, but vendors and large enterprises started productizing the technology and implementing SDN in 2011. Data center mega-user Google built its own SDN switches and was the first to build a global software-driven network. Meanwhile vendors like Cisco and Brocade have released OpenFlow-friendly products, in addition to technology that will depend on alternate SDN approaches.
In 2011 vendors shared their early use cases at OpenFlow Symposium. View video excerpts of vendors presenting their SDN OpenFlow strategies.
OpenFlow SDN controllers: Choices emerge
Both vendors and the open source community are developing OpenFlow controllers that will be used to centrally manage routers and switches in an SDN.
FlowVisor was created as a tool for researchers to quickly and flexibly experiment with new SDN ideas and tools in a large production environment. It slices up physical networks through an abstraction layer. The controller acts as a transparent proxy between a network of OpenFlow switches and other standard OpenFlow controllers, and manages bandwidth, CPU utilization and flow tables. While FlowVisor has been deployed in production environments around the country, it is not necessarily enterprise-ready. For example, it lacks a prompt command-line interface or Web-based administration, so users must manage configuration files to push changes out.
Floodlight also had its start in a research environment. The OpenFlow controller was built on work that began at Stanford University and UC Berkeley and now continues among a community of open source developers, along with engineers at Big Switch Networks Inc. Floodlight has been tested with both physical and virtual OpenFlow-compatible switches. It also supports networks where groups of OpenFlow-compatible switches are connected through conventional, non-OpenFlow switches.
OpenFlow SDN applications go well beyond the data center
Most discussions regarding OpenFlow SDN focus on data center or carrier networks, but OpenFlow offers benefits for campus networks, particularly when it comes to improving security and managing bring your own device (BYOD) policies. Indiana University has used OpenFlow to simplify how security and access policies are implemented across the network by using the standard to group together similar components or systems regardless of their physical location. Engineers can then control which users or devices access specific applications on specific network segments.
Learn more about how Indiana University implemented OpenFlow in the campus LAN and for security.
OpenFlow, SDN and network applications
Controllers are only one part of OpenFlow architecture. In fact, the SDN market will adopt a three-tiered architecture according to Kyle Forster, co-founder of Big Switch Networks. The first tier will consist of physical network equipment that are built to be OpenFlow-friendly, such as Ethernet switches and routers. The middle tier will consist of the controllers. The top tier will involve northbound applications that direct security, management and other specific functions through the controllers. Some vendors will play in a single tier while others will participate in multiple tiers.
Read about how traditional vendors and startups alike will play a key role in developing the application tier of an SDN.
OpenFlow applications will take on network monitoring and management
OpenFlow applications will play a key role in network monitoring and management, going well beyond current tools. With OpenFlow controllers, engineers will gain a centralized view of the entire network configuration along with control of every component, even in a dynamic virtual environment. Unlike traditional network monitoring and management tools, OpenFlow provides a powerful tool set for configuring the network in a positively controlled system with multiple feedback loops for accuracy and confirmation.
Read more about how OpenFlow apps work where network management tools fail.