[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Hashing function for PSAMP



Happy is a difficult thing to say.

I agree with Stewart. In general, if a router doesn't support it today, it won't. Hardware cannot be changed and NP resources in extant boxes are already stretched to the limit.

That said, CRC32 is not a big deal in new hardware; my expectation is that the same is true for BOB (I'm not familiar with it.) Thus, if it's a real requirement that router manufacturers see it as a serious differentiator that sells boxes, you will see it in future products.


Stewart Bryant wrote:


Are router development folks happy with the computational requirement
for BOB (or CRC32) to be computed on every packet, if it is used as the
selection hash?


The short answer is NO ):

A lot depends on where you imagine this will be deployed.
On a pure s/w edge router there will be a measurable
headline performance hit with either of these, but perhaps
that does not matter in that environment. On a hardware
/microcoded core router, I would say that the chances
of getting either in the main path of existing hardware
are for all practical purposes zero.

If you were thinking that they would be run after
some primary sampler at a relatively low packet rate
in the export process, then there is less of an issue.

You canot use the existing CRC32 hardware to perform the
hash. So both BOB and CRC32 would need new hardware or
would need to be performed in software/microcode.

Software CRC32 implementations trade lookup table space
for compute cycles. Both of these resources are in
critically short supply on a high-end forwarder.
Even if you did find the resources (and on many
implementations they would simply not be available)
the result would be a crippling hit on headline
forwarding performance.

I have not done a detailed comparison of BOB and CRC32
execution speeds, but my first impression is that BOB
takes even more cycles to execute than CRC32 although
perhaps not if you take into account the cache stalls
in doing the table fetch.

- Stewart





--
to unsubscribe send a message to psamp-request@ops.ietf.org with
the word 'unsubscribe' in a single line as the message text body.
archive: <http://ops.ietf.org/lists/psamp/>


--
to unsubscribe send a message to psamp-request@ops.ietf.org with
the word 'unsubscribe' in a single line as the message text body.
archive: <http://ops.ietf.org/lists/psamp/>