Who says there’s no innovation in networking! There have been more innovations in network technology, and more start-ups focused on networking in the last eighteen months than over the last decade. We have seen breakthroughs in just about every aspect of networking, the fragmentation of switching with the emergence of specialist network technologies and architectures for the different elements of an overall ICT infrastructure. Additionally, there has been significant hype around the development of Software Defined Networking (SDN) and how it will enable networks to be more flexible in supporting the dynamic nature of modern business and social application workloads. This early technology that holds much promise for how networks will be architected, managed and supported.
The basic premise is that the network can be accessed programmatically, and in an automated fashion, to make networks more flexible, dynamic, and cost-efficient, while greatly simplifying operational complexity. An external application, network management tool or orchestration software can interface to the network, which enables the network to be connected directly to the business service layer to:
- Extract greater intelligence from the network on a wide range of conditions that the business layer can respond to.
- Adjust the way the network operates programmatically which will enable much higher levels of automation and flexibility in the way the network is configured to support business applications.
This apparently simple concept quickly becomes very complex when looking at some of the detail. Firstly, there are multiple ways to programmatically interface to the network and the choice of method is not clear-cut. It will be use case specific, which will likely mean that the average network will run multiple methods at the same time. The main ways to programme a network includes:
- Vendor specific APIs. This is where a network equipment vendor publishes an API that enables external tools, software or applications to communicate with the network infrastructure. A good example of a vendor API is Cisco’s onePK (Open Network Environment Platform Kit), which forms part of their Cisco ONE framework.
- An open standard API (e.g. OpenFlow). Even though most standards bodies have working groups looking at programmable networks, there are no formal standards that exist yet. The closest is OpenFlow that is an open API defined by the Open Network Foundation (ONF), which is a group of 90+ member organisations involved in the ICT industry, i.e. not a standards body.
- Virtual network overlays. This method uses network overlay protocols (including VXLAN and NVGRE) to configure tunnels on top of network hardware in such a way that the network that can be created, grown or shrunk dynamically, with the possibility of running thousands of separate virtual networks on the same physical hardware. This gives networks the same operational model as virtual server environments.
There is no doubt that programmable networks and SDN represent important paradigm shifts that will enable future networks to be more flexible, however they are not simple. Just getting an understanding the different options of how networks can be accessed programmatically is an in depth investigation, never mind ongoing management, security, performance, and governance models. These technology breakthroughs are still nascent and haven’t yet ‘crossed the chasm’ which would lead onto further maturity and broader market adoption. Only the very early adopters have deployed SDN and have only done so in small segments of their networks.
With all the high levels of industry and start-up energy going into developing SDN there are sure to ongoing rapid innovations to evolve it into a mature and useable offering. SDN will be another architectural choice clients can select for their network environments, which like all other architectural choices, will be selected based on sounds business reasons, and not because it’s cool technology.