In just the past few months, there have been a plethora of articles about OpenFlow and Software Defined Networks in the Networking Industry press.
Back in April, the Santa Clara Convention Center played host to the Open Network Summit (www.opennetsummit.org). This was only the second such event, the first being hosted at Stanford in the fall of 2011. The event was sponsored by numerous tech companies here in Silicon Valley as well as from around the world (including Juniper, Ericsson, and Intel), and had attendees from Juniper, HP, Huawei, Google, Cisco, Brocade, and dozens of other companies.
So what are OpenFlow and SDN, and why should we be taking a look at this area?
Network hardware manufacturers differentiate between the Control Plane and the Data Plane (or Forwarding Plane). At the most basic level, the Control Plane consists of (among other things) the Routing Protocols that create the ability of Network devices to exchange routing information and determine the paths that data can be sent to and from servers and client machines (basically, setting up control and signaling). The Data/Forwarding Plane consists of the actual routed packets themselves…that is, the actual data that is transferred (for example, email messages, VoIP packets, Videoconferencing, PDF and Word documents emailed over a network, and so on). The Data Plane depends on information it receives from the Control Plane in order to do its job (specifically, via Forwarding Tables that are created by the Control Plane and copied to the Data Plane). The Control Plane and the Data Plane reside on the same device. Of course, there’s much more to it (we haven’t talked about or specifically named Layer 2 switches or ARP tables, for instance, or NAT and PAT, or Load Balancing), but I’ll leave those out for the sake of simplicity.
One of the ideas behind OpenFlow/SDN is that the intelligence behind the control plane can be centralized (instead of running on and implemented on each and every router, for example, you could have it in one place, or more than one place for high availability), and the physical network devices could be greatly simplified (by not having to run a control plane themselves) and consist of relatively inexpensive and widely available hardware, thus reducing cost.
This technology is very much still in its infancy. There are many things that remain to be resolved and worked out, such as scalability issues, as well as interoperability issues between manufacturers (which is to be expected at such an early stage). Getting this to function beyond the data center and onto large scale networks, not to mention the Internet, require leaps of orders of magnitude. Yet the future potential is certainly there.