2022-06.html.j2 (2839B)
1 {% extends "common/news.j2" %} {% block body_content %} 2 3 <h1>2022-6: "GNU Taler Scalability: Measuring and Improving the Performance of GNU Taler on Grid’5000"</h1> 4 5 <h2>Background</h2> 6 <p> 7 Anonymity loves company. Hence, to provide the best 8 possible anonymity to GNU Taler users, the scalability of 9 individual installations of a Taler payment service matters. 10 While our design scales nicely on paper, 11 <a href="https://www.ngi.eu/ngi-projects/fed4fire/">NGI Fed4Fire+</a> 12 enabled us to evaluate the transaction rates that could be achieved 13 with the actual implementation. Experiments were conducted by Marco Boss for 14 his Bachelor's thesis at the <a href="https://www.bfh.ch/">Bern 15 University of Applied Sciences</a> to assess bottlenecks and suggest 16 avenues for further improvement. 17 </p> 18 <h2>Introduction video</h2> 19 <p> 20 <video id="video" poster="/images/logo-2021.svg" autobuffer="" height="360" width="640" controls="controls"> 21 <source src="/videos/mboss2022video.mp4" type="video/mp4" \> 22 </video> 23 </p> 24 <h2>Abstract</h2> 25 <p> 26 This thesis is on the GNU Taler scalability experiments conducted 27 on <a href="https://www.grid5000.fr/">Grid’5000</a> in the first 28 half of 2022, which was preceded by preparations carried out in the second half of 2021 29 supported by the Next Generation Internet initiative’s 30 <a href="https://www.ngi.eu/ngi-projects/fed4fire/">NGI Fed4Fire+</a> program. 31 <br> 32 The primary goal of this study was to evaluate the scalability of GNU Taler in a real-world 33 scenario. That is, moving away from the loopback system to a distributed network and identifying 34 improvement opportunities therein to analyze and improve performance. While the 35 basic framework was already known from the previous study, this work focuses on extending 36 the framework and making further improvements to GNU Taler. This includes, among 37 other things, the horizontal distribution of the PostgreSQL database. 38 <br> 39 We identified and fixed several bottlenecks in the GNU Taler software. We parallelized the 40 execution of the cryptographic frontend, leaving the PostgreSQL database as the natural bottleneck. 41 Here, we optimized queries and modified the schema to enable table partitioning. 42 The scalability demonstrated in our experiments shows that Taler is very capable of processing 43 enough transactions per second to be considered an acceptable payment system. 44 Throughout this work, we were able to increase the performance of Taler by a factor of 95, 45 from about 300 to 28.5k transactions per second, showing that Central Bank Digital Currencies 46 based on Taler would require only a few exchanges per continent. 47 </p> 48 <h2>Download links</h2> 49 <ul> 50 <li><a href="/presentations/boss2022poster.pdf">Poster PDF (English)</a></li> 51 <li><a href="/papers/boss2022thesis.pdf">Thesis PDF (English)</a></li> 52 </ul> 53 54 {% endblock body_content %}