OpenFlow switching is a technology that grew out of the research project named OpenFlow: Enabling Innovation in Campus Networks in 2008 at Stanford University. OpenFlow is an enabler of Software defined networking (SDN).
OpenFlow is defined as an emergent and open communication protocol that allows a server software to determine the packet forwarding path that should be followed in a network of switches. With the OpenFlow protocol, a network can be managed as a whole, not as a number of devices to be managed individually, it is the server itself that tells the switches where the packets should be sent. With this OpenFlow technology, decisions involving the movement of packages are centralized, so that the network can be programmed independently of the switches.
OpenFlow, is a part of the datapath which reside on the same switch, but it is a controller that makes the routing decisions on-site. Both elements communicate via the OpenFlow protocol. This approach in SDN allows more effective use of network resources than in a conventional network. OpenFlow is designed to address the mobility of virtual machines (VM), mission-critical networks or networks NGN phones. The OpenFlow protocol is layered on top of TCP, and prescribes the use of TLS. Controllers should listen on TCP port 6653 for switches that want to set up a connection. Earlier versions of the OpenFlow protocol unofficially used port 6633.
OpenFlow : History and Proposal
The Open Flow Switch Consortium specification has remained in draft until recently, when the Open Networking Foundation announced they would be responsible for the protocol. In 2011, the ONF (Open Networking Foundation) was founded with the aim of standardizing the emerging technologies driving the software at the forefront of Networking and Management data centers.
While the first version of OpenFlow (version1.1) protocol was launched in February 2011, the second (version 1.2) was monitored by the ONF having control over the specification. The current version is 1.4.0. Founding members are Google, Facebook and Microsoft, Citrix, Cisco, Dell, HP, F5 Networks, IBM, NEC, Huawei, Juniper Networks, Oracle and VMware.
OpenFlow is a way for researchers to experiment with protocols in the networks we use every day. It allows the researchers to experiment with heterogeneous uniform switches with high density ports. Moreover, manufacturers do not have to expose the internal processes of their switches. The proposed OpenFlow is very clear : Allow researchers to evaluate their ideas in a real work environment.
The OpenFlow Switch
The basic idea is simple : exploit the fact that most Ethernet switches contain Flow-Tables, working on the line speed to implement firewalls, NAT, QoS, and collect statistics. Although the Flow-Tables are handled by each manufacturer are of their own, have taken advantage observed and characteristics common to all of them.
That is precisely what is OpenFlow – protocol allowing programs to use open tables to flow in different switches and routers. The network administrators need only divided traffic between production and dedicated to research. Thus, they get a chance to experiment with new protocols, new security models, addressing schemes, including alternatives to IP and ultimately greater innovation. Viewed this way, OpenFlow could be a generalization of VLAN. Production traffic would not be affected because it is isolated and would be processed in the same way that has been done up to now. The actions that can support the OpenFlow switches are extensible, but one need to have minimum and characteristics common to all of them.