1. A computer implemented method for identifying network traffic comprising: receiving pattern matching data at an interface; comparing the pattern matching data with each of a plurality of patterns using at least one computer; for each pattern, determining whether the pattern matching data matches the pattern; for each pattern that the pattern matching data is determined to match, including a pattern match score corresponding to the pattern in an application protocol score associated with an application protocol with which the pattern is associated, wherein the application protocol comprises one of a plurality of application protocols and each pattern is associated with a corresponding one of the plurality of application protocols; and concluding that a network traffic with which the pattern matching data is associated is associated with a determined application protocol that has a highest application protocol score among the plurality of application protocols.