The explosion of mobile devices, server virtualization, and advent of cloud services are driving the networking industry to reexamine network architectures. Conventional networks are hierarchical, built with tiers of Ethernet switches and routers arranged in a tree structure. This design made sense when client-server computing was dominant. Such a static architecture is ill suited to the computing and storage needs of today’s enterprise data centers, campuses, and carrier environments.
Within an enterprise traffic patterns have changed significantly. In contrast to client-server applications where the bulk of the communication occurs between one client and one server, today’s applications access different databases and servers, creating a diversity of machine-to-machine traffic before returning data to the end user device. At the same time, users are changing network traffic patterns as they push for access to corporate content and applications from any type of device, connecting from anywhere, at any time and often using Voice and video over IP.
Enterprise data centers managers are now planning for a utility computing model, which might include a private cloud, public cloud, or some mix of both, resulting in additional types of traffic across the wide area network.
Enterprises have embraced both public and private cloud services, resulting in unprecedented growth of these services. Enterprise business units now want to access applications, infrastructure, and diverse IT resources on demand from a variety of network sources. To add to complexity, IT’s planning for cloud services must be done in an environment of increased security, compliance, and auditing requirements, along with business reorganizations, consolidations, and mergers that can change assumptions overnight. Providing self-service provisioning, whether in a private or public cloud, requires secure elastic scaling of computing, storage, and network resources, ideally with a common suite of tools.
Handling today’s “big data” datasets requires massive parallel processing on thousands of servers, all of which needs direct connections to each other. The rise of huge datasets is fueling a constant demand for additional network capacity in the data center. Operators of huge data center networks face the task of scaling the network to previously unimaginable size, maintaining any-to-any connectivity without going failing to support quality of service commitments.
In the SDN architecture network intelligence and state are centralized on virtual servers and not on switches or routers. As a result, enterprises gain unprecedented programmability, automation, and network control, enabling them to build software-based scalable, flexible networks that can instantly adapt to changing business needs.
The Open Networking Foundation (ONF), Software-Defined Networking (SDN) is transforming networking architecture by relocating many switching and routing functions from hardware to software. SDN is rolled out as follows:
1. Centralized management and control of networking devices from multiple vendors;
2. Improved automation and management by using common APIs to abstract the underlying networking details;
3. Delivery of new network capabilities without the need to reconfigure individual devices or wait for vendor releases;
4. Programmability by operators, enterprises, independent software vendors, and users (not just equipment manufacturers) using common programming environments;
5. Increased network reliability and security as a result of centralized and automated management of network devices, uniform policy enforcement, and fewer configuration errors;
6. Better end-user experience as applications exploit centralized network state information to seamlessly adapt network behavior to user needs.
Networking technologies have so far operated with discrete sets of protocols designed to connect individual servers through routers and switches over arbitrary distances, link speeds, and topologies.
Protocols tended to be defined by vendors, with each solving a specific problem, on a specific device. This has resulted in the primary limitations of today’s networks: complexity and inflexibility. For example, to add or move any device, IT had to touch multiple switches, routers, firewalls, Web authentication portals, etc. and update VLANs, quality of services (QoS), and other protocol-based mechanisms using device-level management tools. In addition, network topology, vendor switch models, and software versions all had to be taken into account. Due to this complexity, today’s networks are relatively static as IT seeks to minimize the risk of service disruption.
The static nature of networks is in stark contrast to the dynamic nature of today’s environment, where server virtualization has greatly increased the number of hosts requiring network connectivity and fundamentally altered assumptions about the geographic location of hosts. Prior to virtualization, applications resided on a single server and primarily exchanged traffic with select clients. Today, applications are distributed across multiple virtual machines (VMs), which exchange traffic flows with each other. VMs migrate to optimize and continually rebalance server workloads, causing the physical end points of existing flows to change rapidly over time. VM migration challenges many aspects of traditional networking, from addressing schemes and namespaces to the basic notion of a routing-based design.
In addition many enterprises today operate an IP converged network for voice, data, and video traffic. While existing networks can provide differentiated QoS levels for different applications, the provisioning of those resources is entirely manual. IT must configure each vendor’s equipment separately, and adjust parameters such as network bandwidth and QoS on a per-session, per-application basis. Because of its static nature, the network cannot dynamically adapt to changing traffic, application, and user demands.
SDN allows direct access to and manipulation of network devices such as switches and routers, both physical and virtual. It is the absence of an open interface to these devices that has led to the characterization of today’s networking devices as monolithic, closed, and mainframe-like. Protocol like SDN is needed to move network control out of the individual switches to centralized control software.
SDN control software can control any SDN-enabled network device from any vendor, including switches, routers, and virtual switches. Rather than having to manage groups of devices from individual vendors, IT will be now able to use SDN-based orchestration and management tools to quickly deploy, configure, and update devices across the entire network.