Software-defined networking (SDN) is a computer platform that creates a centralized and programmable logical network. Unlike conventional, hierarchical networks that rely on several vendor-specific devices and protocols for packet delivery, SDN separates (or decouples) the network control and packet-forwarding functions. This allows administrators to programmatically reconfigure the network on demand to manage traffic loads and deliver services where they are needed in the network – without regard to the underlying infrastructure and hardware components. Thus, less expensive commodity switches and open source software can be used in software-defined networking.
Software-based SDN controllers maintain a global view of the network, which appears to applications and policy engines as a single, logical switch. Any network switch’s packet-forwarding rules can be changed when necessary – raising or lowering priorities for example, or blocking specific types of packets – to improve network performance. A network administrator can manage traffic from a centralized console without touching individual switches.
Enterprises use software-defined networking for high-bandwidth, dynamic applications that require access to multiple databases and servers. SDN can automatically provision applications, storage and other IT resources – on demand and à la carte – to address changing business needs. Automated provisioning also improves service availability and reduces the chance of human error. For carrier and service providers, software-defined networking offers bandwidth on-demand, WAN optimization and bandwidth calendaring. For cloud and data centers, SDN offers efficient utilization of resources and faster turnaround times for creating a segregated network.