1. A method for checking a rule table, the method comprising: (a) providing a two dimensional rule table having a number of rows, wherein each of said rows comprises a number of segments, and wherein each of said segments comprises a number of positions; (b) storing rule vectors in said rule table, wherein said storing comprises: (i) utilizing a first variable as a rule number position pointer, a second variable as a row counter, and a third variable as a segment pointer; (ii) receiving a value of a parameter of a rule vector pointed to by said second variable, wherein said third variable is set to the received value; (iii) setting a bit in the rule table to a logical “1”, wherein the bit is identified by a row pointed to by the second variable, at a segment pointed to by the third variable, and in a position pointed to by the first variable; (iv) increasing the value of the second variable by one; and (v) while the value of the second variable is smaller than the number of rows continue with operation (ii). (c) comparing a received data vector to at least one of the stored rule vectors; and (d) returning a rule number indicator if a match is found between said received data vector and at least one of the stored rule vectors.