do you mean, in the next version, murmur2 hash function will be used in nginx?<div><br></div><div>and do you show the benchmark between the orignial algorithm and the new one?<br><br><div class="gmail_quote">On Thu, Jul 21, 2011 at 5:43 PM, Igor Sysoev <span dir="ltr"><<a href="mailto:igor@sysoev.ru">igor@sysoev.ru</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div><div></div><div class="h5">On Wed, Jul 20, 2011 at 02:18:52PM -0700, Matthieu Tourne wrote:<br>
> Hi all,<br>
><br>
> I was looking at the code in ngx_http_upstream_ip_hash_module.c<br>
> And I'm not sure where the hashing algorithm for IPs is coming from,<br>
> especially those lines :<br>
><br>
>             iphp->hash = 89;<br>
><br>
>             hash = (hash * 113 + iphp->addr[i]) % 6271;<br>
><br>
> Just wondering if those constants are arbitrary chosen, or if there is<br>
> something there to guarantee a good distribution ?<br>
><br>
> If you have some links explaining this algorithm, it would be greatly<br>
> appreciated!<br>
> Also, how would you get a good distribution on IPv6. Maybe it would make<br>
> sense to use murmur ?<br>
<br>
</div></div>This algorithm came from FastMail.fm. Murmur2 may be better, I'm going<br>
to use it in upcoming upstream hash module which allows to hash any<br>
expression.<br>
<br>
<br>
--<br>
<font color="#888888">Igor Sysoev<br>
</font><div><div></div><div class="h5"><br>
_______________________________________________<br>
nginx-devel mailing list<br>
<a href="mailto:nginx-devel@nginx.org">nginx-devel@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-devel" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-devel</a><br>
</div></div></blockquote></div><br></div>