Software Defined Networking (SDN) aims to make network control programmable by separating the control plane from the data plane, allowing more innovation in network management. It addresses limitations of existing networking systems by standardizing interfaces and enabling developers to create applications that improve network functionalities. SDN promises to simplify complex networks, enhance control, and offer a lower entry point for innovation while also posing challenges in abstraction, performance, and security.