IDG Answers is a community of experts who are passionate about technology. Ask a question or answer one below.
Hi Paul, long time no speak. OpenFlow is really just an API that allows software-based control of flows in a network. Today's Data Center Fabrics (the physical fabric - i.e. hardware switches/routers) are largely closed, proprietary systems with an embedded control plane, so today's fabrics at least cannot be controlled using OpenFlow. So in some cases a software-based network (using virtual switches at the hypervisor) is being built on top of the physical fabric, and in many cases OpenFlow is being used between the control layer and the virtual switch layer. This so-called "Software Defined Network" offers better integration of the network control into the application layer, offering potential future benefits for programmability and better resource utilization of the network.
Some existing switch vendors say they will support OpenFlow API, so at some point we could see both the virtual switch network and the physical switch network both being controlled by a single common control plane, or multiple coordinated control planes, yet we're a ways away from seeing how this new ecosystem will evolve.
The reason that OpenFlow, or something similar is needed, is that at some point we need to transmit bits on a wire, and (in the Data Center at least) that is done by switches and routers (whether they are physical or virtual). In order for SDN to work, there needs to be a common way for those bits on the wire to get forwarded/controlled, and generally that requires a standardized API layer that has broad industry acceptance.
So to answer your question, OpenFlow shouldn't be viewed as a fabric. It should be viewed as an essential building block to enable a software-driven network which could be a software overlay on top of an existing physical fabric, or a coordinated software and physical fabric.