gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[www] branch master updated: temporarily change logo to gnu40


From: gnunet
Subject: [www] branch master updated: temporarily change logo to gnu40
Date: Fri, 02 Jun 2023 19:24:23 +0200

This is an automated email from the git hooks/post-receive script.

martin-schanzenbach pushed a commit to branch master
in repository www.

The following commit(s) were added to refs/heads/master by this push:
     new 98ef6fff temporarily change logo to gnu40
98ef6fff is described below

commit 98ef6ffff59861f74cbced391ec8028da27029d6
Author: Martin Schanzenbach <schanzen@gnunet.org>
AuthorDate: Fri Jun 2 19:24:20 2023 +0200

    temporarily change logo to gnu40
---
 build-system/taler-build-scripts       |   2 +-
 locale/ar/LC_MESSAGES/messages.po      | 455 +++++++++++++++++++++++--------
 locale/ca/LC_MESSAGES/messages.mo      | Bin 433 -> 433 bytes
 locale/ca/LC_MESSAGES/messages.po      | 453 +++++++++++++++++++++++--------
 locale/de/LC_MESSAGES/messages.mo      | Bin 174959 -> 175009 bytes
 locale/de/LC_MESSAGES/messages.po      | 455 +++++++++++++++++++++++--------
 locale/en/LC_MESSAGES/messages.mo      | Bin 445 -> 445 bytes
 locale/eo/LC_MESSAGES/messages.mo      | Bin 433 -> 433 bytes
 locale/eo/LC_MESSAGES/messages.po      | 453 +++++++++++++++++++++++--------
 locale/es/LC_MESSAGES/messages.mo      | Bin 112233 -> 112347 bytes
 locale/es/LC_MESSAGES/messages.po      | 455 +++++++++++++++++++++++--------
 locale/fr/LC_MESSAGES/messages.mo      | Bin 42067 -> 42109 bytes
 locale/fr/LC_MESSAGES/messages.po      | 455 +++++++++++++++++++++++--------
 locale/hi/LC_MESSAGES/messages.po      | 455 +++++++++++++++++++++++--------
 locale/it/LC_MESSAGES/messages.mo      | Bin 124791 -> 124840 bytes
 locale/it/LC_MESSAGES/messages.po      | 455 +++++++++++++++++++++++--------
 locale/ja/LC_MESSAGES/messages.po      | 455 +++++++++++++++++++++++--------
 locale/ko/LC_MESSAGES/messages.po      | 455 +++++++++++++++++++++++--------
 locale/messages.pot                    | 475 ++++++++++++++++++++++++---------
 locale/pt/LC_MESSAGES/messages.po      | 453 +++++++++++++++++++++++--------
 locale/zh_Hant/LC_MESSAGES/messages.po | 455 +++++++++++++++++++++++--------
 template/index.html.j2                 |   3 +-
 22 files changed, 4469 insertions(+), 1465 deletions(-)

diff --git a/build-system/taler-build-scripts b/build-system/taler-build-scripts
index 5fb2f811..23538677 160000
--- a/build-system/taler-build-scripts
+++ b/build-system/taler-build-scripts
@@ -1 +1 @@
-Subproject commit 5fb2f811026bbe7152ed59b712248048853eb0f6
+Subproject commit 23538677f6c6be2a62f38dc6137ecdd1c76b7b15
diff --git a/locale/ar/LC_MESSAGES/messages.po 
b/locale/ar/LC_MESSAGES/messages.po
index 734b66c4..7444b3f2 100644
--- a/locale/ar/LC_MESSAGES/messages.po
+++ b/locale/ar/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2021-05-21 14:59+0000\n"
 "Last-Translator: Shorouk Hassouna <shoroukhassuna@gmail.com>\n"
 "Language-Team: Arabic <http://weblate.taler.net/projects/gnunet/website/ar/";
@@ -81,7 +81,7 @@ msgstr "عن"
 msgid "News"
 msgstr "الاخبار"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "التطبيقات"
 
@@ -89,7 +89,7 @@ msgstr "التطبيقات"
 msgid "Community"
 msgstr "المجتمع"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "اشترك"
 
@@ -2456,19 +2456,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -2491,11 +2491,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -2504,11 +2504,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -2517,11 +2517,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -2532,11 +2532,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -2544,11 +2544,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -2560,21 +2560,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -2584,11 +2584,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -2599,11 +2599,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -2611,13 +2611,13 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 #, fuzzy
 #| msgid "read more"
 msgid "Learn more"
 msgstr "اقرأ المزيد"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -2749,6 +2749,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 msgid "Configuration"
 msgstr ""
 
@@ -2952,87 +2953,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "GSoC Projects"
+msgid "Past Project"
+msgstr "مشروعات GSoC"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3047,7 +3001,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Contact Information"
@@ -3056,11 +3010,12 @@ msgstr "الدمج المستمر"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Documentation"
 msgid "Project motivation"
@@ -3071,30 +3026,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3303,13 +3259,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -3510,6 +3467,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -3638,29 +3596,105 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 msgid "Performance Measurement"
 msgstr ""
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "التوثيق"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -3790,6 +3824,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "ارشيف الاخبار:"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/ca/LC_MESSAGES/messages.mo 
b/locale/ca/LC_MESSAGES/messages.mo
index c282c775..d1125001 100644
Binary files a/locale/ca/LC_MESSAGES/messages.mo and 
b/locale/ca/LC_MESSAGES/messages.mo differ
diff --git a/locale/ca/LC_MESSAGES/messages.po 
b/locale/ca/LC_MESSAGES/messages.po
index 1f613aa7..4453fbf1 100644
--- a/locale/ca/LC_MESSAGES/messages.po
+++ b/locale/ca/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Automatically generated\n"
 "Language-Team: none\n"
@@ -75,7 +75,7 @@ msgstr ""
 msgid "News"
 msgstr ""
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr ""
 msgid "Community"
 msgstr ""
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr ""
 
@@ -2425,19 +2425,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -2460,11 +2460,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -2473,11 +2473,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -2486,11 +2486,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -2501,11 +2501,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -2513,11 +2513,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -2529,21 +2529,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -2553,11 +2553,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -2568,11 +2568,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -2580,11 +2580,11 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 msgid "Learn more"
 msgstr ""
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -2712,6 +2712,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 msgid "Configuration"
 msgstr ""
 
@@ -2913,87 +2914,38 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+msgid "Past Project"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3008,18 +2960,19 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 msgid "Contact Information"
 msgstr ""
 
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 msgid "Project motivation"
 msgstr ""
 
@@ -3028,30 +2981,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3260,13 +3214,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -3467,6 +3422,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -3595,27 +3551,103 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 msgid "Performance Measurement"
 msgstr ""
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 msgid "API Documentation"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -3745,6 +3777,203 @@ msgstr ""
 msgid "News archives:"
 msgstr ""
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/de/LC_MESSAGES/messages.mo 
b/locale/de/LC_MESSAGES/messages.mo
index 7750575b..e99d4d7b 100644
Binary files a/locale/de/LC_MESSAGES/messages.mo and 
b/locale/de/LC_MESSAGES/messages.mo differ
diff --git a/locale/de/LC_MESSAGES/messages.po 
b/locale/de/LC_MESSAGES/messages.po
index 358ecfe6..98894cc9 100644
--- a/locale/de/LC_MESSAGES/messages.po
+++ b/locale/de/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2021-08-30 19:06+0000\n"
 "Last-Translator: Stefan <eintritt@hotmail.com>\n"
 "Language-Team: German <http://weblate.taler.net/projects/gnunet/website/de/";
@@ -78,7 +78,7 @@ msgstr "Über GNUnet"
 msgid "News"
 msgstr "Neues"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "Anwendungen"
 
@@ -86,7 +86,7 @@ msgstr "Anwendungen"
 msgid "Community"
 msgstr "Gemeinschaft"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "Mach mit"
 
@@ -3569,22 +3569,22 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr "Das Internet von morgen braucht schon heute GNUnet"
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 #, fuzzy
 msgid "Latest news"
 msgstr "Aktuelle Nachrichten"
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 #, fuzzy
 msgid "Older news entries"
 msgstr "Ältere Nachrichteneinträge"
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 #, fuzzy
 msgid "The Internet is broken"
 msgstr "Das Internet ist kaputt"
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -3619,12 +3619,12 @@ msgstr ""
 "oder die Wahl vertrauenswürdiger Gegenüber ist nicht trivial und manchmal "
 "unmöglich."
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 #, fuzzy
 msgid "GNUnet helps building a new Internet"
 msgstr "GNUnet hilft beim Aufbau eines neuen Internets"
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -3638,12 +3638,12 @@ msgstr ""
 "ist es unser Ziel, den <a class=\"link\" href=\"https://secushare.org/broken-";
 "internet\">alten unsicheren Internetprotokoll-Stack</a> zu ersetzen."
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 #, fuzzy
 msgid "Metadata is exposed"
 msgstr "Metadaten werden angezeigt"
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -3658,12 +3658,12 @@ msgstr ""
 "Sendern und Empfängern, sowie Zeitpunkte, Häufigkeit und das Volumen von "
 "Kommunikationen sind stets offen verfügbar.<br>"
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 #, fuzzy
 msgid "GNUnet provides privacy-by design"
 msgstr "GNUnet bietet Privacy-by-Design"
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -3682,12 +3682,12 @@ msgstr ""
 "by design\". Das bietet Verbesserung bei Adressierung, Routen, Namensgebung "
 "und Vertreibung von Inhalten auf technisch robuste Weise. -->"
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 #, fuzzy
 msgid "Freedoms are not respected"
 msgstr "Freiheiten werden nicht respektiert"
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 #, fuzzy
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
@@ -3700,11 +3700,11 @@ msgstr ""
 "class=\"link\" href=\"https://www.gnu.org/philosophy/free-sw.";
 "html\">wesentlichen Freiheiten</a> in unterschiedlichem Maße ein."
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr "GNUnet steht für eine freie und offene Gesellschaft"
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -3725,21 +3725,21 @@ msgstr ""
 "zum Code\"), Informationen zu verteilen (\"kopieren\") sowie die Freiheit "
 "zum Einsetzen neuer Applikationen (\"modifizieren\")."
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -3749,11 +3749,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr "Dezentralisierung ist der Schlüssel, aber schwierig"
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -3773,11 +3773,11 @@ msgstr ""
 "<!-- TODO: rework this sentence. --> Dieses treibt den Aufwand und erhöht "
 "die Anzahl möglicher Fehlerquellen."
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr "GNUnet ist ein Rahmen"
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -3789,11 +3789,11 @@ msgstr ""
 "fortgeschrittenem Routing sowie Ressourcenerkennung und Namensgebung. Unsere "
 "Arbeit gründet sich auf fast zwei Jahrzehnte Forschungsarbeit."
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 msgid "Learn more"
 msgstr "Mehr erfahren"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr "Erste Schritte"
 
@@ -3926,6 +3926,7 @@ msgstr "Tutorial: GNUnet auf OpenWrt"
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 msgid "Configuration"
 msgstr "Konfiguration"
 
@@ -4213,87 +4214,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "Past projects"
+msgid "Past Project"
+msgstr "Historische Projekte"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -4308,7 +4262,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Contact information"
 msgid "Contact Information"
@@ -4317,11 +4271,12 @@ msgstr "Kontaktinformation"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Motivation"
 msgid "Project motivation"
@@ -4334,30 +4289,31 @@ msgid "New Test Framework"
 msgstr "GNUnet ist ein Rahmen"
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -4568,13 +4524,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -4775,6 +4732,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -4905,7 +4863,7 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 #, fuzzy
 #| msgid "Performance Analysis"
 msgid "Performance Measurement"
@@ -4913,23 +4871,99 @@ msgstr "Leistungsanalyse"
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "Dokumentation"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -5061,6 +5095,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "Nachrichten-Archive"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 #, fuzzy
 msgid "Frequently asked questions"
diff --git a/locale/en/LC_MESSAGES/messages.mo 
b/locale/en/LC_MESSAGES/messages.mo
index d94d9488..2d27c36c 100644
Binary files a/locale/en/LC_MESSAGES/messages.mo and 
b/locale/en/LC_MESSAGES/messages.mo differ
diff --git a/locale/eo/LC_MESSAGES/messages.mo 
b/locale/eo/LC_MESSAGES/messages.mo
index 93324403..7fd7ef40 100644
Binary files a/locale/eo/LC_MESSAGES/messages.mo and 
b/locale/eo/LC_MESSAGES/messages.mo differ
diff --git a/locale/eo/LC_MESSAGES/messages.po 
b/locale/eo/LC_MESSAGES/messages.po
index 9ff4c32b..48793cd4 100644
--- a/locale/eo/LC_MESSAGES/messages.po
+++ b/locale/eo/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Automatically generated\n"
 "Language-Team: none\n"
@@ -75,7 +75,7 @@ msgstr ""
 msgid "News"
 msgstr ""
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr ""
 msgid "Community"
 msgstr ""
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr ""
 
@@ -2425,19 +2425,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -2460,11 +2460,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -2473,11 +2473,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -2486,11 +2486,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -2501,11 +2501,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -2513,11 +2513,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -2529,21 +2529,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -2553,11 +2553,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -2568,11 +2568,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -2580,11 +2580,11 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 msgid "Learn more"
 msgstr ""
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -2712,6 +2712,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 msgid "Configuration"
 msgstr ""
 
@@ -2913,87 +2914,38 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+msgid "Past Project"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3008,18 +2960,19 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 msgid "Contact Information"
 msgstr ""
 
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 msgid "Project motivation"
 msgstr ""
 
@@ -3028,30 +2981,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3260,13 +3214,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -3467,6 +3422,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -3595,27 +3551,103 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 msgid "Performance Measurement"
 msgstr ""
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 msgid "API Documentation"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -3745,6 +3777,203 @@ msgstr ""
 msgid "News archives:"
 msgstr ""
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/es/LC_MESSAGES/messages.mo 
b/locale/es/LC_MESSAGES/messages.mo
index 1cf1122c..fa4524df 100644
Binary files a/locale/es/LC_MESSAGES/messages.mo and 
b/locale/es/LC_MESSAGES/messages.mo differ
diff --git a/locale/es/LC_MESSAGES/messages.po 
b/locale/es/LC_MESSAGES/messages.po
index ce12353d..100d0935 100644
--- a/locale/es/LC_MESSAGES/messages.po
+++ b/locale/es/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2023-04-24 21:43+0000\n"
 "Last-Translator: José Huamán <princetomato@firemail.cc>\n"
 "Language-Team: Spanish <https://weblate.taler.net/projects/gnunet/website/es/";
@@ -78,7 +78,7 @@ msgstr "Sobre"
 msgid "News"
 msgstr "Nuevo"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "Aplicaciones"
 
@@ -86,7 +86,7 @@ msgstr "Aplicaciones"
 msgid "Community"
 msgstr "Comunidad"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "Participa"
 
@@ -3281,19 +3281,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -3316,11 +3316,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -3329,11 +3329,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -3342,11 +3342,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -3357,11 +3357,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -3369,11 +3369,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -3385,21 +3385,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -3409,11 +3409,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -3424,11 +3424,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -3436,13 +3436,13 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 #, fuzzy
 #| msgid "About GNUnet"
 msgid "Learn more"
 msgstr "Sobre GNUnet"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -3582,6 +3582,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Configuration"
@@ -3794,87 +3795,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "Past projects"
+msgid "Past Project"
+msgstr "Proyectos pasados"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3889,7 +3843,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Contact information"
 msgid "Contact Information"
@@ -3898,11 +3852,12 @@ msgstr "Información de contacto"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Documentation"
 msgid "Project motivation"
@@ -3913,30 +3868,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -4145,13 +4101,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -4352,6 +4309,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -4480,7 +4438,7 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 #, fuzzy
 #| msgid "Performance Analysis"
 msgid "Performance Measurement"
@@ -4488,23 +4446,99 @@ msgstr "Análisis de rendimiento"
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "Documentación"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -4636,6 +4670,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "Archivo IRC:"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/fr/LC_MESSAGES/messages.mo 
b/locale/fr/LC_MESSAGES/messages.mo
index 0dbdbbb5..f626005a 100644
Binary files a/locale/fr/LC_MESSAGES/messages.mo and 
b/locale/fr/LC_MESSAGES/messages.mo differ
diff --git a/locale/fr/LC_MESSAGES/messages.po 
b/locale/fr/LC_MESSAGES/messages.po
index 8902765a..50dfb7d6 100644
--- a/locale/fr/LC_MESSAGES/messages.po
+++ b/locale/fr/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2021-09-28 14:59+0000\n"
 "Last-Translator: Axelle Dimpre <axelle.dimpre@gmail.com>\n"
 "Language-Team: French <http://weblate.taler.net/projects/gnunet/website/fr/";
@@ -78,7 +78,7 @@ msgstr "À propos"
 msgid "News"
 msgstr "Actualités"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "Applications"
 
@@ -86,7 +86,7 @@ msgstr "Applications"
 msgid "Community"
 msgstr "Communauté"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "Participer"
 
@@ -2711,19 +2711,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -2746,11 +2746,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -2759,11 +2759,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -2772,11 +2772,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -2787,11 +2787,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -2799,11 +2799,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -2815,21 +2815,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -2839,11 +2839,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -2854,11 +2854,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -2866,13 +2866,13 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 #, fuzzy
 #| msgid "read more"
 msgid "Learn more"
 msgstr "En savoir plus"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -3008,6 +3008,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Configuration"
@@ -3218,87 +3219,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "GSoC Projects"
+msgid "Past Project"
+msgstr "Projets GSoC"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3313,7 +3267,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Contact information"
 msgid "Contact Information"
@@ -3322,11 +3276,12 @@ msgstr "Nous contacter"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Documentation"
 msgid "Project motivation"
@@ -3337,30 +3292,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3569,13 +3525,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -3776,6 +3733,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -3904,7 +3862,7 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 #, fuzzy
 #| msgid "Performance Analysis"
 msgid "Performance Measurement"
@@ -3912,23 +3870,99 @@ msgstr "Analyse de performance"
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "Documentation"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -4060,6 +4094,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "Archives des actualités :"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr "Foire À Questions"
diff --git a/locale/hi/LC_MESSAGES/messages.po 
b/locale/hi/LC_MESSAGES/messages.po
index 39b9331b..a3855084 100644
--- a/locale/hi/LC_MESSAGES/messages.po
+++ b/locale/hi/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2021-03-09 18:35+0000\n"
 "Last-Translator: Jigisha Sharma <jigishas38@gmail.com>\n"
 "Language-Team: Hindi <http://weblate.taler.net/projects/gnunet/website/hi/>\n"
@@ -77,7 +77,7 @@ msgstr "जानकारी"
 msgid "News"
 msgstr "समाचार"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "प्रार्थनापत्र"
 
@@ -85,7 +85,7 @@ msgstr "प्रार्थनापत्र"
 msgid "Community"
 msgstr "समुदाय"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "संलग्न"
 
@@ -2447,19 +2447,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -2482,11 +2482,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -2495,11 +2495,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -2508,11 +2508,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -2523,11 +2523,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -2535,11 +2535,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -2551,21 +2551,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -2575,11 +2575,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -2590,11 +2590,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -2602,13 +2602,13 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 #, fuzzy
 #| msgid "read more"
 msgid "Learn more"
 msgstr "और पड़े"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -2744,6 +2744,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Configuration"
@@ -2949,87 +2950,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "GSoC Projects"
+msgid "Past Project"
+msgstr "ग स ओ क परियोजनाओं"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3044,7 +2998,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Contact Information"
@@ -3053,11 +3007,12 @@ msgstr "लगातार एकीकरण"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Documentation"
 msgid "Project motivation"
@@ -3068,30 +3023,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3300,13 +3256,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -3507,6 +3464,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -3635,29 +3593,105 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 msgid "Performance Measurement"
 msgstr ""
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "प्रलेखन"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -3789,6 +3823,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "समाचार पुरालेख:"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/it/LC_MESSAGES/messages.mo 
b/locale/it/LC_MESSAGES/messages.mo
index 342f39f4..36333e0a 100644
Binary files a/locale/it/LC_MESSAGES/messages.mo and 
b/locale/it/LC_MESSAGES/messages.mo differ
diff --git a/locale/it/LC_MESSAGES/messages.po 
b/locale/it/LC_MESSAGES/messages.po
index c3ed8bd2..12f46998 100644
--- a/locale/it/LC_MESSAGES/messages.po
+++ b/locale/it/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2022-03-27 11:53+0000\n"
 "Last-Translator: Roberto Pellegrino <speekix@gmail.com>\n"
 "Language-Team: Italian <http://weblate.taler.net/projects/gnunet/website/it/";
@@ -78,7 +78,7 @@ msgstr "Informazioni"
 msgid "News"
 msgstr "Notizie"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "Applicazioni"
 
@@ -86,7 +86,7 @@ msgstr "Applicazioni"
 msgid "Community"
 msgstr "Community"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "Partecipa"
 
@@ -3303,19 +3303,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr "Internet di domani ha bisogno di GNUnet oggi"
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr "Ultime notizie"
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr "Vecchie notizie"
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr "Internet &egrave; rotto"
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -3338,11 +3338,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -3357,11 +3357,11 @@ msgstr ""
 "secushare.org/broken-internet\">vecchio e insicuro stack di protocolli di "
 "Internet</a> ."
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -3370,11 +3370,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -3385,11 +3385,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -3397,11 +3397,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -3413,21 +3413,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -3437,11 +3437,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -3452,11 +3452,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -3464,13 +3464,13 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 #, fuzzy
 #| msgid "read more"
 msgid "Learn more"
 msgstr "Maggiori informazioni"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -3608,6 +3608,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Configuration"
@@ -3817,87 +3818,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "Past projects"
+msgid "Past Project"
+msgstr "Progetti precedenti"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3912,7 +3866,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Contact information"
 msgid "Contact Information"
@@ -3921,11 +3875,12 @@ msgstr "Contatti"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Motivation"
 msgid "Project motivation"
@@ -3936,30 +3891,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -4168,13 +4124,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -4375,6 +4332,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -4503,7 +4461,7 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 #, fuzzy
 #| msgid "Performance Analysis"
 msgid "Performance Measurement"
@@ -4511,23 +4469,99 @@ msgstr "Analisi delle prestazioni"
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "Documentazione"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -4659,6 +4693,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "Archivi delle notizie:"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/ja/LC_MESSAGES/messages.po 
b/locale/ja/LC_MESSAGES/messages.po
index 4b66ba39..af77d500 100644
--- a/locale/ja/LC_MESSAGES/messages.po
+++ b/locale/ja/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2021-04-15 10:31+0000\n"
 "Last-Translator: Kanoko Kondo <yves0625@gmail.com>\n"
 "Language-Team: Japanese <http://weblate.taler.net/projects/gnunet/website/ja/";
@@ -78,7 +78,7 @@ msgstr "概要"
 msgid "News"
 msgstr "更新情報"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "アプリケーション"
 
@@ -86,7 +86,7 @@ msgstr "アプリケーション"
 msgid "Community"
 msgstr "コミュニティ"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "参加する"
 
@@ -2945,19 +2945,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -2980,11 +2980,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -2993,11 +2993,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -3006,11 +3006,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -3021,11 +3021,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -3033,11 +3033,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -3049,21 +3049,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -3073,11 +3073,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -3088,11 +3088,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -3100,13 +3100,13 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 #, fuzzy
 #| msgid "read more"
 msgid "Learn more"
 msgstr "詳細"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -3244,6 +3244,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Configuration"
@@ -3453,87 +3454,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "GSoC Projects"
+msgid "Past Project"
+msgstr "GSoC プロジェクト"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3548,7 +3502,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Contact information"
 msgid "Contact Information"
@@ -3557,11 +3511,12 @@ msgstr "お問い合わせ"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Documentation"
 msgid "Project motivation"
@@ -3572,30 +3527,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3804,13 +3760,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -4011,6 +3968,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -4139,7 +4097,7 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 #, fuzzy
 #| msgid "Performance Analysis"
 msgid "Performance Measurement"
@@ -4147,23 +4105,99 @@ msgstr "パフォーマンス分析"
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "資料"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -4295,6 +4329,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "アーカイブ"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/ko/LC_MESSAGES/messages.po 
b/locale/ko/LC_MESSAGES/messages.po
index 03b915e7..68efed4d 100644
--- a/locale/ko/LC_MESSAGES/messages.po
+++ b/locale/ko/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2021-04-11 02:59+0000\n"
 "Last-Translator: Chaewon Park <wonnie0624@gmail.com>\n"
 "Language-Team: Korean <http://weblate.taler.net/projects/gnunet/website/ko/";
@@ -80,7 +80,7 @@ msgstr "관하여"
 msgid "News"
 msgstr "소식"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "어플리케이션"
 
@@ -88,7 +88,7 @@ msgstr "어플리케이션"
 msgid "Community"
 msgstr "공동체"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "참여"
 
@@ -2459,19 +2459,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -2494,11 +2494,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -2507,11 +2507,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -2520,11 +2520,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -2535,11 +2535,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -2547,11 +2547,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -2563,21 +2563,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -2587,11 +2587,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -2602,11 +2602,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -2614,13 +2614,13 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 #, fuzzy
 #| msgid "read more"
 msgid "Learn more"
 msgstr "더 읽기"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -2756,6 +2756,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Configuration"
@@ -2961,87 +2962,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "GSoC Projects"
+msgid "Past Project"
+msgstr "GSoC 프로젝트"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3056,7 +3010,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Continuous Integration"
 msgid "Contact Information"
@@ -3065,11 +3019,12 @@ msgstr "지속적 통합"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Documentation"
 msgid "Project motivation"
@@ -3080,30 +3035,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3312,13 +3268,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -3519,6 +3476,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -3647,29 +3605,105 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 msgid "Performance Measurement"
 msgstr ""
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "문서"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -3801,6 +3835,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "뉴스 아카이브:"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/messages.pot b/locale/messages.pot
index dc6e7be8..df5b0c12 100644
--- a/locale/messages.pot
+++ b/locale/messages.pot
@@ -8,14 +8,14 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.10.3\n"
+"Generated-By: Babel 2.11.0\n"
 
 #: common/base.j2:5 common/news.j2:5
 msgid "GNUnet"
@@ -75,7 +75,7 @@ msgstr ""
 msgid "News"
 msgstr ""
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr ""
 msgid "Community"
 msgstr ""
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr ""
 
@@ -2475,19 +2475,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the"
@@ -2511,11 +2511,11 @@ msgid ""
 "multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a "
@@ -2524,11 +2524,11 @@ msgid ""
 "/broken-internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -2538,11 +2538,11 @@ msgid ""
 "revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" "
 "href=\"https://www.w3.org/2014/strint/papers/65.pdf\";> improving "
@@ -2555,11 +2555,11 @@ msgid ""
 "-->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -2567,11 +2567,11 @@ msgid ""
 "sw.html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as"
@@ -2583,21 +2583,21 @@ msgid ""
 " well as the freedom to deploy new applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is "
 "detrimental to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates "
@@ -2607,11 +2607,11 @@ msgid ""
 "most value and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every "
 "other distributed or P2P project develops its own library stack, covering"
@@ -2622,11 +2622,11 @@ msgid ""
 " increases the potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It "
 "offers components for addressing, reliable encrypted channels with "
@@ -2634,11 +2634,11 @@ msgid ""
 "continuous research spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 msgid "Learn more"
 msgstr ""
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -2766,6 +2766,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 msgid "Configuration"
 msgstr ""
 
@@ -2972,89 +2973,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The "
-"current GNUnet TRANSPORT architecture with its pluggable transport "
+"Today consumer devices are behind a NAT quite often, restricting internet"
+" connectivity. There are several methods to reach peers being behind a "
+"NAT, but there are as many reasons those existing methods might fail. We "
+"will implement a new way of NAT traversal that we think of being "
+"independent from the existing network configuration, and does not require"
+" a third party which is not natted helping two peers to connect to each "
+"other. For details have a look on the <a href=\"../probnat/\">project "
+"page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+msgid "Past Project"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:48
+msgid ""
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
 "mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
 "subsystem for bandwidth allocation and choosing plugins has several "
 "issues with its design. With the Layer-2-Overlay project we like to "
 "implement the design goals of the future GNUnet TRANSPORT Next Generation"
 " (TNG) subsystem. For details have a look on the <a "
-"href=\"https://www.gnunet.org/en/l2o/\";>project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
+"href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid "The next project I will work on is named \"Probabilistic NAT 
Traversal\"."
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
-"Today consumer devices are behind a NAT quite often, restricting internet"
-" connectivity. There are several methods to reach peers being behind a "
-"NAT, but there are as many reasons those existing methods might fail. We "
-"will implement a new way of NAT traversal that we think of being "
-"independent from the existing network configuration, and does not require"
-" a third party which is not natted helping two peers to connect to each "
-"other. Two peers trying to connect to each other will send out a burst of"
-" connection attempts to the other peer on different ports. The sheer vast"
-" amount of connections attempts from both side will lead to a high "
-"probability that two connection attempts from both peers onto the same "
-"port will be at the same time leading to a successful connection between "
-"those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another "
-"peer B wants to connect to. Second – because inbound connections from the"
-" outside are blocked by the NAT firewall of peer A, peer A needs to be "
-"informed of a connection attempt by peer B. The most common solution for "
-"both problems is to have a third party C which is not behind a NAT. This "
-"third party C obviously knows the global IP address of natted peers, "
-"after peer A is trying to connect to C. Peer B tells C it likes to "
-"connect to peer A, and C informs A about it. Using this method for a "
-"privacy preserving network like GNUnet, this could facilitate eclipse "
-"attacks (isolating a peer) which then can be used for deanonymization "
-"attacks and cencorship. Also any additional infrastructure needed to "
-"provide some kind of functionality has to be maintained by someone, "
-"becoming a target and/or point of failure. Therefore this method is not "
-"suitable. More sophisticated methods like \"Autonomous NAT Traversal "
-"(pwnat)\" using ICMP fake message, which do not need a third party for "
-"the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:72
-msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the "
-"burst method for hole punching the global IP address is known. Via the "
-"distance vector protocol we are also able to communicate the \"start "
-"signal\". Also in the L2O project we introduced a new test framework for "
-"GNUnet to test network setups with peers having restricted connectivity. "
-"This test framework will be used to create test setups suitable to test "
-"possible NAT configurations. A challenge for this NAT traversal method "
-"will be how to handle the burst in terms of network load, thus we need to"
-" experiment with different frequencies and the amount of connection "
-"attempts."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a "
 "href=\"http://secushare.org\";>secushare</a> project a reality. To achieve"
@@ -3070,18 +3022,19 @@ msgid ""
 "needed by secushare to a state that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 msgid "Contact Information"
 msgstr ""
 
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 msgid "Project motivation"
 msgstr ""
 
@@ -3090,30 +3043,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3328,13 +3282,15 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again "
-"one outcome of this milestone will be a stable release. Documentation of "
-"the interpeer project analysis."
+"one outcome of this milestone will be a stable release.<br/> "
+"Documentation of the interpeer project analysis. More <a "
+"href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -3549,6 +3505,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -3684,28 +3641,107 @@ msgid ""
 "<li>contrib/netjail/netjail_start.sh</li> </ul> </ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 msgid "Performance Measurement"
 msgstr ""
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size"
-" of 65000 bytes. For this measurement the TNG layer was using tcp only, "
-"because there was an unfixed bug, if running tcp and udp in parallel."
+"The outcome of the performance measurement was ~24 MByte/s for packets "
+"with size of 65000 bytes. To follow up on this measurement one has to get"
+" the mean time the packets of 65000 bytes needed to reach another peer, "
+"to calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a"
+" href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the "
+"performance test case. For this measurement the TNG layer was using tcp "
+"only, because there was an unfixed bug, if running tcp and udp in "
+"parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 msgid "API Documentation"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a "
 "href='https://docs.gnunet.org/doxygen/d2/dc4/group__TNG.html'>TNG "
 "Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend "
+"single fragments, but the PendingMessage at once.</li> <li>The time to "
+"wait for resending a PendingMessage - which was fragmented - is "
+"calculated, depending on the number of fragments present, and how much of"
+" the PendingMessage was already fragmented.</li> <li>ValidationState now "
+"contains the addres prefix of the address being validated, because we "
+"have to check which communicator gave us the validation response.</li> "
+"<li>Handling flow control takes used window size into account, together "
+"with data loss.</li> <li>We do not update queue performance if "
+"PendingMessage was resend.</li> <li>Changed test case to except 0.5% "
+"packet loss.</li> <li>Removed misplaced sending of an acknowlegement in "
+"udp communicator.</li> <li>GNUNET_SERVICE_client_continue was misplaced "
+"after receiving CORE Ack, blocking the service.</li> <li>Fixed bug when "
+"checking, if fragment sub tree is done.</li> <li>Fixed bug in calculation"
+" of delay for PendingAcknowledgement.</li> <li>Fixed bug in calculation "
+"of subtree fragment message size.</li> <li>Fixed bug that additional "
+"queues for the same communicator inherit the validity period.</li> "
+"<li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> "
+"</ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: "
+"top;\">src/transport/test_transport_simple_send_performance_topo.conf</td><td"
+" width=\"40%\" style=\"vertical-align: top;\">Changed configuration to "
+"use TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets "
+"with size of 65000 bytes. To follow up on this measurement one has to get"
+" the mean time the packets of 65000 bytes needed to reach another peer, "
+"to calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a"
+" href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the "
+"performance test case. The performance increased from ~24 MByte/s "
+"measured with the code revision of milestone 5 by using TCP only to ~66 "
+"MByte/s measured with the code revision of milestone 6 for packet size of"
+" 65000 bytes using TCP and UDP together. There are still possibilities to"
+" increase performance documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are"
+" not goals of the L2O project, but are already implemented or planned for"
+" other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of "
+"the Channeler project, such as metadata protection and identity assurance"
+" of communication partners. Due to these half overlapping half disjoint "
+"targets it is not reasonable that on project makes use of the other as a "
+"whole. However, parts of one project may well be applicable in the other."
+" Since the Channeler project is not yet completed, it is not yet possible"
+" to identify the interesting parts beyond doubt. Interesting for the "
+"further development of L2O is the \"Zero-Copy and Buffering\" "
+"functionality of the Channeler project. This is also planned for future "
+"versions of L2O. In conclusion, both projects can benefit from each "
+"other. At this point in time, it is still too early to tackle this "
+"concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -3842,6 +3878,207 @@ msgstr ""
 msgid "News archives:"
 msgstr ""
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established "
+"by <a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet "
+"users, unhindered connectivity is anything but self-evident. Today "
+"consumer devices are often not directly reachable via the internet but "
+"quite often are behind a so called NAT delivering only indirect internet "
+"connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there "
+"are as many reasons those existing methods might fail. Manual "
+"configuration for example, as it is possible for example with home "
+"routers, often does not work for mobile devices like mobile phones. A "
+"further category of methods is subsumed under the term NAT hole punching."
+" This exploits a behavior of the gateway that keeps the port of an "
+"outgoing packet open for a potential response. To make this port known to"
+" another peer a third peer is needed who is not behind a NAT. Using this "
+"method for a privacy preserving network like GNUnet, this could "
+"facilitate eclipse attacks (isolating a peer) which then can be used for "
+"deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. "
+"Therefore this method is not suitable. More sophisticated methods like "
+"\"Autonomous NAT Traversal (pwnat)\" using ICMP fake message, which do "
+"not need a third party for the initiation of the connection, are not "
+"successful in all circumstances, because this method depend on the "
+"behavior of the NAT firewall. All methods have in common that the "
+"external IP address of the peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same "
+"port will be at the same time leading to a successful connection between "
+"those peers. If two natted peers are using the method to start a burst of"
+" connection attempts, this method still needs the global IP of the other "
+"peer and a “start signal” to coordinate. In the NGI Assure project <a "
+"href=\"../l2o\">L2O</a> we are establishing a backchannel with "
+"neighbourhood routing over an ad-hoc distance vector protocol to solve "
+"the problem of not directly connected peers. The peers serving as hops to"
+" a distant peer which are a direct neighbour of the start or end peer on "
+"that path do know the global IP address of the start or end peer. If "
+"those two peers like to use the burst method for hole punching the global"
+" IP address is known. Via the distance vector protocol we are also able "
+"to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and "
+"implemented for the L2O project. <ul> <li>Enhance the testing framework "
+"with a new kind of component (NAT component).</li> <li>Implement logic to"
+" keep ports open used during network translation.</li> <li>Extend the "
+"test framework configuration to configure the new components.</li> "
+"</ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid "Test case which tests the new testing functionality. Adding 
documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> "
+"<li>Two peers which got connected via DV signaling each other being "
+"behind a NAT.</li> <li>Learning the external IP address+port from already"
+" connected peers, exchange with the peers that want to connect.</li> "
+"<li>Set a common start time. One peer is selected to be leading "
+"(comparing peer ids like it is done in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers "
+"successfully exchange the messages of the implemented protocol until the "
+"condition is reached that both nodes are ready for the burst mode. "
+"Additionally there will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for "
+"UDP). A burst of synchronized (same ports on each peer) connection "
+"attempts on all available ports will lead to a high probability for a "
+"successful connection.The connection in the TCP case is not final, "
+"because the TCP connection is only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one"
+" Test case will test two peers are finaly connected (UDP case), another "
+"test case for TCP tests if both peers end up at the same port and the "
+"protocol will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from "
+"user space using raw sockets. To let the kernel know about the TCP "
+"connection we will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required "
+"capabilities. We need privileged access to system resources for some "
+"parts of the protocol, e.g. the TCP repair mode. This task will implement"
+" helper executables which are doing this privileged access, to be used by"
+" other components not having special privileges. (see § 2.2.1 Access "
+"Control, The GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration "
+"into the GNUnet stack. Man pages for the cli applications. First release "
+"of all the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port "
+"subset. First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from "
+"10.x to 192.168.x). There might be optimization we do not know anything "
+"about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization."
+" Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/pt/LC_MESSAGES/messages.po 
b/locale/pt/LC_MESSAGES/messages.po
index 65d18b86..d02c658e 100644
--- a/locale/pt/LC_MESSAGES/messages.po
+++ b/locale/pt/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Automatically generated\n"
 "Language-Team: none\n"
@@ -75,7 +75,7 @@ msgstr ""
 msgid "News"
 msgstr ""
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr ""
 
@@ -83,7 +83,7 @@ msgstr ""
 msgid "Community"
 msgstr ""
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr ""
 
@@ -2425,19 +2425,19 @@ msgstr ""
 msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr ""
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr ""
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr ""
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -2460,11 +2460,11 @@ msgid ""
 "vulnerable for multiple attacks massively threatening our freedom. -->"
 msgstr ""
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr ""
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -2473,11 +2473,11 @@ msgid ""
 "internet\">old insecure Internet</a> protocol stack."
 msgstr ""
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr ""
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -2486,11 +2486,11 @@ msgid ""
 "frequency and the volume of communication are all still revealed.<br>"
 msgstr ""
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr ""
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -2501,11 +2501,11 @@ msgid ""
 "routing, naming and content distribution in a technically robust manner. -->"
 msgstr ""
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr ""
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -2513,11 +2513,11 @@ msgid ""
 "html\">essential freedoms</a> to various degrees."
 msgstr ""
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr ""
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -2529,21 +2529,21 @@ msgid ""
 "applications (\"modify\")."
 msgstr ""
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -2553,11 +2553,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr ""
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -2568,11 +2568,11 @@ msgid ""
 "potential number of vulnerabilities."
 msgstr ""
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr ""
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -2580,11 +2580,11 @@ msgid ""
 "spanning almost two decades."
 msgstr ""
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 msgid "Learn more"
 msgstr ""
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr ""
 
@@ -2712,6 +2712,7 @@ msgstr ""
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 msgid "Configuration"
 msgstr ""
 
@@ -2913,87 +2914,38 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+msgid "Past Project"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3008,18 +2960,19 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 msgid "Contact Information"
 msgstr ""
 
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 msgid "Project motivation"
 msgstr ""
 
@@ -3028,30 +2981,31 @@ msgid "New Test Framework"
 msgstr ""
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -3260,13 +3214,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -3467,6 +3422,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -3595,27 +3551,103 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 msgid "Performance Measurement"
 msgstr ""
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 msgid "API Documentation"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -3745,6 +3777,203 @@ msgstr ""
 msgid "News archives:"
 msgstr ""
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr ""
diff --git a/locale/zh_Hant/LC_MESSAGES/messages.po 
b/locale/zh_Hant/LC_MESSAGES/messages.po
index 44c89905..d6b33412 100644
--- a/locale/zh_Hant/LC_MESSAGES/messages.po
+++ b/locale/zh_Hant/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-04-01 13:56+0200\n"
+"POT-Creation-Date: 2023-06-02 19:17+0200\n"
 "PO-Revision-Date: 2021-08-24 08:59+0000\n"
 "Last-Translator: Ting-Yi Fu <futingyi0215@gmail.com>\n"
 "Language-Team: Chinese (Traditional) <http://weblate.taler.net/projects/";
@@ -78,7 +78,7 @@ msgstr "關於"
 msgid "News"
 msgstr "最新消息"
 
-#: common/navigation.j2.inc:36 template/index.html.j2:337
+#: common/navigation.j2.inc:36 template/index.html.j2:338
 msgid "Applications"
 msgstr "應用程式"
 
@@ -86,7 +86,7 @@ msgstr "應用程式"
 msgid "Community"
 msgstr "社群"
 
-#: common/navigation.j2.inc:43 template/index.html.j2:340
+#: common/navigation.j2.inc:43 template/index.html.j2:341
 msgid "Engage"
 msgstr "參與"
 
@@ -3089,19 +3089,19 @@ msgid "The Internet of tomorrow needs GNUnet today"
 msgstr ""
 "明天的互聯網需要今天的 GNUnet (The Internet of tomorrow needs GNUnet today)"
 
-#: template/index.html.j2:27
+#: template/index.html.j2:28
 msgid "Latest news"
 msgstr "最新資訊"
 
-#: template/index.html.j2:33
+#: template/index.html.j2:34
 msgid "Older news entries"
 msgstr "較早的新聞項目"
 
-#: template/index.html.j2:48
+#: template/index.html.j2:49
 msgid "The Internet is broken"
 msgstr "網路壞掉了 (The Internet is broken)"
 
-#: template/index.html.j2:50
+#: template/index.html.j2:51
 msgid ""
 "The conventional Internet is currently like a system of roads with deep "
 "potholes and highwaymen all over the place. Even if you still can use the "
@@ -3142,11 +3142,11 @@ msgstr ""
 "insecure defaults and high complexity; and it is centralized. That makes it "
 "very vulnerable for multiple attacks massively threatening our freedom. -->"
 
-#: template/index.html.j2:95
+#: template/index.html.j2:96
 msgid "GNUnet helps building a new Internet"
 msgstr "GNUnet 幫助建立新的網路"
 
-#: template/index.html.j2:97
+#: template/index.html.j2:98
 msgid ""
 "GNUnet is a network protocol stack for building secure, distributed, and "
 "privacy-preserving applications.<br/> With strong roots in <a class=\"link\" "
@@ -3159,11 +3159,11 @@ msgstr ""
 "<a class=\"link\" href=\"https://secushare.org/broken-internet\";>舊的不安全"
 "的 Internet</a>協議棧。"
 
-#: template/index.html.j2:120
+#: template/index.html.j2:121
 msgid "Metadata is exposed"
 msgstr "元數據 (Metadata) 已被暴露"
 
-#: template/index.html.j2:122
+#: template/index.html.j2:123
 msgid ""
 "Your metadata is just as revealing as the actual content; and it gets "
 "exposed on the Internet.<br> Even though transport encryption is "
@@ -3175,11 +3175,11 @@ msgstr ""
 "輸加密在網際網路上被越來越廣泛地部署,資料仍可能會被洩漏並威脅到民主:發送者"
 "和接收者的身份、時間、頻率和通信量仍被暴露。<br>"
 
-#: template/index.html.j2:151
+#: template/index.html.j2:152
 msgid "GNUnet provides privacy-by design"
 msgstr "GNUnet 通過設計提供隱私"
 
-#: template/index.html.j2:153
+#: template/index.html.j2:154
 msgid ""
 "It provides <a class=\"link\" href=\"https://www.w3.org/2014/strint/";
 "papers/65.pdf\"> improving addressing, routing, naming and content "
@@ -3198,11 +3198,11 @@ msgstr ""
 "發設計(distributed by design)\". 這以技術穩健的方式改進了尋址、路由、命名和內"
 "容分發。-->"
 
-#: template/index.html.j2:178
+#: template/index.html.j2:179
 msgid "Freedoms are not respected"
 msgstr "自由不被尊重"
 
-#: template/index.html.j2:180
+#: template/index.html.j2:181
 msgid ""
 "Today, monitoring increasingly centralized infrastructure, proprietary "
 "implementations, traffic shapers and firewalls restrict all of the <a "
@@ -3213,11 +3213,11 @@ msgstr ""
 "量整形器 (traffic shapers)和防火牆在各種程度上限制了所有的<a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>基礎自由</a>。"
 
-#: template/index.html.j2:204
+#: template/index.html.j2:205
 msgid "GNUnet supports a free and open society"
 msgstr "GNUnet 支持自由開放的社會"
 
-#: template/index.html.j2:206
+#: template/index.html.j2:207
 msgid ""
 "GNUnet is a self-organizing network and it is <a class=\"link\" "
 "href=\"https://www.gnu.org/philosophy/free-sw.html\";>free software</a> as in "
@@ -3234,21 +3234,21 @@ msgstr ""
 "用戶安全地訪問訊息的自由(\"運行\"網路)、研究網路運行各層面的自由(\"存取程"
 "式碼\")、分發訊息的自由(\"複製\")以及部署新的應用程式的自由(\"修改\")。"
 
-#: template/index.html.j2:230
+#: template/index.html.j2:231
 msgid "The state of the art is inefficient"
 msgstr ""
 
-#: template/index.html.j2:232
+#: template/index.html.j2:233
 msgid ""
 "The ongoing hype around distributed ledgers and blockchains is detrimental "
 "to the health of our planet."
 msgstr ""
 
-#: template/index.html.j2:253
+#: template/index.html.j2:254
 msgid "Sustainability"
 msgstr ""
 
-#: template/index.html.j2:255
+#: template/index.html.j2:256
 #, python-format
 msgid ""
 "GNUnet does not require a decentralized, public ledger. This eliminates the "
@@ -3258,11 +3258,11 @@ msgid ""
 "and use more efficient technology stacks where needed</a>."
 msgstr ""
 
-#: template/index.html.j2:277
+#: template/index.html.j2:278
 msgid "Decentralization is the key, but hard"
 msgstr "去中心化是關鍵,但很難實踐"
 
-#: template/index.html.j2:280
+#: template/index.html.j2:281
 msgid ""
 "<!-- replaced with Proposal from Fabian Gerlach: It seems as if every other "
 "distributed or P2P project develops its own library stack, covering "
@@ -3279,11 +3279,11 @@ msgstr ""
 "於構建P2P系統的通用元件和工具。\n"
 "<!-- TODO: rework this sentence. -->這會增加工作量並且增加潛在的漏洞數量。"
 
-#: template/index.html.j2:312
+#: template/index.html.j2:313
 msgid "GNUnet is a framework"
 msgstr "GNUnet 是一個框架"
 
-#: template/index.html.j2:314
+#: template/index.html.j2:315
 msgid ""
 "It offers a metadata-preserving foundation for your application. It offers "
 "components for addressing, reliable encrypted channels with advanced routing "
@@ -3293,11 +3293,11 @@ msgstr ""
 "它為您的應用程式提供了保留元資料的基礎。它提供用於尋址、具有高級路由和資源發"
 "現和命名的可靠加密通道的組件。我們的工作基於跨越近二十年的持續研究。"
 
-#: template/index.html.j2:334
+#: template/index.html.j2:335
 msgid "Learn more"
 msgstr "了解更多"
 
-#: template/index.html.j2:343
+#: template/index.html.j2:344
 msgid "Get started"
 msgstr "開始"
 
@@ -3425,6 +3425,7 @@ msgstr "教學:OpenWrt 上的 GNUnet"
 #: template/install-on-openwrt.html.j2:48 template/l2o/mile1.html.j2:114
 #: template/l2o/mile2.html.j2:64 template/l2o/mile3.html.j2:93
 #: template/l2o/mile4.html.j2:71 template/l2o/mile5.html.j2:63
+#: template/l2o/mile6.html.j2:45
 msgid "Configuration"
 msgstr "配置"
 
@@ -3691,87 +3692,40 @@ msgstr ""
 
 #: template/dev_pages/t3sserakt.html.j2:26
 msgid ""
-"At the moment I am working on Transport Next Generation (TNG). The current "
-"GNUnet TRANSPORT architecture with its pluggable transport mechanism (TCP, "
-"UDP, HTTP(S) and other protocols) together with the ATS subsystem for "
-"bandwidth allocation and choosing plugins has several issues with its "
-"design. With the Layer-2-Overlay project we like to implement the design "
-"goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. For "
-"details have a look on the <a href=\"https://www.gnunet.org/en/l2o/";
-"\">project page</a>."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:41
-msgid "Future Work"
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:43
-msgid ""
-"The next project I will work on is named \"Probabilistic NAT Traversal\"."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:48
-msgid ""
 "Today consumer devices are behind a NAT quite often, restricting internet "
 "connectivity. There are several methods to reach peers being behind a NAT, "
 "but there are as many reasons those existing methods might fail. We will "
 "implement a new way of NAT traversal that we think of being independent from "
 "the existing network configuration, and does not require a third party which "
-"is not natted helping two peers to connect to each other. Two peers trying "
-"to connect to each other will send out a burst of connection attempts to the "
-"other peer on different ports. The sheer vast amount of connections attempts "
-"from both side will lead to a high probability that two connection attempts "
-"from both peers onto the same port will be at the same time leading to a "
-"successful connection between those peers."
-msgstr ""
-
-#: template/dev_pages/t3sserakt.html.j2:58
-msgid ""
-"There are two problems a NAT traversal method has to solve. First there "
-"needs to be a method to know the global IP address of a peer A another peer "
-"B wants to connect to. Second – because inbound connections from the outside "
-"are blocked by the NAT firewall of peer A, peer A needs to be informed of a "
-"connection attempt by peer B. The most common solution for both problems is "
-"to have a third party C which is not behind a NAT. This third party C "
-"obviously knows the global IP address of natted peers, after peer A is "
-"trying to connect to C. Peer B tells C it likes to connect to peer A, and C "
-"informs A about it. Using this method for a privacy preserving network like "
-"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
-"can be used for deanonymization attacks and cencorship. Also any additional "
-"infrastructure needed to provide some kind of functionality has to be "
-"maintained by someone, becoming a target and/or point of failure. Therefore "
-"this method is not suitable. More sophisticated methods like \"Autonomous "
-"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
-"party for the initiation of the connection, are not successful in all "
-"circumstances, because this method depend on the behavior of the NAT "
-"firewall."
+"is not natted helping two peers to connect to each other. For details have a "
+"look on the <a href=\"../probnat/\">project page</a>"
+msgstr ""
+
+#: template/dev_pages/t3sserakt.html.j2:44
+#, fuzzy
+#| msgid "Past projects"
+msgid "Past Project"
+msgstr "過去的項目"
+
+#: template/dev_pages/t3sserakt.html.j2:46
+msgid "Transport Next Generation"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:72
+#: template/dev_pages/t3sserakt.html.j2:48
 msgid ""
-"If two natted peers are using the method to start a burst of connection "
-"attempts, this method still needs the global IP of the other peer and a "
-"“start signal” to coordinate. In the NGI Assure project L2O we are "
-"establishing a backchannel with neighbourhood routing over an ad- hoc "
-"distance vector protocol to solve the problem of not directly connected "
-"peers. The peers serving as hops to a distant peer which are a direct "
-"neighbour of the start or end peer on that path do know the global IP "
-"address of the start or end peer. If those two peers like to use the burst "
-"method for hole punching the global IP address is known. Via the distance "
-"vector protocol we are also able to communicate the \"start signal\". Also "
-"in the L2O project we introduced a new test framework for GNUnet to test "
-"network setups with peers having restricted connectivity. This test "
-"framework will be used to create test setups suitable to test possible NAT "
-"configurations. A challenge for this NAT traversal method will be how to "
-"handle the burst in terms of network load, thus we need to experiment with "
-"different frequencies and the amount of connection attempts."
+"The current GNUnet TRANSPORT architecture with its pluggable transport "
+"mechanism (TCP, UDP, HTTP(S) and other protocols) together with the ATS "
+"subsystem for bandwidth allocation and choosing plugins has several issues "
+"with its design. With the Layer-2-Overlay project we like to implement the "
+"design goals of the future GNUnet TRANSPORT Next Generation (TNG) subsystem. "
+"For details have a look on the <a href=\"../l2o/\">project page</a>."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:94
-msgid "Past Work"
+#: template/dev_pages/t3sserakt.html.j2:63
+msgid "Voluntary Work"
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:96
+#: template/dev_pages/t3sserakt.html.j2:65
 msgid ""
 "In the past I have tried to help making the vision of the <a href=\"http://";
 "secushare.org\">secushare</a> project a reality. To achieve this the GNUnet "
@@ -3786,7 +3740,7 @@ msgid ""
 "that they can be used prouctively."
 msgstr ""
 
-#: template/dev_pages/t3sserakt.html.j2:111
+#: template/dev_pages/t3sserakt.html.j2:80
 #, fuzzy
 #| msgid "Contact information"
 msgid "Contact Information"
@@ -3795,11 +3749,12 @@ msgstr "聯絡資訊"
 #: template/l2o/index.html.j2:7 template/l2o/mile1.html.j2:7
 #: template/l2o/mile2.html.j2:7 template/l2o/mile3.html.j2:7
 #: template/l2o/mile4.html.j2:7 template/l2o/mile5.html.j2:7
-#: template/l2o/testng.html.j2:7
+#: template/l2o/mile6.html.j2:7 template/l2o/testng.html.j2:7
 msgid "NGI Assure project: Layer-2-Overlay"
 msgstr ""
 
 #: template/l2o/index.html.j2:13 template/l2o/index.html.j2:35
+#: template/probnat/index.html.j2:13 template/probnat/index.html.j2:35
 #, fuzzy
 #| msgid "Motivation"
 msgid "Project motivation"
@@ -3812,30 +3767,31 @@ msgid "New Test Framework"
 msgstr "GNUnet 是一個框架"
 
 #: template/l2o/index.html.j2:15 template/l2o/index.html.j2:75
+#: template/probnat/index.html.j2:14 template/probnat/index.html.j2:64
 msgid "Milestones"
 msgstr ""
 
-#: template/l2o/index.html.j2:16
+#: template/l2o/index.html.j2:16 template/probnat/index.html.j2:15
 msgid "Milestone 1"
 msgstr ""
 
-#: template/l2o/index.html.j2:17
+#: template/l2o/index.html.j2:17 template/probnat/index.html.j2:16
 msgid "Milestone 2"
 msgstr ""
 
-#: template/l2o/index.html.j2:18
+#: template/l2o/index.html.j2:18 template/probnat/index.html.j2:17
 msgid "Milestone 3"
 msgstr ""
 
-#: template/l2o/index.html.j2:19
+#: template/l2o/index.html.j2:19 template/probnat/index.html.j2:18
 msgid "Milestone 4"
 msgstr ""
 
-#: template/l2o/index.html.j2:20
+#: template/l2o/index.html.j2:20 template/probnat/index.html.j2:19
 msgid "Milestone 5"
 msgstr ""
 
-#: template/l2o/index.html.j2:21
+#: template/l2o/index.html.j2:21 template/probnat/index.html.j2:20
 msgid "Milestone 6"
 msgstr ""
 
@@ -4046,13 +4002,14 @@ msgstr ""
 msgid ""
 "The test cases in the CI are measuring the performance gains. This "
 "measurement can be compared with the measurement of milestone 5. Again one "
-"outcome of this milestone will be a stable release. Documentation of the "
-"interpeer project analysis."
+"outcome of this milestone will be a stable release.<br/> Documentation of "
+"the interpeer project analysis. More <a href=\"mile6.html\">Details</a>."
 msgstr ""
 
 #: template/l2o/mile1.html.j2:13 template/l2o/mile2.html.j2:13
 #: template/l2o/mile3.html.j2:13 template/l2o/mile4.html.j2:13
-#: template/l2o/mile5.html.j2:13 template/l2o/testng.html.j2:13
+#: template/l2o/mile5.html.j2:13 template/l2o/mile6.html.j2:13
+#: template/l2o/testng.html.j2:13
 msgid "Project main page"
 msgstr ""
 
@@ -4253,6 +4210,7 @@ msgid ""
 msgstr ""
 
 #: template/l2o/mile4.html.j2:21 template/l2o/mile5.html.j2:32
+#: template/l2o/mile6.html.j2:21
 msgid "TNG Service"
 msgstr ""
 
@@ -4383,7 +4341,7 @@ msgid ""
 "</ul>"
 msgstr ""
 
-#: template/l2o/mile5.html.j2:130
+#: template/l2o/mile5.html.j2:130 template/l2o/mile6.html.j2:57
 #, fuzzy
 #| msgid "Performance Analysis"
 msgid "Performance Measurement"
@@ -4391,23 +4349,99 @@ msgstr "績效分析"
 
 #: template/l2o/mile5.html.j2:132
 msgid ""
-"The outcome of the performance measurement was 20 MByte/s for packet size of "
-"65000 bytes. For this measurement the TNG layer was using tcp only, because "
+"The outcome of the performance measurement was ~24 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 1b8b9ebe2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/1b8b9ebe2_test.out\">1b8b9ebe2_test.out</a> of the performance "
+"test case. For this measurement the TNG layer was using tcp only, because "
 "there was an unfixed bug, if running tcp and udp in parallel."
 msgstr ""
 
-#: template/l2o/mile5.html.j2:140
+#: template/l2o/mile5.html.j2:142
 #, fuzzy
 #| msgid "Documentation"
 msgid "API Documentation"
 msgstr "相關文件"
 
-#: template/l2o/mile5.html.j2:142
+#: template/l2o/mile5.html.j2:144
 msgid ""
 "Documentation of the new <a href='https://docs.gnunet.org/doxygen/d2/dc4/";
 "group__TNG.html'>TNG Api</a>."
 msgstr ""
 
+#: template/l2o/mile6.html.j2:23
+msgid ""
+"<ul> <li>Introduced frags_in_flight flag. With this flag we check if "
+"fragments of a PendingMessage are being send right now, to not resend single "
+"fragments, but the PendingMessage at once.</li> <li>The time to wait for "
+"resending a PendingMessage - which was fragmented - is calculated, depending "
+"on the number of fragments present, and how much of the PendingMessage was "
+"already fragmented.</li> <li>ValidationState now contains the addres prefix "
+"of the address being validated, because we have to check which communicator "
+"gave us the validation response.</li> <li>Handling flow control takes used "
+"window size into account, together with data loss.</li> <li>We do not update "
+"queue performance if PendingMessage was resend.</li> <li>Changed test case "
+"to except 0.5% packet loss.</li> <li>Removed misplaced sending of an "
+"acknowlegement in udp communicator.</li> <li>GNUNET_SERVICE_client_continue "
+"was misplaced after receiving CORE Ack, blocking the service.</li> <li>Fixed "
+"bug when checking, if fragment sub tree is done.</li> <li>Fixed bug in "
+"calculation of delay for PendingAcknowledgement.</li> <li>Fixed bug in "
+"calculation of subtree fragment message size.</li> <li>Fixed bug that "
+"additional queues for the same communicator inherit the validity period.</"
+"li> <li>Fixed logic bug when searching for QueueEntry matching "
+"acknowledgement.</li> <li>Fixed misplaced increase of queue length.</li> </"
+"ul>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:47
+msgid ""
+"<table width=\"100%\"> <tr> <td width=\"60%\" style=\"vertical-align: top;"
+"\">src/transport/test_transport_simple_send_performance_topo.conf</td><td "
+"width=\"40%\" style=\"vertical-align: top;\">Changed configuration to use "
+"TCP and UDP together.</td> </tr> </table>"
+msgstr ""
+
+#: template/l2o/mile6.html.j2:59
+msgid ""
+"The outcome of the performance measurement was ~66 MByte/s for packets with "
+"size of 65000 bytes. To follow up on this measurement one has to get the "
+"mean time the packets of 65000 bytes needed to reach another peer, to "
+"calculate the data rate, by doing<br/><br/> <code>grep \"mean time "
+"traveled\" 811c040a2_test.out|tail -1</code><br/><br/> on the log file <a "
+"href=\"/l2o/811c040a2_test.out\">811c040a2_test.out</a> of the performance "
+"test case. The performance increased from ~24 MByte/s measured with the code "
+"revision of milestone 5 by using TCP only to ~66 MByte/s measured with the "
+"code revision of milestone 6 for packet size of 65000 bytes using TCP and "
+"UDP together. There are still possibilities to increase performance "
+"documented as TODOs in the source code."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:70
+msgid "Synergie with Interpeer Channeler project."
+msgstr ""
+
+#: template/l2o/mile6.html.j2:72
+msgid ""
+"The Interpeer library Channeler and the L2O project have some goals in "
+"common. These include independence of the transmission protocol used, "
+"congestion control, reliability. Other goals of the Channeler project are "
+"not goals of the L2O project, but are already implemented or planned for "
+"other layers of GNUnet, such as multiplexing and ordered delivery of "
+"packages. There are also goals of the L2O project that are not goals of the "
+"Channeler project, such as metadata protection and identity assurance of "
+"communication partners. Due to these half overlapping half disjoint targets "
+"it is not reasonable that on project makes use of the other as a whole. "
+"However, parts of one project may well be applicable in the other. Since the "
+"Channeler project is not yet completed, it is not yet possible to identify "
+"the interesting parts beyond doubt. Interesting for the further development "
+"of L2O is the \"Zero-Copy and Buffering\" functionality of the Channeler "
+"project. This is also planned for future versions of L2O. In conclusion, "
+"both projects can benefit from each other. At this point in time, it is "
+"still too early to tackle this concretely."
+msgstr ""
+
 #: template/l2o/testng.html.j2:21
 msgid "Netjail setup and execution"
 msgstr ""
@@ -4539,6 +4573,203 @@ msgstr ""
 msgid "News archives:"
 msgstr "新聞檔案:"
 
+#: template/probnat/index.html.j2:7
+msgid "NGI Assure project: Probabilistic NAT Traversal"
+msgstr ""
+
+#: template/probnat/index.html.j2:21
+msgid "Milestone 7"
+msgstr ""
+
+#: template/probnat/index.html.j2:28
+msgid ""
+"This project was funded through the NGI Assure Fund, a fund established by "
+"<a href=\"https://nlnet.nl/project/ProbabilisticNAT\";>NLnet</a>.</br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:40
+msgid ""
+"For establishing a peer to peer (p2p) network among regular internet users, "
+"unhindered connectivity is anything but self-evident. Today consumer devices "
+"are often not directly reachable via the internet but quite often are behind "
+"a so called NAT delivering only indirect internet connectivity."
+msgstr ""
+
+#: template/probnat/index.html.j2:49
+msgid ""
+"There are several methods to reach peers who are behind a NAT, but there are "
+"as many reasons those existing methods might fail. Manual configuration for "
+"example, as it is possible for example with home routers, often does not "
+"work for mobile devices like mobile phones. A further category of methods is "
+"subsumed under the term NAT hole punching. This exploits a behavior of the "
+"gateway that keeps the port of an outgoing packet open for a potential "
+"response. To make this port known to another peer a third peer is needed who "
+"is not behind a NAT. Using this method for a privacy preserving network like "
+"GNUnet, this could facilitate eclipse attacks (isolating a peer) which then "
+"can be used for deanonymization attacks and cencorship. Also any additional "
+"infrastructure needed to provide some kind of functionality has to be "
+"maintained by someone, becoming a target and/or point of failure. Therefore "
+"this method is not suitable. More sophisticated methods like \"Autonomous "
+"NAT Traversal (pwnat)\" using ICMP fake message, which do not need a third "
+"party for the initiation of the connection, are not successful in all "
+"circumstances, because this method depend on the behavior of the NAT "
+"firewall. All methods have in common that the external IP address of the "
+"peer behind the NAT must be known."
+msgstr ""
+
+#: template/probnat/index.html.j2:58
+msgid ""
+"Two peers trying to connect to each other will send out a burst of "
+"connection attempts to the other peer on different ports. The sheer vast "
+"amount of connections attempts from both side will lead to a high "
+"probability that two connection attempts from both peers onto the same port "
+"will be at the same time leading to a successful connection between those "
+"peers. If two natted peers are using the method to start a burst of "
+"connection attempts, this method still needs the global IP of the other peer "
+"and a “start signal” to coordinate. In the NGI Assure project <a href=\"../"
+"l2o\">L2O</a> we are establishing a backchannel with neighbourhood routing "
+"over an ad-hoc distance vector protocol to solve the problem of not directly "
+"connected peers. The peers serving as hops to a distant peer which are a "
+"direct neighbour of the start or end peer on that path do know the global IP "
+"address of the start or end peer. If those two peers like to use the burst "
+"method for hole punching the global IP address is known. Via the distance "
+"vector protocol we are also able to communicate the \"start signal\"."
+msgstr ""
+
+#: template/probnat/index.html.j2:68
+msgid "Milestone 1 Test Infrastructure"
+msgstr ""
+
+#: template/probnat/index.html.j2:71
+msgid ""
+"Extending the testing framework, which was already designed and implemented "
+"for the L2O project. <ul> <li>Enhance the testing framework with a new kind "
+"of component (NAT component).</li> <li>Implement logic to keep ports open "
+"used during network translation.</li> <li>Extend the test framework "
+"configuration to configure the new components.</li> </ul></br>"
+msgstr ""
+
+#: template/probnat/index.html.j2:84
+msgid ""
+"Test case which tests the new testing functionality. Adding documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:90
+msgid "Milestone 2 Synchronization"
+msgstr ""
+
+#: template/probnat/index.html.j2:93
+msgid ""
+"This task is to implement the protocol that is doing the signaling for "
+"synchronizing two peers which do like to connect to each other. <ul> <li>Two "
+"peers which got connected via DV signaling each other being behind a NAT.</"
+"li> <li>Learning the external IP address+port from already connected peers, "
+"exchange with the peers that want to connect.</li> <li>Set a common start "
+"time. One peer is selected to be leading (comparing peer ids like it is done "
+"in CADET)</li> </ul>"
+msgstr ""
+
+#: template/probnat/index.html.j2:107
+msgid ""
+"Deliverable of this milestone is integrating the protocol implementation "
+"into the GNUnet stack, a test case which tests that two peers successfully "
+"exchange the messages of the implemented protocol until the condition is "
+"reached that both nodes are ready for the burst mode. Additionally there "
+"will be a protocol documentation."
+msgstr ""
+
+#: template/probnat/index.html.j2:116
+msgid "Milestone 3 Burst Protocol"
+msgstr ""
+
+#: template/probnat/index.html.j2:119
+msgid ""
+"Burst to establish connectivity (IP_RAW, SYN send for TCP; normal for UDP). "
+"A burst of synchronized (same ports on each peer) connection attempts on all "
+"available ports will lead to a high probability for a successful connection."
+"The connection in the TCP case is not final, because the TCP connection is "
+"only done in the user space."
+msgstr ""
+
+#: template/probnat/index.html.j2:128
+msgid ""
+"The protocol implementation will be integrated into the GNUnet stack, one "
+"Test case will test two peers are finaly connected (UDP case), another test "
+"case for TCP tests if both peers end up at the same port and the protocol "
+"will be documented."
+msgstr ""
+
+#: template/probnat/index.html.j2:136
+msgid "Milestone 4 TCP Repair"
+msgstr ""
+
+#: template/probnat/index.html.j2:139
+msgid ""
+"For the TCP case the connection was established sending packages from user "
+"space using raw sockets. To let the kernel know about the TCP connection we "
+"will use the “repair mode” of the setsockopt() system call."
+msgstr ""
+
+#: template/probnat/index.html.j2:147
+msgid ""
+"Integration into the GNUnet stack and a test case testing two peers are "
+"finaly (kernel TCP socket) connected."
+msgstr ""
+
+#: template/probnat/index.html.j2:154
+msgid "Milestone 5 Privilege Minimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:157
+msgid ""
+"Privilege minimization, using SUID/SGID helpers with required capabilities. "
+"We need privileged access to system resources for some parts of the "
+"protocol, e.g. the TCP repair mode. This task will implement helper "
+"executables which are doing this privileged access, to be used by other "
+"components not having special privileges. (see § 2.2.1 Access Control, The "
+"GNUnet System, https://grothoff.org/christian/habil.pdf)"
+msgstr ""
+
+#: template/probnat/index.html.j2:167
+msgid ""
+"Helper executables and cli applications using the helpers. Integration into "
+"the GNUnet stack. Man pages for the cli applications. First release of all "
+"the implementation."
+msgstr ""
+
+#: template/probnat/index.html.j2:174
+msgid "Milestone 6 Port Range Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:177
+msgid ""
+"Detect likely port ranges (peers exchanging lists of 'working' IP+Port "
+"combinations)."
+msgstr ""
+
+#: template/probnat/index.html.j2:183
+msgid ""
+"Test case with setup using specific port ranges testing use of port subset. "
+"First optimization release."
+msgstr ""
+
+#: template/probnat/index.html.j2:190
+msgid "Milestone 7 Optimization"
+msgstr ""
+
+#: template/probnat/index.html.j2:193
+msgid ""
+"Prioritize likely working IP addresses (no point in trying to go from 10.x "
+"to 192.168.x). There might be optimization we do not know anything about yet."
+msgstr ""
+
+#: template/probnat/index.html.j2:200
+msgid ""
+"Test case with setup using specific IP addresses testing if not all "
+"available IP addresses are used. Test cases testing general optimization. "
+"Second optimization release."
+msgstr ""
+
 #: template/reclaim/faq.html.j2:6
 msgid "Frequently asked questions"
 msgstr "常見問題"
diff --git a/template/index.html.j2 b/template/index.html.j2
index 88a0f8f8..f5c1e468 100644
--- a/template/index.html.j2
+++ b/template/index.html.j2
@@ -11,7 +11,8 @@
     </div>
 
     <div class="container text-center">
-      <img src="{{ url_static('images/gnunet-logo-dark-no-text.png') }}"  
alt="GNUnet" />
+    <!--<img src="{{ url_static('images/gnunet-logo-dark-no-text.png') }}"  
alt="GNUnet" />-->
+      <a class="nav-link" href="https://www.gnu.org/gnu40";><img 
src="https://www.gnu.org/gnu40/GNU40_badge-sm.png"; alt="[ Celebrate 40 years of 
GNU! ]" /></a>
     </div>
   </div>
 </div>

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]