Proprietary and Confidential to PMC-Sierra, Inc and for its Customers
’
Internal Use
Document ID: PMC-2010146, Issue 4
17
PM2329 ClassiPI Network Classification Processor Datasheet
1.4.2 Architectural Support
The PM2329 architecture supports the following to improve system performance:
Scalable Policy Search Engine can be scaled up to accommodate a wide variation in the number of
rules as well as number of search partitions (to store multiple search rules).
Supports search sequencing to minimize Packet Processor or CPU intervention.
Supports complex field extraction from input packet for further classification.
Lookup/Search model that is easy to integrate into software implementations of protocols.
Supports statistics collection.
1.4.3 Software Model Support
From the software programmers perspective, the PM2329 presents a flexible Lookup/Search model. It
implements a generalized Lookup/Search operation, which is atomic in nature. This operation has two
main inputs: the key data using which the lookup is to be performed and the set of policy rules, which have
to be applied to the key data to perform this lookup. The former is selected from the packet and can be the
packet header L3/L4 information, other fields from the packet header or fields from the packet data
payload. The latter is a set of rules, which are to be applied to this data to obtain a result. The result is in the
form of an occurrence of match, in other words, the identification of a rule, which the input data satisfies.
Since it is possible for more than one rule to match the input data, the rules are prioritized. In case of
multiple matches, multiple results can be returned and the higher priority matching rule is presented first.
Multiple such Lookup/Search functions can be stored within a single PM2329. Each such function is said
to occupy a partition within the chip. For example, a route lookup table can be stored in one partition,
while another partition can store a QoS flow classification policy. The PM2329 also has the ability to
perform a sequence of different lookups or classifications on the same packet data.
The Search/Lookup operations programmed into the PM2329 can be automatically applied to every packet
presented to the PM2329
’
s high-speed wide synchronous data transfer bus. Thus, the sequence of
operations is performed on every packet and the result is made available, on a per packet basis, to the
Packet Processor.
To assist in high-speed packet classification, the PM2329 is designed to be Ethernet and IPv4-aware. It
incorporates a Field Extraction Engine (FEE) that understands Ethernet II, 802.3 & 802.1p/q and
determines where the Layer 3 payload starts from in the packet. It can extract key IP, TCP and UDP header
fields as well as payload data at any offset. The FEE is tolerant of the various idiosyncrasies of the IP and
TCP headers. It is also possible to bypass the FEE on a per-packet basis.
Operating at a high clock rate, the 64-bit wide synchronous bus provides adequate bandwidth to support
Gigabit/OC-48 rate transfer of data, commands and results. The PM2329
’
s flexible data interface
architecture allows complete hardware controlled data transfer for high-speed applications, as well as a
processor driven software controlled data transfer for systems where performance is less critical. The
PM2329 can be configured to receive streaming commands and data through its data interface. Data can
consist of arbitrary bytes, partial IP packets (IP header, TCP header and partial data), or complete IP
packets. In all cases the data could be optionally preceded by command words that identify the nature of
data following immediately as well as the kinds of classification to be performed on the data. This method