Re: need advice for high traffic network

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

 



> you should run the tests. doing a hash across too many buckets ends up 
> costing performance as well.

Yes, I should :=)

> you want the list per bucket to not be too long, but you also don't want to 
> spend more effort and ram on empty buckets.

What's the extra effort when you have the ram to spare? A worst
you might slightly reduce the cache hit rate.

> setting conntrack_max equal to the number of buckets doesn't mean that you 
> will have one entry in each bucket, it means that you will have a lot of 
> empty buckets and other buckets with several items in them.

Right, but it's more likely to have short bucket lists if you have
more hash buckets, given the same number of connections, isn't it?

> >The FAQ says though, that one should use odd hash bucket counts, so you
> >might want to decrease that by one.
> 
> it's not unusual for simple (i.e. cheap to use) has algorithims to have 
> pathalogical results for specific sizes. ideally you want the bucket count 
> to be a prime number, if it's not (for example a even power of 2) you can 
> get situations where it only puts things in a very small number of buckets.

As far as I understand is, the Jenkins Hash used internally in netfilter
and other parts of the Linux kernel, isn't just your average
text book hash, but something with quite a lot of thought and analysis
behind it:

=> http://www.burtleburtle.net/bob/hash/doobs.html

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux