SDN applications: These applications relay actions and request resources through the SDN controller using APIs. SDN applications can assume various forms and serve various functions, such as network management, providing analytics, adding security or common network functions. Examples include IP address management (IPAM), managing quality of service (QoS), load balancing, or detection and mitigation of a denial-of-service (DoS) cyberattacks. SDN controller: SDN applications send instructions to the SDN controller, which relays that information to networking components. The SDN controller also collects network information from hardware and delivers this information and relevant statistics back to the applications.SDN networking devices: These devices are responsible for forwarding and data processing tasks, which can be performed for the data path as well. The SDN controller integrates all three layers. These API integrations are commonly called northbound or southbound interfaces. The northbound is the integration between the controller and the application while the southbound is the integration between the controller and the physical networking devices.