Application-defined networking (ADN) is a networking scenario in which applications have the ability to adapt network environments to meet their needs, rather than having resources allocated by the network