While service agility and increased revenue are important benefits of software-defined networking (SDN), the advantages of programming interfaces cannot be overlooked. These programming interfaces will allow SDN to turn the network into an applications platform. They will be one of SDN’s biggest selling points, as they will enable the creation of any application imaginable to support networking needs.
Simply, SDN will offer an increased level of competitiveness to hardware vendors. Companies will compete based on how their product features are differentiated in the market to execute or support various SDN protocols such as OpenFlow etc., until one such standard emerges as the dominant one. This standardization will allow a large software community to emerge in order to write networking apps that run on any SDN equipment.
This is similar to what we saw in the PC industry, where operating systems made PCs easier to manage and support application delivery. More recently, we saw this trend in smartphones and tablets, which developed this concept even further by creating app development platforms and an apps store to simplify delivery.
SDN applications are programs that directly and programmatically communicate the network requirements and desired network behavior to the SDN controller. As SDN transitions the network from behaving autonomously using protocol-based rules into a fully programmable apps platform, SDN functions can be delivered as a service on a networking infrastructure (NaaS). Eventually, this will become a programmable platform where operators can develop and deploy more applications using the network. When the programmable interface becomes generalized and expressive, vendors could develop new, innovative ways of networking. This programmability offers an ecosystem to experiment, where software developers can perceive what the market wants next and introduce the idea to the network, gauging success by how many users accept it. The network is quickly becoming a more customizable platform that would be an asset to the businesses rather than a burden or requirement.
Think about your smartphone for a minute. It doesn’t matter what OS you’re running, you’ve probably got a few apps on there. Almost everyone has an app for voice calls, text messages, email and browsing the internet. Most of us have a camera app and a maps app. But if you look at your spouse’s phone or your sibling’s phone or your coworker’s phone, it’s a pretty good bet that many of your apps are different from theirs. And just like the apps you keep on your smartphone are different than those that your friends keep, the applications you keep on your network will differ as well, though there could be many similarities. Almost everyone will have apps for firewalls and package acceleration. But you might also develop a network app specific to your business, aimed at helping you save money, get more customers and earn more revenue by increasing efficiency.
As the network slowly evolves into an applications platform, we’ll see increased innovation applications that change the way that users interact with the network and the way operators leverage the network to benefit their business.