1 IPv4 Routed-Forwarding
\r
2 ======================
\r
4 Following sections provide a summary of VPP Phy-to-Phy IPv4 Routed-Forwarding
\r
5 performance illustrating NDR throughput (zero packet loss) and PDR throughput
\r
6 (<0.5% packet loss). Performance is reported for VPP running in multiple
\r
7 configurations of VPP worker thread(s), a.k.a. VPP data plane thread (s), and
\r
8 their physical CPU core(s) placement.
\r
10 Title of each graph is a regex (regular expression) matching all plotted
\r
11 test case throughput measurements.
\r
15 Data sources for reported test results: i) FD.io test executor jobs
\r
16 `csit-vpp-perf-1701-all
\r
17 <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1701-all/>`_ and
\r
18 `csit-vpp-perf-1701-long
\r
19 <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1701-long/>`_
\r
20 , ii) archived FD.io jobs test result output files
\r
21 `csit-vpp-perf-1701-all#job-number <https://nexus.fd.io/link>`_.
\r
26 VPP NDR Throughput - running in configuration of **one worker thread (1t) on
\r
27 one physical core (1c)** - is presented in the figure below.
\r
31 <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-1t1c-ethip4-ip4-ndrdisc.html"></iframe>
\r
33 *Figure 1. VPP 1thread 1core - NDR Throughput for Phy-to-Phy IPv4 Routed-Forwarding.*
\r
35 CSIT test cases used to generate results presented above can be found in CSIT
\r
36 git repository by filtering with specified regex as follows:
\r
38 .. code-block:: bash
\r
41 $ grep -E "64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc" *
\r
43 10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc
\r
44 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc
\r
45 10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrdisc
\r
46 10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-ndrdisc
\r
47 10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale200k-ndrdisc
\r
48 10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale20k-ndrdisc
\r
49 10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale2m-ndrdisc
\r
50 40ge2p1xl710-ethip4-ip4base-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-ndrdisc
\r
52 VPP NDR Throughput - running in configuration of **two worker threads (2t) on
\r
53 two physical cores (2c)** - is presented in the figure below.
\r
57 <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-2t2c-ethip4-ip4-ndrdisc.html"></iframe>
\r
59 *Figure 2. VPP 2threads 2cores - NDR Throughput for Phy-to-Phy IPv4
\r
62 CSIT test cases used to generate results presented above can be found in CSIT
\r
63 git repository by filtering with specified regex as follows:
\r
65 .. code-block:: bash
\r
68 $ grep -E "64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc" *
\r
70 10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-copwhtlistbase-ndrdisc
\r
71 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-iacldstbase-ndrdisc
\r
72 10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-ipolicemarkbase-ndrdisc
\r
73 10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-ndrdisc
\r
74 10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4scale200k-ndrdisc
\r
75 10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4scale20k-ndrdisc
\r
76 10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4scale2m-ndrdisc
\r
77 40ge2p1xl710-ethip4-ip4base-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-ndrdisc
\r
79 VPP NDR Throughput - running in configuration of **four worker threads (4t) on
\r
80 four physical cores (4c)** - is presented in the figure below.
\r
84 <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-4t4c-ethip4-ip4-ndrdisc.html"></iframe>
\r
86 *Figure 3. VPP 4threads 4cores - NDR Throughput for Phy-to-Phy IPv4
\r
89 CSIT test cases used to generate results presented above can be found in CSIT
\r
90 git repository by filtering with specified regex as follows:
\r
92 .. code-block:: bash
\r
95 $ grep -E "64B-4t4c-ethip4-ip4[a-z0-9]+-[a-z-]*ndrdisc" *
\r
97 10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-copwhtlistbase-ndrdisc
\r
98 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-iacldstbase-ndrdisc
\r
99 10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-ipolicemarkbase-ndrdisc
\r
100 10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-ndrdisc
\r
101 10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4scale200k-ndrdisc
\r
102 10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4scale20k-ndrdisc
\r
103 10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4scale2m-ndrdisc
\r
104 40ge2p1xl710-ethip4-ip4base-ndrdisc.robot:| tc13-64B-4t4c-ethip4-ip4base-ndrdisc
\r
109 VPP PDR Throughput - running in configuration of **one worker thread (1t) on one
\r
110 physical core (1c)** - is presented in the figure below. PDR at below 0.5%
\r
115 <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-1t1c-ethip4-ip4-pdrdisc.html"></iframe>
\r
117 *Figure 4. VPP 1thread 1core - PDR Throughput for Phy-to-Phy IPv4
\r
118 Routed-Forwarding.*
\r
120 CSIT test cases used to generate results presented above can be found in CSIT
\r
121 git repository by filtering with specified regex as follows:
\r
123 .. code-block:: bash
\r
126 $ grep -E "64B-1t1c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc" *
\r
128 10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc
\r
129 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
\r
130 10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc
\r
131 10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-pdrdisc
\r
132 10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale200k-pdrdisc
\r
133 10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale20k-pdrdisc
\r
134 10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale2m-pdrdisc
\r
136 VPP PDR Throughput - running in configuration of **two worker threads (2t) on
\r
137 two physical cores (2c)** - is presented in the figure below.
\r
141 <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-2t2c-ethip4-ip4-pdrdisc.html"></iframe>
\r
143 *Figure 5. VPP 2thread 2core - PDR Throughput for Phy-to-Phy IPv4
\r
144 Routed-Forwarding.*
\r
146 CSIT test cases used to generate results presented above can be found in CSIT
\r
147 git repository by filtering with specified regex as follows:
\r
149 .. code-block:: bash
\r
152 $ grep -E "64B-2t2c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc" *
\r
154 10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-copwhtlistbase-pdrdisc
\r
155 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-iacldstbase-pdrdisc
\r
156 10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-ipolicemarkbase-pdrdisc
\r
157 10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-pdrdisc
\r
158 10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4scale200k-pdrdisc
\r
159 10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4scale20k-pdrdisc
\r
160 10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4scale2m-pdrdisc
\r
162 VPP PDR Throughput - running in configuration of **four worker threads (4t) on
\r
163 four physical cores (4c)** - is presented in the figure below.
\r
167 <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-4t4c-ethip4-ip4-pdrdisc.html"></iframe>
\r
169 *Figure 6. VPP 4thread 4core - PDR Throughput for Phy-to-Phy IPv4
\r
170 Routed-Forwarding.*
\r
172 CSIT test cases used to generate results presented above can be found in CSIT
\r
173 git repository by filtering with specified regex as follows:
\r
175 .. code-block:: bash
\r
178 $ grep -E "64B-4t4c-ethip4-ip4[a-z0-9]+-[a-z-]*pdrdisc" *
\r
180 10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4base-copwhtlistbase-pdrdisc
\r
181 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4base-iacldstbase-pdrdisc
\r
182 10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4base-ipolicemarkbase-pdrdisc
\r
183 10ge2p1x520-ethip4-ip4base-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4base-pdrdisc
\r
184 10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4scale200k-pdrdisc
\r
185 10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4scale20k-pdrdisc
\r
186 10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot:| tc14-64B-4t4c-ethip4-ip4scale2m-pdrdisc
\r