The controller bridges the gap between open, programmable
network elements and the applications that communicate
with them, automating the provisioning (the setup and
management) of the entire infrastructure, including the
network, services, and applications.