In a conventional router, a piece of silicon tracks when a packet arrives and then consults a routing table to send it on its way in the most efficient manner. In an OpenFlow switch, the acts of receiving and determining where to send the packet are no longer performed inside the same box. As the Internet gets more end points and more traffic, the routing tables get longer, and it becomes more time-consuming to send on packets, creating bottlenecks. The goal of the OpenFlow initiative is to create an overlay mechanism that directs where the packets go. This sits on top of the network of routers and switches that are used to actually move the packets.
OpenFlow stems from the desire to enable smarter, more flexible networks to deliver information. By separating the packet switching mechanisms and control functions, middleware can be developed independently of the switching mechanism.