Welcome! Log In Create A New Profile

Advanced

Re: IP Upstream Hash

July 21, 2011 05:44AM
On Wed, Jul 20, 2011 at 02:18:52PM -0700, Matthieu Tourne wrote:
> Hi all,
>
> I was looking at the code in ngx_http_upstream_ip_hash_module.c
> And I'm not sure where the hashing algorithm for IPs is coming from,
> especially those lines :
>
> iphp->hash = 89;
>
> hash = (hash * 113 + iphp->addr[i]) % 6271;
>
> Just wondering if those constants are arbitrary chosen, or if there is
> something there to guarantee a good distribution ?
>
> If you have some links explaining this algorithm, it would be greatly
> appreciated!
> Also, how would you get a good distribution on IPv6. Maybe it would make
> sense to use murmur ?

This algorithm came from FastMail.fm. Murmur2 may be better, I'm going
to use it in upcoming upstream hash module which allows to hash any
expression.


--
Igor Sysoev

_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

IP Upstream Hash

Matthieu Tourne 2946 July 20, 2011 05:20PM

Re: IP Upstream Hash

chateau Xiao 997 July 20, 2011 11:14PM

Re: IP Upstream Hash

Igor Sysoev 1697 July 21, 2011 05:44AM

Re: IP Upstream Hash

chateau Xiao 937 August 03, 2011 09:48PM

Re: IP Upstream Hash

Oscar Fernandez 928 August 04, 2011 03:10AM

Re: IP Upstream Hash

Igor Sysoev 1335 August 04, 2011 07:12AM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 276
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready