1. A method for packet classification comprising: determining a matching length of how long each field value of one or more fields in an input packet coincides with a field value of a corresponding field stored in a rule set by performing a field-by-field search on the fields in the input packet, and generating a tuple list made up of combinations of one or more matching lengths for the respective fields; selecting particular tuples existing in the rule set from the tuple list; filtering each of the particular tuples by using a Bloom filter to produce positive tuples; and searching for a best matching rule for the input packet based on a search pool including exclusively the positive tuples resulting from the filtering.