As elastic cloud architectures and dynamic resource allocation evolve and as mobile computer operating systems and virtual machines usage grows, the need has arisen for an additional layer of software-defined networking (SDN). Such a layer allows network operators to specify network services, without coupling these specifications with network interfaces. This enables entities to move between interfaces without changing identities or violating specifications. It can also simplify network operations, where global definitions per identity do not have to be matched to each and every interface location. Such a layer can also reset some of the complexity build-up in network elements by decoupling identity and flow-specific control logic from basic topology-based forwarding, bridging, and routing.
From http://en.wikipedia.org/wiki/Software-defined_networking