×

Pattern matching in a multiprocessor environment with finite state automaton transitions based on an order of vectors in a state transition table

  • US 7,805,392 B1
  • Filed: 11/29/2006
  • Issued: 09/28/2010
  • Est. Priority Date: 11/29/2005
  • Status: Active Grant
First Claim
Patent Images

1. A method for pattern matching in a plurality of interconnected processing engines, comprising:

  • accepting at least one input sequence of symbols over an interface;

    accepting a specification of transitions among states associated with a finite state automaton for matching an input sequence to one or more patterns, the specification comprising a state transition table having a first dimension corresponding to states and a second dimension corresponding to input symbols, with each transition being associated with at least one symbol, with multiple subsets of transitions comprising vectors in the first dimension each associated with a respective input symbol and specifying next state transitions for each current state, and with the input symbol associated with a given vector in the first dimension of the state transition table being determined by the position of the given vector in the table;

    selecting an order associated with the vectors that is different from the order of the vectors in the state transition table;

    storing data that specifies the transitions according to the selected order; and

    performing pattern matching in a plurality of interconnected processing engines including determining whether the accepted input sequence matches a pattern based on the stored data, with the determining including, for at least one input symbol in the accepted input sequence;

    translating the input symbol in the accepted input sequence to a different symbol according to the change in position of a given vector between the order defined by the state transition table and the order defined by the stored data,determining one of the vectors that corresponds to the translated input symbol, anddetermining a transition from a current state to a next state based on the determined vector and the stored data.

View all claims
  • 9 Assignments
Timeline View
Assignment View
    ×
    ×