To cope with the many challenges of the new digital business, data centers are undergoing a once-in-a-generation architectural shift, from hardware- to software-centric models. Just as virtual machines supplanted physical servers as the fundamental element of modern server applications, software-defined networking (SDN) is now emerging as a more flexible, manageable way to organize a data center’s network needs.
SDN can create far greater manageability by enabling network managers and developers to access network resources at a programmatic level, treating network resources in much the way they treat other computing resources such as central processing units (CPUs) and memory. It can enable networks to become easier to scale up or down, shorten setup time, increase security, and reduce costs. And SDN can take advantage of programmable network hardware, enabling managers to change the behavior of network devices through software upgrades instead of expensive hardware replacements.
But progress on SDN adoption has been slower than expected because it requires network admins to adopt new skill sets and new ways of thinking. Consequently, it’s seen the most uptake to date in the biggest data centers, such as those used by giant cloud providers including Microsoft Azure and Google Cloud Platform. To broaden the appeal of SDN to more enterprises, there need to be more effective SDN tools available and network managers need to be better educated on their uses and benefits.
The promise of SDN, as well as the barriers to its wider adoption, were the subjects of the first-ever, invitation-only future:net conference, held August 31–September 1 in Las Vegas. About 200 attendees took in technical presentations on the networking technologies deployed by today’s giant cloud providers, the future of data-center networking, various open-source initiatives underway in SDN and network virtualization, and the rise of container-based networking.
“In 10 years, I’ve never seen such an assembly of networking talent on stage,” said Martin Casado, one of the guiding forces behind the birth of SDN and now a general partner at Andreessen Horowitz, who spoke at the end of the conference. Several common themes arose from during the two-day event:
Infographic produced by MIT Technology Review Custom in partnership with VMware. View full printable infographic here. For more information on software-defined networking and network virtualization, please visit www.vmware.com/radius/nsx.
The ongoing need for more effective tools for network monitoring and management was a popular topic, as speakers returned again and again to the sheer difficulty of getting workable data out of a network.
In a session featuring the Internet’s “Cloud Titans,” Microsoft’s David Maltz described several tools the company has built to address the difficulties in even identifying problems when running cloud-scale networks such as data centers for Microsoft Azure. Ultimately, Maltz and others are tackling these problems by redesigning their network architectures in more software-defined ways—moving to flexible (and data-rich) networks that can adapt to changing requirements, provide network telemetry to operators, and enable managers to fix problems more easily.
In computing, different levels of abstraction make it possible for people to write software or control computers without having to understand a CPU’s machine language or the wiring of its circuits. Each successively “higher” layer of abstraction encapsulates a series of instructions encoded at a “lower” level.
Many summit speakers discussed the advantages that SDN could bring in creating higher levels of abstraction for networking. Ideally, you’d be able to start with a specification for the network behavior that you wanted and then express that behavior in some kind of high-level network-control language. That program could then be compiled into code that could run on a programmable switch, much as Java programs today are compiled to run on CPUs. Such a programming language is beginning to emerge from the world of SDN, and it’s called P4.
For networks to be programmable through higher levels of abstraction we will need programmable networking hardware. Moore’s Law—which states that the number of transistors per square inch on an integrated circuit doubles roughly every two years, thus increasing computing power per dollar at the same rate—is at last enabling a greater degree of programmability in networking devices than ever before.
Bryan Larish, chief IT and networks architect at Verizon, talked about the need to “prepare the runway” and get people used to the new, software-defined way of doing things. “That skill-set shift is not going to happen overnight—and I think that’s okay,” Larish said during a session on open-source solutions.
Security is an ongoing concern for network managers. Network virtualization can help by making networks more compartmentalized and more manageable.
During a live onstage recording of a Packet Pushers podcast, panelists discussed how microsegmentation of networks can provide security benefits, similar to how putting applications in their own virtual machines (VMs) helps security.
Endpoints are now everywhere in the modern enterprise network: mobile devices, apps, browsers, even the Wi-Fi network at your local Starbucks. Rather than trying to protect a nonexistent perimeter, network managers need to look at protecting their networks by giving each application a defined set of behaviors—something more easily doable in the SDN era.
Finally, the promise of open-source efforts for advances in networking is coming to fruition in OpenStack, with its approach to delivering infrastructure as a service (IaaS).
Combined with the rise of containers and their concomitant need for container-based networking, a new generation of container-friendly OpenStack solutions is just around the corner. These new solutions could, in turn, boost the project into the realm of more widespread enterprise adoption.
In broad terms, the future of networking is clear: it will follow a path toward increasing virtualization, just as compute and storage did before it. With virtualization will come more flexibility and programmability and network management may finally reach maturity. Most important, network properties will be definable at higher and higher levels of abstraction, freeing network administrators to create more robust networks and enabling software developers to treat network resources the way they treat other computing resources.