Almost Two Years On: Where is SDN?

              · ·

Almost two years ago I wrote a post on this site entitled Some Initial Thoughts on the SDN. Clearly, since then the SDN concept gained some more legs (and entered a new stage of the hype cycle) - so, where are we right now?

Firstly, I think its fair to say that the concept presented by Scott Shenker of having a single centralised computational element controlling COTS OpenFlow-speaking switches has fallen out of favour somewhat (based on the discussions with other network architects, engineers, and implementors that I have had). Somewhat as predicted, there are real challenges with this approach within high-scale, distributed networks:

One point that has been raised to me when I’ve expressed these thoughts is that transport networks have tended to use centralised computation for many years. However, this is not directly analogous to the SDN controller concept. Transport networks that rely on centralised computation tend to perform "set and forget" computation where an A and B path are programmed once, and in-band OAM chooses which path is used, should the A path fail, it is not recomputed, hence avoiding the challenge of needing to scale to large numbers of path computations, and resulting in worse survivability than an IP network.

The other fundamental challenge around the controller concept is the fact that networks of any scale are inherently inter-domain – even the smallest networks I have worked in have utilised different domains to separate operational elements (e.g., confederations), and the medium and large ones have had multiple platforms, as well as legacy platforms that need to interoperate. 

However, clearly, these approaches might have applicability where one constrains the scope and scale of the network – particularly, utilising this concept within closed datacentre environments might have some applicability (especially where global optimisation is desired). 

So – if the centralised control-plane/COTS forwarding-plane looks somewhat shaky as a view of the "SDN", is there any future? My answer, yes, there definitely should be, but perhaps it won’t be the revolution that was originally predicted, and in my personal opinion will be centred around two key concepts that we can take from the use cases that are being mooted for "SDN":
Both of these concepts really result in more dynamic networks, which consider overall resource utilisation and efficiency to a greater extent. They’re not new ideas – but if SDN means that they are re-examined such that the way that we instantiate them within the network is thought about again, then perhaps it gives us a good way forward to increase the efficiency of networks and hence realise some economic benefits (the primary motivator for technology change). Better still (for operators), this could be achievable through evolving the current infrastructure and not require wholesale changes in infrastructure, and operational capabilities (albeit, the chosen evolution path may open the door to larger changes in subsequent investment cycles). 

I’m sure there are some thoughts that I am being overly pragmatic - and possibly even thoughts that I’m giving "SDN" too much credit. What I’d like to see is ways that we can use new technologies in ways that are realisable, and enhance either the quality of services delivered to users of networks, or simplify or reduce the cost of the infrastructure operated by SPs. To get there, we need evolution, rather than revolution - whilst a coup d’état might be exciting at the time, such revolutions are often bloody, and result in a degradation of experience which I don’t feel operators can afford, or service consumers will tolerate.