Software-defined networking (SDN) separates network control from network data forwarding, allowing networks to be programmed and centrally managed with standard protocols. SDN is an enabler of network virtualization, or the ability to run multiple virtual network topologies on a shared physical network.