While in the test of Fig.1 we assumed that each CAR instance is matched by a given
stream, in this test we verify the influence of the match position on CPU. We define
match position the sequence number of the CAR instance whose corresponding ACL is
matched by the CAR statement. We compared two cases:
- All the CAR instances configured on the FastEth interface are matched by 1 stream
- None of the CAR instances is matched by a packet: this implies that for each packet
the whole list of CAR instances has to be scanned.
(Note: in the two cases the overall packet rate is maintained constant
- 9000 pack/sec -, the packet
size in use is always 64 by. In addition in the no match case, ony a single
flow is generated by the SmartBits, but its rate is equal to the rate of the with
match case.)
In Figure 2 for 10 CAR statements or more, the difference between
two corresponding points in the curves is the overhead introduced by the need to scan
the whole CAR list, which is up to 20% of the CPU cycles.
With 5 CAR statments the two cases are equivalent, while with just 1 CAR instance
since the scan overhead is the same, we can assume that the difference is the overhead
introduced by the marking action, which does not apply in the no match case.
Fig.2: impact of the match position on CPU utilization