SDN is an approach that decouples the control plane from the data plane in a network, allowing for centralized control and programmability. This document introduces SDN and network programmability, covering what SDN is and is not, the genesis of SDN, use cases solved by SDN, an overview of OpenFlow, Cisco's SDN solutions including ACI, network overlays, and network controllers. It also discusses the impact of SDN on IT service management.