Un réseau défini par logiciel est une architecture de réseau dont la gestion est assurée à l'aide d'applications logicielles. Dans un réseau défini par logiciel, la couche de gestion des flux est dissociée de la couche de données. Cela permet notamment de programmer le comportement du réseau de manière centralisée. Ce qui offre un vaste choix de fonctionnalités de pilotage automatisé pour les centres de données, les réseaux locaux (LAN) et les réseaux étendus (WAN).