Patent ID: 7706378

Claim:
A method for detecting a substring of interest from a plurality of datagrams that arrives out-of-order, comprising: receiving a datagram, the datagram comprising a body substring and a header with an index; determining whether a preceding span exists in a span set; determining whether a succeeding span exists in said span set; inserting a new span into said span set when neither a preceding span nor a succeeding span exists, the new span corresponding to said datagram; replacing said preceding span with the datagram, when a preceding span exists but a succeeding span does not exist; replacing said succeeding span with the datagram, when a succeeding span exists but a preceding span does not exist; replacing said preceding span and said succeeding span with a join span comprising said datagram, said preceding span, and said succeeding span, when both a preceding span and a succeeding span exist; and applying an automaton having a list of substrings of interest to the body substring of said datagram to determine whether contents of said body substring match one of said substrings of interest.