gnunet-svn
[Top][All Lists]
Advanced

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

[www] branch stable updated (b9cfff01 -> 98ef6fff)


From: gnunet
Subject: [www] branch stable updated (b9cfff01 -> 98ef6fff)
Date: Fri, 02 Jun 2023 19:30:51 +0200

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

martin-schanzenbach pushed a change to branch stable
in repository www.

    from b9cfff01 Added two log files for the TNG performance test case. One 
each for the revision of milestone 5 and one for milestone 6. Changed the 
milestone pages to reference the log files, and explain how to calculate the 
data rate from the information in the log file.
     add 98ef6fff temporarily change logo to gnu40

No new revisions were added by this update.

Summary of changes:
 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]