SDN evolved from the Clean Slate project which sought to redesign the internet using a clean slate approach. This led to the development of OpenFlow, which separated the control plane and data plane of network devices. SDN is defined as the separation of the network control plane from the forwarding plane, with a control plane controlling several devices. It provides network agility and flexibility through enhanced programmability, disaggregation of the control plane from hardware, and centralized network control with visibility. Key SDOs developing SDN standards include ONF, IETF, and IEEE.