Writing OpenFlow controllers that interact with physical hardware is harder than most people think. Apart from developing a distributed system (which is hard in itself), you have to deal with limitations of hardware forwarding pipelines, differences in forwarding hardware, imprecise abstractions (most vendors still support single OpenFlow table per switch), and resulting bloated flow tables.
Now imagine you could reprogram the hardware forwarding pipeline with OpenFlow. That’s exactly what you can do on the next-generation switches from HP. For more details listen to the Episode 37 of Software Gone Wild with Chris Young and Craig Mills from HP. The podcast was recorded during Interop Las Vegas 2015, so you’ll be able to “enjoy” the background noise of the show floor.
Note: I was wrong. Controller-initiated reprogramming of the forwarding pipeline is part of OpenFlow standard (the table description structures are read-write, not read-only as I claimed in the podcast).
BTW, if the topics in the podcast sound like Latin to you, and you’d really like to grok them, consider watching the OpenFlow Deep Dive webinar.