summaryrefslogtreecommitdiff
path: root/template/news/2022-06.html.j2
blob: 30353cb15993e1cc652a46a2aa8455755ded9757 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{% extends "common/news.j2" %} {% block body_content %}

<h1>2022-6: &quot;GNU Taler Scalability: Measuring and Improving the Performance of GNU Taler on Grid’5000&quot;</h1>

<h2>Background</h2>
<p>
Anonymity loves company. Hence, to provide the best
possible anonymity to GNU Taler users, the scalability of
individual installations of a Taler payment service matters.
While our design scales nicely on paper,
<a href="https://www.ngi.eu/ngi-projects/fed4fire/">NGI Fed4Fire+</a>
enabled us to evaluate the transaction rates that could be achieved
with the actual implementation.  Experiments were conducted by Marco Boss for
his Bachelor's thesis at the <a href="https://www.bfh.ch/">Bern
University of Applied Sciences</a> to assess bottlenecks and suggest
avenues for further improvement.
</p>

<h2>Abstract</h2>
<p>
This thesis is on the GNU Taler scalability experiments conducted
on <a href="https://www.grid5000.fr/">Grid’5000</a> in the first
half of 2022, which was preceded by preparations carried out in the second half of 2021
supported by the Next Generation Internet initiative’s
<a href="https://www.ngi.eu/ngi-projects/fed4fire/">NGI Fed4Fire+</a> program.
<br>
The primary goal of this study was to evaluate the scalability of GNU Taler in a real-world
scenario. That is, moving away from the loopback system to a distributed network and iden-
tifying improvement opportunities therein to analyze and improve performance. While the
basic framework was already known from the previous study, this work focuses on extend-
ing the framework and making further improvements to GNU Taler. This includes, among
other things, the horizontal distribution of the PostgreSQL database.
<br>
We identified and fixed several bottlenecks in the GNU Taler software. We parallelized the
execution of the cryptographic frontend, leaving the PostgreSQL database as the natural bot-
tleneck. Here, we optimized queries and modified the schema to enable table partitioning.
The scalability demonstrated in our experiments shows that Taler is very capable of pro-
cessing enough transactions per second to be considered an acceptable payment system.
Throughout this work, we were able to increase the performance of Taler by a factor of 95,
from about 300 to 28.5k transactions per second, showing that Central Bank Digital Curren-
cies based on Taler would require only a few exchanges per continent.
</p>
<h4>Download links</h4>
<ul>
 <li><a href="/papers/boss2022thesis.pdf">PDF (English)</a></li>
</ul>

{% endblock body_content %}