Methods and apparatus for performing content inspection using
multi-pattern packet content inspection mechanisms employing tagged
values. Pattern data structures are employed to facilitate multi-pattern
searches via corresponding string-search algorithm machines. The pattern
data structures include tagged values defining search offsets and depths
for corresponding search patterns. Incoming packets are classified to
flows, and stored in corresponding flow queues. Flow table entries are
used to identify the pattern data structure for a given flow. During
content inspection, the algorithm machine employs the tagged values to
effectively skip portions of a data stream up to the offset for each
search pattern and to cease searching for a pattern upon reaching the
depth for the pattern.