The relatively new technology of software-defined networking (SDN) has made waves in the IT industry since its mainstream introduction a few years ago. And indeed, for all the hype it’s received in the last five years (or even since 2009), the SDN technology has lived up to the publicity, already being widely used for network virtualization in enterprise data centers. Many articles have already been written on the fundamental usage of SDN (including a YDT article), as well as white papers by major IT companies like Cisco and Citrix; these pieces generally hold a positive outlook for the future of SDN. But for all the promise this technology shows, not everyone is convinced that SDN is going to be the gold standard adopted by companies across the board.
Certainly, there is the reason the SDN technology has gained traction in the last several years. As Jeremy Rossbach of CA Technologies describes in a recent article, SDN and its partner technology, network functions virtualization (NFV), are going to become the “backbone of the application economy”. In addition, the introduction of SDN allows for the creation of new applications in network security, particularly to take advantage of its centralized network control. Yet, security is also one of the biggest concerns in implementing SDN. Several research articles in the last few years have been dedicated to the security of the SDN architecture itself, and the debate appears to be ongoing. But beyond the SDN architecture, the technology needs to be implemented carefully in computer networks. While centralized control and virtualization of network topology are powerful assets that SDN allows, they also create new security vulnerabilities that must be addressed. Any IT company that implements an SDN system has the ability to make uniform security policies across the system, which is potentially a major upside. The natural downside is that if the SDN controller is successfully hacked, the attacker would have complete control of the system.
One other major challenge with SDN implementation is in the scalability of SDN systems, given the virtualization that comes with SDN systems (via NFV). Granted, the continued growth of network data consumption makes scalability is a challenge for any network system. And if integrated properly, SDN can improve scalability in a given datacenter or network. But there are some scalability concerns raised by the SDN architecture. The centralized SDN controller, discussed earlier, is not necessarily scalable for larger networks since it is a single item. This also presents a single point of failure in the network, which would be dangerous if the controller or an uplink device fails. There are potential workarounds to this problem, but these are still in development.
Even in 2016, SDN is still a quickly evolving technology. And despite its flaws, the consensus seems to be that SDN is only getting better and more useful to different types of organizations. The key is to make sure that any enterprise carefully considers the implications of deploying an SDN system in their situation. Companies would do well to consider whether they have the appropriate network management tools and change management plan to implement an SDN system. As Rossbach notes in his article, network management is not going to get easier when companies switch from a conventional network design to an SDN system, but in our consumer-driven application economy, network reliability will remain critically important.