report: edits of methodology mlrsearch section
[csit.git] / docs / report / introduction / methodology_data_plane_throughput / methodology_mlrsearch_tests.rst
1 .. _mlrsearch_algorithm:
2
3 MLRsearch Tests
4 ---------------
5
6 Overview
7 ~~~~~~~~
8
9 Multiple Loss Rate search (MLRsearch) tests use new search algorithm
10 implemented in FD.io CSIT project. MLRsearch discovers multiple packet
11 throughput rates in a single search, with each rate associated with a
12 different Packet Loss Ratio (PLR) criteria.
13
14 Two throughput measurements used in FD.io CSIT are Non-Drop Rate (NDR,
15 with zero packet loss, PLR=0) and Partial Drop Rate (PDR, with packet
16 loss rate not greater than the configured non-zero PLR).
17
18 MLRsearch discovers NDR and PDR in a single pass reducing required time
19 duration compared to separate binary searches for NDR and PDR. Overall
20 search time is reduced even further by relying on shorter trial
21 durations of intermediate steps, with only the final measurements
22 conducted at the specified final trial duration. This results in the
23 shorter overall execution time when compared to standard NDR/PDR binary
24 search, while guaranteeing similar results.
25
26 If needed, MLRsearch can be easily adopted to discover more throughput
27 rates with different pre-defined PLRs.
28
29 .. Note:: All throughput rates are *always* bi-directional
30    aggregates of two equal (symmetric) uni-directional packet rates
31    received and reported by an external traffic generator.
32
33 Search Implementation
34 ~~~~~~~~~~~~~~~~~~~~~
35
36 Detailed description of the MLRsearch algorithm is included in the IETF
37 draft `draft-vpolak-mkonstan-mlrsearch
38 <https://tools.ietf.org/html/draft-vpolak-mkonstan-bmwg-mlrsearch>`_
39 that is in the process of being standardized in the IETF Benchmarking
40 Methodology Working Group (BMWG).
41
42 MLRsearch is also available as a `PyPI (Python Package Index) library
43 <https://pypi.org/project/MLRsearch/>`_.
44
45 Implementation Deviations
46 ~~~~~~~~~~~~~~~~~~~~~~~~~
47
48 FD.io CSIT implementation of MLRsearch so far is fully based on the -01
49 version of the `draft-vpolak-mkonstan-mlrsearch-01
50 <https://tools.ietf.org/html/draft-vpolak-mkonstan-bmwg-mlrsearch-01>`_.
51
52 .. _binary search: https://en.wikipedia.org/wiki/Binary_search
53 .. _exponential search: https://en.wikipedia.org/wiki/Exponential_search
54 .. _estimation of standard deviation: https://en.wikipedia.org/wiki/Unbiased_estimation_of_standard_deviation
55 .. _simplified error propagation formula: https://en.wikipedia.org/wiki/Propagation_of_uncertainty#Simplification

©2016 FD.io a Linux Foundation Collaborative Project. All Rights Reserved.
Linux Foundation is a registered trademark of The Linux Foundation. Linux is a registered trademark of Linus Torvalds.
Please see our privacy policy and terms of use.