What's the difference between a traditional switch and OpenFlow Switch?

I know that OpenFlow switch is used in Software-defined networking but am failing to understand why a OpenFlow switch is so special?

  • Did any answer help you? if so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you could provide and accept your own answer. – Ron Maupin Aug 10 '17 at 22:57

A normal switch works independently of the rest of the network.

A OpenFlow/SDN switch, when it receives a packet, that it does not have a flow for (Match + exit port) will contact a SDN controller (Server) and ask what must it do with this packet. The controller can then download a flow to the switch, possibly including some packet manipulation. Once the flow is downloaded to the switch it will switch similar packets at wire-speed.

Why is centralizing the decision such a big deal?

Having a central server that knows the network layout and can make all the switching decisions and build the paths gives us new capabilities.

  1. The SDN controller could route non-critical/bulk traffic on longer routes that are not fully utilized.
  2. The SDN controller could send the initial couple of packets to a firewall, and once the firewall is happy/accepts the flow, the SDN controller can bypass the firewall thus removing the load from it and allowing multi-gigabit data centers to be fire-walled.
  3. The SDN controller can easily implement load-balancing also at high data rates by just directing different flows to different hosts, only doing the set-up of the initial flows.
  4. Traffic can be isolated without the need for VLANs, the SDN controller can just refuse certain connections.
  5. Setup a network TAP/Sniffer easily for any port or even specific traffic by programming the network to send a duplicate stream to a network monitoring device.
  6. It allows for the development of new services and ideas all in software on the SDN controller. OpenFlow-Actions
| improve this answer | |

In a traditional switch device, packet forwarding and high-level routing are on the same device. An OpenFlow switch separates the data path from the control path. Separate controller makes high-level routing decisions. The switch and controller communicate by the OpenFlow protocol.

| improve this answer | |

So in the old switches you would have to go to the locations of the switch login to the command line and then configure it through the command line.

With open flow enabled switches you could program the switch by sending commands through openflow messages. SDN controller helps you to program the switches. In other words, SDN controller uses openflow and gives you an interface to program the switched.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.