1. A method for profiling network traffic of a network, comprising: obtaining a first plurality of packets associated with a first server in the network from a plurality of flows in the network traffic; extracting a first plurality of features corresponding to the plurality of flows from the first plurality of packets; iteratively reducing, using a computer, the first plurality of features, comprising: in a first iteration based on a first window size: dividing a first feature and a second feature of the first plurality of features into a first plurality of sections and a second plurality of sections, respectively, wherein a size of at least one section of the first plurality of sections and the second plurality of sections is based on the first window size: comparing a first section of the first plurality of sections and a second section of the second plurality of sections to generate a first matching token based on a pre-determined criterion; retaining, if at least the first matching token exceeds a first pre-determined threshold, the first section and the second section in the first feature and the second feature, respectively; removing, if at least the first matching token is less than a second pre-determined threshold, the first section and the second section from the first feature and the second feature, respectively; and in a second iteration subsequent to the first iteration and based on a second window size reduced from the first window size: dividing the first feature and a third feature of the first plurality of features into a third plurality of sections and a fourth plurality of sections, respectively, wherein a size of at least one section of the third plurality of sections and the fourth plurality of sections is based on the second window size: comparing a third section of the third plurality of sections and a fourth section of the fourth plurality of sections to generate a second matching token based on the pre-determined criterion; retaining, if at least the second matching token exceeds a third pre-determined threshold, the third section and the fourth section in the first feature and the third feature, respectively; removing, if at least the second matching token is less than a fourth pre-determined threshold, the third section and the fourth section from the first feature and the third feature, respectively; determining, using the computer, a first packet content signature based on the first plurality of features by at least iteratively reducing the first plurality of features, wherein the packet content signature is associated with a network application running on the first server; and determining, using the computer, a second server in the network as running the network application by analyzing a second plurality of packets associated with the second server in the network traffic based on the first packet content signature.