Hello,

  I filled in the test result for the remaining cases. It is the same link
as before [1]. The tests were executed with 3 data sets as follows (a) 10K
requests (includes duplicate host headers) (b) All unique host headers in
1M requests (c) and 250K requests (includes duplicate hosts headers). All
tests used 'balance hdr(Host)' directive in config

  Tests were executed for the following combination (a) One of
SDBM/WT6/DJB2 with (b) One of avalanche enabled/disabled with (c) One of
consistent/map-based.
  SDBM was executed across 3 versions of haproxy (i) 1.4 (ii) 1.5-dev19
(iii) 1.5 with the patches. WT6/DJB2 were only executed with (iii) 1.5 with
the patches.

  The results can be viewed in 3 dimensions, dataset size, algorithms,
avalanche enabled/disabled.

  I will let you draw your own conclusions, these are just me thought. On
this dataset, applying avalanche on SDBM, either consistent or map-based,
makes the distribution worse. DJB2 benefits from having avalanche applied
in all cases.  WT6 benefits from application of avalanche with consistent
hashing, but does not from map-based.

 Let me know in case you want anything additional from me at this time.

Thanks
Bhaskar

[1] http://tinyurl.com/l55zode


On Tue, Nov 5, 2013 at 6:45 PM, Bhaskar Maddala <madda...@gmail.com> wrote:

> Hello,
>
>    Please find attached the patch with changes we discussed on the email
> thread for the first patch on the same. Test results are at [1]. The only
> variation between this patch and our discussion was on wt6, I have not
> removed it at this time as there are a couple of scenarios when not
> applying avalanche. Overall the result seem to indicate that applying
> avalanche produces worse results for sdbm but better results for djb2.
>
>   On the implementation, I followed the pattern employed for dyn bit on
> the algorithm, this leaves space of 7 hashing algorithm (4 in addition to
> the 3, sdbm/djb2/wt6).
>
>   On the testing, there are some duplicates with the test results I mailed
> in with the first patch, I executed these again as sanity checks to make
> sure everything is complete/correct.  On the tab for 250K requests,
> sections for map-based are incomplete, I will fill these slowly.
>
>   Here is the commit message that best describes the changes
>
> -------
> Summary:
> Avalanche is supported not as a native hashing choice, but a modifier
> on the hashing function.
>
> The default values were selected for backward compatibility with previous
> releases.
>
> The syntax for hash-type config element is
> hash-type {map-based|consistent} [[<algo>] avalanche]
>
>
> Examples
>   (default) hash-type map-based
>         Map based hashing using sdbm without avalanche
>
>   (default) hash-type consistent
>         Consistent hashing using sdbm with avalanche
>
> Additional Examples:
>
>   (a) hash-type map-based sdbm
>         Same as default for map-based above
>   (b) hash-type map-based sdbm avalanche
>         Map based hashing using sdbm with avalanche
>   (c) hash-type map-based djb2
>         Map based hashing using djb2 without avalanche
>   (d) hash-type map-based djb2 avalanche
>         Map based hashing using djb2 with avalanche
>   (e) hash-type consistent sdbm avalanche
>         Same as default for consistent above
>   (f) hash-type consistent sdbm
>         Consistent hashing using sdbm without avalanche
>   (g) hash-type consistent djb2
>         Consistent hashing using djb2 without avalanche
>   (h) hash-type consistent djb2 avalanche
>         Consistent hashing using djb2 with avalanche
>
> -----
>
>   Let me know what you think and any additional changes desired, tho we
> seem to have enabled all configuration options with this change. As next
> steps if you are comfortable with these changes, I would like to get a dev
> version with the patches applied to dark test using our production traffic.
>
>   If you prefer not cutting a dev version at this time, it would be great
> if the git repo were accessible, my git clone hangs without any response,
> looking thru the mailing list, this seems to have happened in the past and
> addressed at the time but might have regressed. Thank you
>
> - Bhaskar
>
>
> [1] http://tinyurl.com/l55zode
>

Reply via email to