1. A method of improved management of a software-defined network, said network including a network controller and transmitting network traffic using one or more network protocols, the network including devices at least some of which receive network traffic through an ingress interface and transmit network traffic through an egress interface, the method comprising the steps of: receiving network metadata from a plurality of sources in a data processing system, in at least one data format; processing said network metadata while said network metadata is in transition on said network between a network device that generated said network metadata and a device that is able to store said network metadata to extract useful information therefrom; and determining as a result of said metadata processing step, information relating to applications operating on said network; and using said applications information to enable said network controller to perform more efficient management of said software-defined network.