c413adb51e55d00795d2c27424cde36ee525cace
[csit.git] / docs / report / vpp_performance_tests / packet_throughput_graphs / ipv4.rst
1 IPv4 Routed-Forwarding
2 ======================
3
4 Following sections provide a summary of VPP Phy-to-Phy IPv4 Routed-Forwarding
5 performance illustrating NDR throughput (zero packet loss) and PDR throughput
6 (<0.5% packet loss). Performance is reported for VPP running in multiple
7 configurations of VPP worker thread(s), a.k.a. VPP data plane thread (s), and
8 their physical CPU core(s) placement.
9
10 Title of each graph is a regex (regular expression) matching all plotted
11 test case throughput measurements.
12
13 .. note::
14
15     Data sources for reported test results: i) FD.io test executor jobs
16     `csit-vpp-perf-1701-all
17     <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1701-all/>`_ and
18     `csit-vpp-perf-1701-long
19     <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1701-long/>`_
20     , ii) archived FD.io jobs test result `output files
21     <../../_static/archive/>`_.
22
23 NDR Throughput
24 ~~~~~~~~~~~~~~
25
26 VPP NDR Throughput - running in configuration of **one worker thread (1t) on
27 one physical core (1c)** - is presented in the figure below.
28
29 .. raw:: html
30
31     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-1t1c-ethip4-ip4-ndrdisc.html"></iframe>
32
33 *Figure 1. VPP 1thread 1core - NDR Throughput for Phy-to-Phy IPv4 Routed-Forwarding.*
34
35 CSIT test cases used to generate results presented above can be found in CSIT
36 git repository by filtering with specified regex as follows:
37
38 .. code-block:: bash
39
40     $ csit/tests/perf
41     $ grep -E "64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc" *
42
43     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc
44     10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc
45     10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrdisc
46     10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-ndrdisc
47     10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale200k-ndrdisc
48     10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale20k-ndrdisc
49     10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale2m-ndrdisc
50     40ge2p1xl710-ethip4-ip4base-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-ndrdisc
51
52 VPP NDR Throughput - running in configuration of **two worker threads (2t) on
53 two physical cores (2c)** - is presented in the figure below.
54
55 .. raw:: html
56
57     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-2t2c-ethip4-ip4-ndrdisc.html"></iframe>
58
59 *Figure 2. VPP 2threads 2cores - NDR Throughput for Phy-to-Phy IPv4
60 Routed-Forwarding.*
61
62 CSIT test cases used to generate results presented above can be found in CSIT
63 git repository by filtering with specified regex as follows:
64
65 .. code-block:: bash
66
67     $ csit/tests/perf
68     $ grep -E "64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc" *
69
70     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-copwhtlistbase-ndrdisc
71     10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-iacldstbase-ndrdisc
72     10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-ipolicemarkbase-ndrdisc
73     10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-ndrdisc
74     10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4scale200k-ndrdisc
75     10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4scale20k-ndrdisc
76     10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4scale2m-ndrdisc
77     40ge2p1xl710-ethip4-ip4base-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-ndrdisc
78
79 VPP NDR Throughput - running in configuration of **four worker threads (4t) on
80 four physical cores (4c)** - is presented in the figure below.
81
82 .. raw:: html
83
84     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-4t4c-ethip4-ip4-ndrdisc.html"></iframe>
85
86 *Figure 3. VPP 4threads 4cores - NDR Throughput for Phy-to-Phy IPv4
87 Routed-Forwarding.*
88
89 CSIT test cases used to generate results presented above can be found in CSIT
90 git repository by filtering with specified regex as follows:
91
92 .. code-block:: bash
93
94     $ csit/tests/perf
95     $ grep -E "64B-4t4c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc" *
96
97     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-copwhtlistbase-ndrdisc
98     10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-iacldstbase-ndrdisc
99     10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-ipolicemarkbase-ndrdisc
100     10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-ndrdisc
101     10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4scale200k-ndrdisc
102     10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4scale20k-ndrdisc
103     10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4scale2m-ndrdisc
104     40ge2p1xl710-ethip4-ip4base-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-ndrdisc
105
106 PDR Throughput
107 ~~~~~~~~~~~~~~
108
109 VPP PDR Throughput - running in configuration of **one worker thread (1t) on one
110 physical core (1c)** - is presented in the figure below. PDR at below 0.5%
111 packet loss ratio.
112
113 .. raw:: html
114
115     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-1t1c-ethip4-ip4-pdrdisc.html"></iframe>
116
117 *Figure 4. VPP 1thread 1core - PDR Throughput for Phy-to-Phy IPv4
118 Routed-Forwarding.*
119
120 CSIT test cases used to generate results presented above can be found in CSIT
121 git repository by filtering with specified regex as follows:
122
123 .. code-block:: bash
124
125     $ csit/tests/perf
126     $ grep -E "64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc" *
127
128     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc
129     10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
130     10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc
131     10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-pdrdisc
132     10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale200k-pdrdisc
133     10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale20k-pdrdisc
134     10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale2m-pdrdisc
135
136 VPP PDR Throughput - running in configuration of **two worker threads (2t) on
137 two physical cores (2c)** - is presented in the figure below.
138
139 .. raw:: html
140
141     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-2t2c-ethip4-ip4-pdrdisc.html"></iframe>
142
143 *Figure 5. VPP 2thread 2core - PDR Throughput for Phy-to-Phy IPv4
144 Routed-Forwarding.*
145
146 CSIT test cases used to generate results presented above can be found in CSIT
147 git repository by filtering with specified regex as follows:
148
149 .. code-block:: bash
150
151     $ csit/tests/perf
152     $ grep -E "64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc" *
153
154     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-copwhtlistbase-pdrdisc
155     10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-iacldstbase-pdrdisc
156     10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-ipolicemarkbase-pdrdisc
157     10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-pdrdisc
158     10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4scale200k-pdrdisc
159     10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4scale20k-pdrdisc
160     10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4scale2m-pdrdisc
161
162 VPP PDR Throughput - running in configuration of **four worker threads (4t) on
163 four physical cores (4c)** - is presented in the figure below.
164
165 .. raw:: html
166
167     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-4t4c-ethip4-ip4-pdrdisc.html"></iframe>
168
169 *Figure 6. VPP 4thread 4core - PDR Throughput for Phy-to-Phy IPv4
170 Routed-Forwarding.*
171
172 CSIT test cases used to generate results presented above can be found in CSIT
173 git repository by filtering with specified regex as follows:
174
175 .. code-block:: bash
176
177     $ csit/tests/perf
178     $ grep -E "64B-4t4c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc" *
179
180     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4base-copwhtlistbase-pdrdisc
181     10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4base-iacldstbase-pdrdisc
182     10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4base-ipolicemarkbase-pdrdisc
183     10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4base-pdrdisc
184     10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4scale200k-pdrdisc
185     10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4scale20k-pdrdisc
186     10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4scale2m-pdrdisc
187