Force10 Networks PSeries 100-00055-01 User Manual
Page 69
P-Series Installation and Operation Guide, version 2.3.1.2
69
Pre-match Condition — the S Value
The value in register C
f
is presented to all the signatures simultaneously during matching.
C
f
must have all the bits specified by s
i
(in addition to matching m
i
) in order for the signature i to trigger. In
other words, if the result of the logical “AND” of register C
f
with s
i
is non-zero and equal to s
i
, the
signature is allowed to trigger. Otherwise the signature is not triggered. Therefore value s
i
is referred to as
the pre-match bit pattern.
Post-match Condition — the C Value
The c
i
value is the post-match bit pattern defined by the signature i. If m
i
matches in the data stream, and
the pre-match condition is met, c
i
is logically “OR-ed” with the existing value in register C
f
, and the result
is written back to C
f
.
In general for each signature i at time t:
where /\ is a logical “AND” operator, & is a bitwise AND, Sigma is a bit-wise “OR” of several terms, and |
is a bitwise OR of two terms.
Equation 3 states that if there is a match m
i,
and the pre-match condition holds, the post-match condition
cp
i
is enabled.
Equation 4 states that at each cycle, the register C
f
is updated by the bitwise OR of all the cp
i
values of all
the signatures, and a final bitwise OR with the previous state.
When a stateful flow is older than a timeout value, C
f
(t-1)
is ignored. It is replaced by 0x1. So, the rule for
the first state of a flow should have s=1.
Packet Handling — the R Value
The constant r
i
is a flag that tells the hardware what to do with a packet that has been matched to signature
i. The memory used to store the matched packets is divided into Temporary Memory and Match Memory. If
a packet is stored in Match Memory, action is requested from the host to process the matched packet. If a
packet is stored in Temporary Memory, no action is requested from the host, as this represents only a
partial match.
If
m
i
s
i
t
C
f
t
1
–
&
(
) s
i
t
=
∧
⎩
⎭
⎨
⎬
⎧
⎫
then cp
i
t
,
c
i
else cp
i
t
0
=
⎩
⎭
⎨
⎬
⎧
⎫
,
=
Equation 3
C
f
t
cp
i
t
C
f
t
1
–
Equation 4
∑
=