The Network Traffic based Application Identification (netAI) tool identifies which end host applications are responsible for observed network traffic flows. Unlike previous solutions that identify applications based on port numbers or packet payload information, netAI computes various payload-independent features and uses machine learning to classify the traffic. Before netAI can be used to classify a particular application it must be trained on a representative set of traffic flows.