After a good debate, started on Twitter, Michael Bushong wrote a great post trying to move the SDN discussion away from technology. He is even trying to move it away from a pure process context, the one I was tending to. Because the term SDN is so vague I started to see it as a movement, just like DevOps. But Michael is correct that that is also not the right path. He is trying to define SDN more in terms of contexts:
Delegation, Abstraction & Globality
Details of these contexts are in Michael’s post. Of course I am going to explore if this list is complete or not, but for now I can’t think of any additions. His conclusion is even better:
it is entirely possible to build open, controller-based systems that fail to deliver against any of the promises of SDN, just as it is possible to use existing technologies in new ways
In the end SDN, or networks as a whole, should not be a goal in itself. It’s always a means to deliver business goals.