From f84332478fe0dcd7a52798b023f0c550305cde4a Mon Sep 17 00:00:00 2001 From: Martin Schanzenbach Date: Sat, 26 Feb 2022 15:21:06 +0100 Subject: add 0.16 news! --- locale/ar/LC_MESSAGES/messages.po | 596 ++++++++++++++++++++++++++++++- locale/de/LC_MESSAGES/messages.po | 624 +++++++++++++++++++++++++++++++- locale/es/LC_MESSAGES/messages.po | 630 ++++++++++++++++++++++++++++++++- locale/fr/LC_MESSAGES/messages.po | 618 +++++++++++++++++++++++++++++++- locale/hi/LC_MESSAGES/messages.po | 598 ++++++++++++++++++++++++++++++- locale/it/LC_MESSAGES/messages.po | 618 +++++++++++++++++++++++++++++++- locale/ja/LC_MESSAGES/messages.po | 630 ++++++++++++++++++++++++++++++++- locale/ko/LC_MESSAGES/messages.po | 598 ++++++++++++++++++++++++++++++- locale/messages.pot | 625 +++++++++++++++++++++++++++++++- locale/pt/LC_MESSAGES/messages.po | 594 ++++++++++++++++++++++++++++++- locale/zh_Hant/LC_MESSAGES/messages.po | 620 +++++++++++++++++++++++++++++++- template/news/2022-02-0.16.0.html.j2 | 80 +++++ www.yml | 3 + 13 files changed, 6713 insertions(+), 121 deletions(-) create mode 100644 template/news/2022-02-0.16.0.html.j2 diff --git a/locale/ar/LC_MESSAGES/messages.po b/locale/ar/LC_MESSAGES/messages.po index 75ad3f1b..39e4853d 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-05-21 14:59+0000\n" "Last-Translator: Shorouk Hassouna \n" "Language-Team: Arabic Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" #: template/applications.html.j2:180 @@ -2719,7 +2719,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 msgid "Configuration" msgstr "" @@ -2910,6 +2911,587 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Documentation" +msgid "Project motivation" +msgstr "التوثيق" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +msgid "Topology Configuration" +msgstr "" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "ارشيف الاخبار:" diff --git a/locale/de/LC_MESSAGES/messages.po b/locale/de/LC_MESSAGES/messages.po index 709b1335..a6b47a44 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-08-30 19:06+0000\n" "Last-Translator: Stefan \n" "Language-Team: German Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" -"Cadet-GTK ist " -"eine praktische, aber funktionsreiche grafische Anwendung, die " -"Nachrichtenübermittlung unter Verwendung des CADET-Subsystem ermöglicht. Es " -"wurde unter Verwendung von GTK und libhandy für eine konvergente Gestaltung " -"entwickelt." #: template/applications.html.j2:180 msgid "groupchat" @@ -3870,7 +3865,8 @@ msgstr "Tutorial: GNUnet auf NetBSD 8.0 CURRENT" msgid "Tutorial: GNUnet on OpenWrt" msgstr "Tutorial: GNUnet auf OpenWrt" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 msgid "Configuration" msgstr "Konfiguration" @@ -4121,6 +4117,593 @@ msgstr "Oh mein Gott, ihr habt mir mein Internet kaputt gemacht" msgid "Videos related to GNUnet" msgstr "Videos zu GNUnet" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Motivation" +msgid "Project motivation" +msgstr "Motivation" + +#: template/l2o/index.html.j2:13 +#, fuzzy +#| msgid "GNUnet is a framework" +msgid "New Test Framework" +msgstr "GNUnet ist ein Rahmen" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +#, fuzzy +#| msgid "GNUnet is a framework" +msgid "New Test Framwork" +msgstr "GNUnet ist ein Rahmen" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +#, fuzzy +#| msgid "Configuration" +msgid "Topology Configuration" +msgstr "Konfiguration" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "Nachrichten-Archive" @@ -4275,6 +4858,21 @@ msgstr "" "alle Attribute zu entschlüsseln, zu denen der Nutzer ihm Zugang mittels des " "zugehörigen Schlüssels eingeräumt hat." +#~ msgid "Cadet-GTK" +#~ msgstr "Cadet-GTK" + +#~ msgid "" +#~ "Cadet-GTK " +#~ "is a convenient but feature-rich graphical application providing " +#~ "messaging using the CADET subsystem. It is developed using GTK and " +#~ "libhandy for a convergent design." +#~ msgstr "" +#~ "Cadet-GTK " +#~ "ist eine praktische, aber funktionsreiche grafische Anwendung, die " +#~ "Nachrichtenübermittlung unter Verwendung des CADET-Subsystem ermöglicht. " +#~ "Es wurde unter Verwendung von GTK und libhandy für eine konvergente " +#~ "Gestaltung entwickelt." + #~ msgid "The IRC channel" #~ msgstr "Der IRC Kanal" diff --git a/locale/es/LC_MESSAGES/messages.po b/locale/es/LC_MESSAGES/messages.po index b55a261d..20945ed2 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-06-09 05:22+0000\n" "Last-Translator: Samira Tamboura \n" "Language-Team: Spanish Cadet-GTK " -#| "is a convenient but feature-rich graphical application providing " -#| "messaging using especially the CADET subsystem. It is developed using GTK " -#| "and libhandy for a convergent design." msgid "" -"Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" -"Cadet-GTKes " -"una sencilla aplicación gráfica con abundantes herramientas, que ofrece un " -"servicio de mensajería usando principalmente el subsistema CADET. Es " -"desarrollado con GTK y libhandy para un diseño convergente." #: template/applications.html.j2:180 #, fuzzy @@ -3567,7 +3557,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 #, fuzzy #| msgid "Continuous Integration" msgid "Configuration" @@ -3766,6 +3757,589 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Documentation" +msgid "Project motivation" +msgstr "Documentación" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +#, fuzzy +#| msgid "Continuous Integration" +msgid "Topology Configuration" +msgstr "Integración continua" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "Archivo IRC:" @@ -3916,6 +4490,26 @@ msgstr "" "directorio descentralizado. Puede desencriptar todos esos atributos que el " "usuario le ha autorizado a acceder utilizando la clave respectiva." +#~ msgid "Cadet-GTK" +#~ msgstr "Cadet-GTK" + +#, fuzzy +#~| msgid "" +#~| "Cadet-GTK " +#~| "is a convenient but feature-rich graphical application providing " +#~| "messaging using especially the CADET subsystem. It is developed using " +#~| "GTK and libhandy for a convergent design." +#~ msgid "" +#~ "Cadet-GTK " +#~ "is a convenient but feature-rich graphical application providing " +#~ "messaging using the CADET subsystem. It is developed using GTK and " +#~ "libhandy for a convergent design." +#~ msgstr "" +#~ "Cadet-GTKes " +#~ "una sencilla aplicación gráfica con abundantes herramientas, que ofrece " +#~ "un servicio de mensajería usando principalmente el subsistema CADET. Es " +#~ "desarrollado con GTK y libhandy para un diseño convergente." + #~ msgid "The IRC channel" #~ msgstr "El canal IRC" diff --git a/locale/fr/LC_MESSAGES/messages.po b/locale/fr/LC_MESSAGES/messages.po index 93f11b3d..97f0a5b3 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-09-28 14:59+0000\n" "Last-Translator: Axelle Dimpre \n" "Language-Team: French Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" -"Cadet-GTK est " -"une interface graphique modeste mais riche en caractéristiques qui fournit " -"des services de messagerie en utilisant notamment le sous-système CADET. Il " -"est développé avec GTK et libhandy pour un design cohérent." #: template/applications.html.j2:180 msgid "groupchat" @@ -2980,7 +2976,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 #, fuzzy #| msgid "Continuous Integration" msgid "Configuration" @@ -3178,6 +3175,589 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "Vidéos en lien avec GNUnet" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Documentation" +msgid "Project motivation" +msgstr "Documentation" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +#, fuzzy +#| msgid "Continuous Integration" +msgid "Topology Configuration" +msgstr "Intégration continue" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "Archives des actualités :" @@ -3302,6 +3882,20 @@ msgid "" "authorized it to access using the respective key." msgstr "" +#~ msgid "Cadet-GTK" +#~ msgstr "Cadet-GTK" + +#~ msgid "" +#~ "Cadet-GTK " +#~ "is a convenient but feature-rich graphical application providing " +#~ "messaging using the CADET subsystem. It is developed using GTK and " +#~ "libhandy for a convergent design." +#~ msgstr "" +#~ "Cadet-GTK " +#~ "est une interface graphique modeste mais riche en caractéristiques qui " +#~ "fournit des services de messagerie en utilisant notamment le sous-système " +#~ "CADET. Il est développé avec GTK et libhandy pour un design cohérent." + #~ msgid "The IRC channel" #~ msgstr "La chaîne IRC" diff --git a/locale/hi/LC_MESSAGES/messages.po b/locale/hi/LC_MESSAGES/messages.po index 14b963bf..6284af60 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-03-09 18:35+0000\n" "Last-Translator: Jigisha Sharma \n" "Language-Team: Hindi \n" @@ -431,15 +431,15 @@ msgid "" msgstr "" #: template/applications.html.j2:160 -msgid "Cadet-GTK" +msgid "Messenger-GTK" msgstr "" #: template/applications.html.j2:162 msgid "" -"Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" #: template/applications.html.j2:180 @@ -2714,7 +2714,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 #, fuzzy #| msgid "Continuous Integration" msgid "Configuration" @@ -2907,6 +2908,589 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Documentation" +msgid "Project motivation" +msgstr "प्रलेखन" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +#, fuzzy +#| msgid "Continuous Integration" +msgid "Topology Configuration" +msgstr "लगातार एकीकरण" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "समाचार पुरालेख:" diff --git a/locale/it/LC_MESSAGES/messages.po b/locale/it/LC_MESSAGES/messages.po index 65198d66..511b67dd 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-06-19 12:58+0000\n" "Last-Translator: Francesca Cipriani \n" "Language-Team: Italian Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" -"Cadet-GTK è " -"un'applicazione grafica conveniente ma allo stesso tempo ricca di " -"funzionalità che fornisce messaggistica utilizzando il sottosistema CADET. È " -"sviluppata con GTK e libhandy per un design convergente." #: template/applications.html.j2:180 msgid "groupchat" @@ -3550,7 +3546,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 #, fuzzy #| msgid "Continuous Integration" msgid "Configuration" @@ -3749,6 +3746,589 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Motivation" +msgid "Project motivation" +msgstr "Motivazione" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +#, fuzzy +#| msgid "Continuous Integration" +msgid "Topology Configuration" +msgstr "Integrazione continuativa" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "Archivi delle notizie:" @@ -3871,6 +4451,20 @@ msgid "" "authorized it to access using the respective key." msgstr "" +#~ msgid "Cadet-GTK" +#~ msgstr "Cadet-GTK" + +#~ msgid "" +#~ "Cadet-GTK " +#~ "is a convenient but feature-rich graphical application providing " +#~ "messaging using the CADET subsystem. It is developed using GTK and " +#~ "libhandy for a convergent design." +#~ msgstr "" +#~ "Cadet-GTK è " +#~ "un'applicazione grafica conveniente ma allo stesso tempo ricca di " +#~ "funzionalità che fornisce messaggistica utilizzando il sottosistema " +#~ "CADET. È sviluppata con GTK e libhandy per un design convergente." + #~ msgid "The IRC channel" #~ msgstr "Canale IRC" diff --git a/locale/ja/LC_MESSAGES/messages.po b/locale/ja/LC_MESSAGES/messages.po index 93287d18..b1605afb 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-04-15 10:31+0000\n" "Last-Translator: Kanoko Kondo \n" "Language-Team: Japanese Cadet-GTK " -#| "is a convenient but feature-rich graphical application providing " -#| "messaging using especially the CADET subsystem. It is developed using GTK " -#| "and libhandy for a convergent design." msgid "" -"Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" -"Cadet-GTK は、" -"高い利便性と豊富な機能を備えたグラフィカル アプリケーションで、特に CADET サ" -"ブシステムを使用してメッセージ機能を提供します。GTK と libhandy を利用して開" -"発されいます。" #: template/applications.html.j2:180 msgid "groupchat" @@ -3227,7 +3217,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 #, fuzzy #| msgid "Continuous Integration" msgid "Configuration" @@ -3426,6 +3417,589 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Documentation" +msgid "Project motivation" +msgstr "資料" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +#, fuzzy +#| msgid "Continuous Integration" +msgid "Topology Configuration" +msgstr "継続的なインテグレーション" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "アーカイブ" @@ -3550,6 +4124,26 @@ msgid "" "authorized it to access using the respective key." msgstr "" +#~ msgid "Cadet-GTK" +#~ msgstr "Cadet-GTK" + +#, fuzzy +#~| msgid "" +#~| "Cadet-GTK " +#~| "is a convenient but feature-rich graphical application providing " +#~| "messaging using especially the CADET subsystem. It is developed using " +#~| "GTK and libhandy for a convergent design." +#~ msgid "" +#~ "Cadet-GTK " +#~ "is a convenient but feature-rich graphical application providing " +#~ "messaging using the CADET subsystem. It is developed using GTK and " +#~ "libhandy for a convergent design." +#~ msgstr "" +#~ "Cadet-GTK " +#~ "は、高い利便性と豊富な機能を備えたグラフィカル アプリケーションで、特に " +#~ "CADET サブシステムを使用してメッセージ機能を提供します。GTK と libhandy を" +#~ "利用して開発されいます。" + #~ msgid "The IRC channel" #~ msgstr "IRC チャネル" diff --git a/locale/ko/LC_MESSAGES/messages.po b/locale/ko/LC_MESSAGES/messages.po index cca22377..f996e702 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-04-11 02:59+0000\n" "Last-Translator: Chaewon Park \n" "Language-Team: Korean Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" #: template/applications.html.j2:180 @@ -2726,7 +2726,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 #, fuzzy #| msgid "Continuous Integration" msgid "Configuration" @@ -2919,6 +2920,589 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Documentation" +msgid "Project motivation" +msgstr "문서" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +#, fuzzy +#| msgid "Continuous Integration" +msgid "Topology Configuration" +msgstr "지속적 통합" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "뉴스 아카이브:" diff --git a/locale/messages.pot b/locale/messages.pot index 976c9f93..38bd7169 100644 --- a/locale/messages.pot +++ b/locale/messages.pot @@ -1,14 +1,14 @@ # Translations template for PROJECT. -# Copyright (C) 2021 ORGANIZATION +# Copyright (C) 2022 ORGANIZATION # This file is distributed under the same license as the PROJECT project. -# FIRST AUTHOR , 2021. +# FIRST AUTHOR , 2022. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -435,15 +435,15 @@ msgid "" msgstr "" #: template/applications.html.j2:160 -msgid "Cadet-GTK" +msgid "Messenger-GTK" msgstr "" #: template/applications.html.j2:162 msgid "" -"Cadet-GTK " -"is a convenient but feature-rich graphical application providing " -"messaging using the CADET subsystem. It is developed using GTK and " -"libhandy for a convergent design." +"Messenger-GTK " +"is a convergent GTK messaging application using the GNUnet Messenger " +"service. The goal is to provide private and secure communication between " +"any group of devices." msgstr "" #: template/applications.html.j2:180 @@ -2741,7 +2741,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 msgid "Configuration" msgstr "" @@ -2937,6 +2938,612 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +msgid "Project motivation" +msgstr "" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established " +"by NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to separate the " +"protocol plugins into processes (now called communicators) detached from " +"the main transport service. Three communicators were already implemented " +"(TCP, UDP and UNIX sockets). The old transport code is hard to maintain, " +"because it is cluttered with \"manipulation\" support code for TESTBED " +"(the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code " +"which is very hard to read to get an idea what the test code is doing. " +"Therefore the first task (milestone 1) is to implement a new testing " +"framework which uses network namespaces to make testing of TNG much " +"easier. Have a look into what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler testing library. In milestone 1 we implemented commands to setup the" +" netjails, the test environment for each peer, " +"to start a single peers and sending a simple test message. Because some " +"commands depend on other commands to be finished, and those commands are " +"asynchronous, we needed additional functionality in the command " +"interpreter library to block execution until some commands are finished " +"(e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network " +"characteristics like lossy connections or firewalls. To achieve this we " +"are working with network namespace. We have commands for starting and " +"stopping network namespaces. Those commands are scripts, which are using " +"several shell commands to setup the network namespace. A third script " +"then is responsible for start a GNUnet helper. This helper can load " +"plugins. Each plugin represents some test case. Per node in the network " +"namespaces one helper is started, which means on each node is a local " +"interpreter loop running. For a detailed description have a look into the" +" testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up " +"VLANs between network namespaces and a framework to test communication " +"between peers which are running in those VLANs. Finally a minimal Test " +"Case will be implemented. Despite the fact that the transport service is " +"already able to use several communicators (transport protocol " +"implementations), it will only use the tcp communicator, not the unix " +"socket nor the udp communicator, which already are in place and working. " +"
  • SUID helpers to setup network namespace and starting peers with " +"network namespace.
  • Basic transport-level operations (get " +"address, send, receive, connect).
  • Peers connected through test " +"and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers." +" The deliverable can be verified through out the specific test cases " +"running in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of" +" the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • " +"
  • Block execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in " +"the GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which " +"a peer can be reached can be delivered on handshake or by UDP broadcast. " +"With this milestone the transport service will be able to use more than " +"one communicator (pluggable transport).
  • unidirectional " +"communication and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly " +"connected. Therefore peers have to act as relay. To achieve this I will " +"implement the distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. " +"The test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT." +" The test cases proof that each peer can be reached, even if that peer is" +" behind a NAT. The test case are measuring the performance. This " +"measurement is used to compare with the outcome of the next milestone. " +"This result of this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control," +" quality of service optimizations) which will select the optimal " +"transport protocol for a given situation. I will analyze potential " +"performance gains by integrating libraries of the interpeer project. If " +"the effort of integrating interpeer presumably would lead to better " +"performance than other optimizations of the same amount of work, this " +"integration is done. I will finish the project with a performance " +"analysis to optimize the selection logic.
  • Queue management. " +"
  • Interpeer project synergy
    1. Analysis of the interpeer project " +"in regard to integrate it into GNUnet.
    2. Optional integration into" +" GNUnet, if it can be done at all and in a reasonable amount of " +"work.
  • Commands for performance measurement(s).
  • " +"
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the " +"simple send test. Obsolete in current code base!
" +"
src/testing/netjail_start.shScript to setup the netjail topology. Will be " +"execute by the following command.
src/testing/testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/netjail_exec.shScript to execute a local test interpreter per " +"node. Will be execute by the following command.
" +"
src/testing/testing_api_cmd_netjail_start_testsystem.cCommand to start the helper " +"processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper " +"processes.
src/testing/netjail_stop.shScript to stop the netjail " +"topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter " +"loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the " +"cmds for the simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test " +"system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two " +"peers.
src/transport/transport_api_cmd_send_simple.cCommand to send a simple message from one " +"peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test " +"system.
src/testing/testing_api_cmd_local_test_finished.cCommand " +"to send a message to the master loop, if the local loop has " +"finished.
" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first " +"node running during the simple send test case.
" +"
src/transport/test_transport_api2_tcp_node2.confConfiguration for the second" +" node running during the simple send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +" " +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The" +" script checks, if a kernel parameter is set to allow unprivileged users " +"to create network namespaces. The script than starts the following " +"gerneric binary in a network namespace.
src/transport/test_transport_start_with_config.cA generic binary to start a " +"test case which will be configured by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the " +"other netjail scripts.
All already existing " +"commands.All " +"commands changed to work with the topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +" " +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to" +" the master loop if a peer has started in local loop.
src/testing/testing_api_cmd_local_test_prepared.cCommand to send a message to" +" the master loop if a peer is ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"test_transport_simple_send_topo.conf
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template" +" for the peer configuration.
Topology configuration file for the simple send" +" test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with " +"new tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the " +"udp backchannel test case.
src/transport/test_transport_simple_send_broadcast.shAdded script for the UDB " +"broadcast test.
src/transport/test_transport_simple_send_string.shAdded script as an example " +"to start a test with inline topology configuration string.
All commandsChanged code to handle strings with topology information.
src/testing/netjail_start.shChanged the netjail start " +"script to configure port forwarding for specific protocols (tcp, " +"udp).
src/testing/netjail_*.shMoved to contrib/netjail " +"directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +"New plugin for the udp " +"broadcast test case. " +" Command to block the local " +"loop until triggered by a external signal.
src/transport/test_transport_plugin_cmd_simple_send_broadcast.c
src/transport/test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp " +"backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/testing_api_cmd_block_until_external_trigger.cc
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"Topology configuration for " +"the broadcast test.
src/transport/test_transport_simple_send_broadcast_topo.conf
test_transport_udp_backchannel_topo.confTopology configuration file for the udp " +"backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being isolated from each other to " +"test how GNUnet nodes with limited connectivity behave, and how the new " +"transport next generation implementation can help to circumvent the " +"connectivity obstacles. The network namespaces are span a network with " +"globally known nodes and several subnets separated from each other via a " +"single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This " +"script takes three arguments. The first is either the name of a " +"configuration for the test setup topology or a string containing the " +"topology information. The second is the process id of the test. The third" +" is a flag if the first parameter contains the name of the configuration " +"file or the topology string.
  • netjail_exec.sh: A script to run " +"some command in a specific namespace. This script takes eight arguments. " +"The first is the index of a node in a namespace for which we like to " +"execute a command. The second is the index of the namespace of the node. " +"The third is the command to execute, the fourth is the number of subnets," +" the fifth the number of nodes in each subnet, the sixth is the " +"identifier used by the ip-netns command, the sixth is a flag is" +" the topology information is given via a topology file of a string " +"containing the topology information..
  • netjail_stop.sh: A script " +"which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a" +" generic test binary (test_transport_start_with_config) which will start " +"the above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using " +"the command unshare. Using unshare one can create a namespace with its " +"own user namespace, where creating network namespaces is allowed. " +"Precondition to do this with unshare, is to set the " +"kernel.unprivileged_userns_clone kernel parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng " +"testing framework a special command is used: gnunet-cmds-helper This " +"commands itself is of a special kind named helper processes which " +"communicates via GNUNET_MessageHeaders on stdin/stdout with the process " +"that started the helper. The gnunet-cmds-helper is used to load testcase " +"plugins. Those plugins are implementations of an api which is used to " +"start different test cases. Those plugins are dynamically loaded by " +"gnunet-cmds-helper. Each plugin defines the commands which are running in" +" a local interpreter loop started by the helper on that specific network " +"namespace node. The plugins are also responsible for the communication " +"via the helper with the master interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library " +"was extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. " +"By default the continuation function of GNUNET_TESTING_AsyncContext is " +"the interpreter_next function of the interpreter loop (blocking " +"asynchronous command) which will be executed calling " +"GNUNET_TESTING_async_finish, when the asynchronous task finished, but " +"also can be any other function to be executed when the asynchronous task " +"is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +msgid "Topology Configuration" +msgstr "" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary " +"for starting netjail based tests.

Both method can be examined " +"in two example test scripts

" +"test_transport_send_simple.sh

and

" +"test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating " +"key/value(s) pairs and the chars '{' and '}' for grouping several " +"key/value pairs as value and '|' to separate a group of values from the " +"key/value(s) pair identifying a line.

Keys are

MThe number " +"of natted subnets in the topology. " +" NThe number of nodes in each " +"subnet. XThe Number of globally known (not natted) nodes. " +" K A " +"globally known (not natted) node. The number value identifies the " +"node. TThe default test plugin to execute. " +" RA router of" +" a subnet. PA subnet node with two key values, the " +"first one for identifying the subnet and the second for identifying the " +"node in the subnet. connectCan be one of several " +"grouped values of the P, K or R key. Configuring a connection to another " +"node.

The value of the connect key is a node key (P or K) with" +" two resp. one number value identifying the node, and an additional value" +" configuring a protocol.

If the connect key is used in a line " +"configuring a node it is used to configure a connection, which will " +"result in the node identified by the line P or K key will try to connect " +"nodes also identified with the P or K key via the configured " +"protocol. tcp_portCan be a grouped value of " +"the R key. The value of the tcp_port can be 0 or 1, if a port forwarding " +"to the first (index 1) node of a subnet is not or is configured for the " +"tcp protocol. udp_portCan be a grouped value of " +"the R key. The value of the tcp_port can be 0 or 1, if a port forwarding " +"to the first (index 1) node of a subnet is not or is configured for the " +"udp protocol. pluginCan be a grouped value of the P or K key." +" The value is the name of a plugin which will run on that peer instead of" +" the default plugin defined by key K. " +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "" diff --git a/locale/pt/LC_MESSAGES/messages.po b/locale/pt/LC_MESSAGES/messages.po index 2505bff8..9e47361f 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" @@ -429,15 +429,15 @@ msgid "" msgstr "" #: template/applications.html.j2:160 -msgid "Cadet-GTK" +msgid "Messenger-GTK" msgstr "" #: template/applications.html.j2:162 msgid "" -"Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" #: template/applications.html.j2:180 @@ -2682,7 +2682,8 @@ msgstr "" msgid "Tutorial: GNUnet on OpenWrt" msgstr "" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 msgid "Configuration" msgstr "" @@ -2871,6 +2872,585 @@ msgstr "" msgid "Videos related to GNUnet" msgstr "" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +msgid "Project motivation" +msgstr "" + +#: template/l2o/index.html.j2:13 +msgid "New Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +msgid "New Test Framwork" +msgstr "" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +msgid "Topology Configuration" +msgstr "" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "" diff --git a/locale/zh_Hant/LC_MESSAGES/messages.po b/locale/zh_Hant/LC_MESSAGES/messages.po index 3477ff24..afe66136 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: 2021-09-29 13:55+0200\n" +"POT-Creation-Date: 2022-02-25 20:18+0100\n" "PO-Revision-Date: 2021-08-24 08:59+0000\n" "Last-Translator: Ting-Yi Fu \n" "Language-Team: Chinese (Traditional) Cadet-GTK is a " -"convenient but feature-rich graphical application providing messaging using " -"the CADET subsystem. It is developed using GTK and libhandy for a convergent " -"design." +"Messenger-GTK is a " +"convergent GTK messaging application using the GNUnet Messenger service. The " +"goal is to provide private and secure communication between any group of " +"devices." msgstr "" -"Cadet-GTK 是一" -"種方便而功能豐富的圖形應用程序,Cadet-GTK 尤其使用 CADET 子系統提供消息傳遞。" -"其使用 GTK 和 libhandy 開發的以收斂設計。" #: template/applications.html.j2:180 msgid "groupchat" @@ -3369,7 +3366,8 @@ msgstr "教學:NetBSD 8.0 當前上的 GNUnet" msgid "Tutorial: GNUnet on OpenWrt" msgstr "教學:OpenWrt 上的 GNUnet" -#: template/install-on-openwrt.html.j2:47 +#: template/install-on-openwrt.html.j2:47 template/l2o/mile1.html.j2:113 +#: template/l2o/mile2.html.j2:63 template/l2o/mile3.html.j2:92 msgid "Configuration" msgstr "配置" @@ -3600,6 +3598,593 @@ msgstr "天哪,你們打破了我的網際網路" msgid "Videos related to GNUnet" msgstr "與 GNUnet 相關的影片" +#: template/l2o/index.html.j2:6 template/l2o/mile1.html.j2:6 +#: template/l2o/mile2.html.j2:6 template/l2o/mile3.html.j2:6 +#: template/l2o/testng.html.j2:6 +msgid "NGI Assure project: Layer-2-Overlay" +msgstr "" + +#: template/l2o/index.html.j2:12 template/l2o/index.html.j2:34 +#, fuzzy +#| msgid "Motivation" +msgid "Project motivation" +msgstr "動機" + +#: template/l2o/index.html.j2:13 +#, fuzzy +#| msgid "GNUnet is a framework" +msgid "New Test Framework" +msgstr "GNUnet 是一個框架" + +#: template/l2o/index.html.j2:14 template/l2o/index.html.j2:74 +msgid "Milestones" +msgstr "" + +#: template/l2o/index.html.j2:15 +msgid "Milestone 1" +msgstr "" + +#: template/l2o/index.html.j2:16 +msgid "Milestone 2" +msgstr "" + +#: template/l2o/index.html.j2:17 +msgid "Milestone 3" +msgstr "" + +#: template/l2o/index.html.j2:18 +msgid "Milestone 4" +msgstr "" + +#: template/l2o/index.html.j2:19 +msgid "Milestone 5" +msgstr "" + +#: template/l2o/index.html.j2:20 +msgid "Milestone 6" +msgstr "" + +#: template/l2o/index.html.j2:27 +msgid "" +"This project was funded through the NGI Assure Fund, a fund established by " +"NLnet." +msgstr "" + +#: template/l2o/index.html.j2:39 +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. One major change in the design is to " +"separate the protocol plugins into processes (now called communicators) " +"detached from the main transport service. Three communicators were already " +"implemented (TCP, UDP and UNIX sockets). The old transport code is hard to " +"maintain, because it is cluttered with \"manipulation\" support code for " +"TESTBED (the actual testing framework). Testing TRANSPORT is a hard task, " +"especially with TESTBED which has its own design flaws, and test code which " +"is very hard to read to get an idea what the test code is doing. Therefore " +"the first task (milestone 1) is to implement a new testing framework which " +"uses network namespaces to make testing of TNG much easier. Have a look into " +"what is planed for Layer-2-Overlay in the milestones." +msgstr "" + +#: template/l2o/index.html.j2:50 +#, fuzzy +#| msgid "GNUnet is a framework" +msgid "New Test Framwork" +msgstr "GNUnet 是一個框架" + +#: template/l2o/index.html.j2:54 +msgid "Command Style Pattern" +msgstr "" + +#: template/l2o/index.html.j2:58 +msgid "" +"The new style of writing tests in GNUnet is borrowed from the GNU Taler " +"testing library. In milestone 1 we " +"implemented commands to setup the netjails, the " +"test environment for each peer, to start a single peers and sending a simple " +"test message. Because some commands depend on other commands to be finished, " +"and those commands are asynchronous, we needed additional functionality in " +"the command interpreter library to block execution until some commands are " +"finished (e.g. all peers needs to be running, before peers starting to send " +"messages). For a detailed description have a look into the testing ng documentation." +msgstr "" + +#: template/l2o/index.html.j2:64 +msgid "Netjails" +msgstr "" + +#: template/l2o/index.html.j2:68 +msgid "" +"To do extensive testing of the new transport implementation one needs to " +"simulate various network topologies to enable faking network characteristics " +"like lossy connections or firewalls. To achieve this we are working with network " +"namespace. We have commands for starting and stopping network " +"namespaces. Those commands are scripts, which are using several shell " +"commands to setup the network namespace. A third script then is responsible " +"for start a GNUnet helper. This helper can load plugins. Each plugin " +"represents some test case. Per node in the network namespaces one helper is " +"started, which means on each node is a local interpreter loop running. For a " +"detailed description have a look into the testing ng " +"documentation." +msgstr "" + +#: template/l2o/index.html.j2:78 +msgid "Milestone 1 Test Infrastructure and minimal Test Case" +msgstr "" + +#: template/l2o/index.html.j2:81 +msgid "" +"The first subtask consists of implementing a framework for setting up VLANs " +"between network namespaces and a framework to test communication between " +"peers which are running in those VLANs. Finally a minimal Test Case will be " +"implemented. Despite the fact that the transport service is already able to " +"use several communicators (transport protocol implementations), it will only " +"use the tcp communicator, not the unix socket nor the udp communicator, " +"which already are in place and working.
  • SUID helpers to setup " +"network namespace and starting peers with network namespace.
  • Basic " +"transport-level operations (get address, send, receive, connect).
  • " +"
  • Peers connected through test and transfer data.
" +msgstr "" + +#: template/l2o/index.html.j2:93 +msgid "" +"First MVP which uses the TCP communicator to send messages between peers. " +"The deliverable can be verified through out the specific test cases running " +"in the GNUnet CI. Details" +msgstr "" + +#: template/l2o/index.html.j2:101 +msgid "Milestone 2 Enhancing Test Framework" +msgstr "" + +#: template/l2o/index.html.j2:104 +msgid "" +"To test more complex functionality we need to enhance the capabilities of " +"the testing framework. Hooks for performance measurement will be " +"implemented.
  • Enhancing transport-level operations.
  • Block " +"execution of commands at a peer. (Barriers).
" +msgstr "" + +#: template/l2o/index.html.j2:114 +msgid "" +"Outcome of this deliverable are advanced test case (again verifiable in the " +"GNUnet continuous integration (CI)). Details" +msgstr "" + +#: template/l2o/index.html.j2:122 +msgid "Milestone 3 UDP integration" +msgstr "" + +#: template/l2o/index.html.j2:125 +msgid "" +"With this subtask I will implement enhanced L2O features like using " +"unidirectional transport protocols with backchannels. Addresses by which a " +"peer can be reached can be delivered on handshake or by UDP broadcast. With " +"this milestone the transport service will be able to use more than one " +"communicator (pluggable transport).
  • unidirectional communication " +"and backchannels.
  • UDP broadcast.
" +msgstr "" + +#: template/l2o/index.html.j2:135 +msgid "" +"The CI contains test case which uses the UDP protocol to message between " +"peers and to learn about “foreign” peers. Details" +msgstr "" + +#: template/l2o/index.html.j2:143 +msgid "Milestone 4 Distance Vector" +msgstr "" + +#: template/l2o/index.html.j2:146 +msgid "" +"In this subtask I will enhance connectivity to peers not directly connected. " +"Therefore peers have to act as relay. To achieve this I will implement the " +"distance vector protocol." +msgstr "" + +#: template/l2o/index.html.j2:152 +msgid "" +"The CI contains test cases with a setup of peers not connected directly. The " +"test cases proof that each peer can reach any other peer." +msgstr "" + +#: template/l2o/index.html.j2:158 +msgid "Milestone 5 NAT Traversal" +msgstr "" + +#: template/l2o/index.html.j2:161 +msgid "" +"This subtask will make peers behind NAT reachable. Two simple traversal " +"methods will be implemented.
  • NAT traversal via UpnPC.
  • " +"
  • Autonomous NAT Traversal using fake ICMP messages.
" +msgstr "" + +#: template/l2o/index.html.j2:171 +msgid "" +"The CI contains test case with a peer setup containing peer behind a NAT. " +"The test cases proof that each peer can be reached, even if that peer is " +"behind a NAT. The test case are measuring the performance. This measurement " +"is used to compare with the outcome of the next milestone. This result of " +"this milestone will be a first stable release." +msgstr "" + +#: template/l2o/index.html.j2:178 +msgid "Milestone 6 Optimization" +msgstr "" + +#: template/l2o/index.html.j2:181 +msgid "" +"In this subtask I will implement algorithms (flow and congestion control, " +"quality of service optimizations) which will select the optimal transport " +"protocol for a given situation. I will analyze potential performance gains " +"by integrating libraries of the interpeer project. If the effort of " +"integrating interpeer presumably would lead to better performance than other " +"optimizations of the same amount of work, this integration is done. I will " +"finish the project with a performance analysis to optimize the selection " +"logic.
  • Queue management.
  • Interpeer project synergy
      " +"
    1. Analysis of the interpeer project in regard to integrate it into GNUnet." +"
    2. Optional integration into GNUnet, if it can be done at all and in " +"a reasonable amount of work.
  • Commands for performance " +"measurement(s).
  • Performance analysis.
" +msgstr "" + +#: template/l2o/index.html.j2:201 +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." +msgstr "" + +#: template/l2o/mile1.html.j2:12 template/l2o/mile2.html.j2:12 +#: template/l2o/mile3.html.j2:12 template/l2o/testng.html.j2:12 +msgid "Project main page" +msgstr "" + +#: template/l2o/mile1.html.j2:20 template/l2o/mile2.html.j2:20 +#: template/l2o/mile3.html.j2:29 +msgid "Master Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:22 +msgid "" +" " +" " +" " +" " +"
src/transport/test_transport_api_cmd_simple_send.cBinary for starting the simple send test. " +"Obsolete in current code base!
src/testing/netjail_start.shScript to setup the " +"netjail topology. Will be execute by the following command.
src/testing/" +"testing_api_cmd_netjail_start.cCommand to create the netjail setup.
src/testing/" +"netjail_exec.shScript " +"to execute a local test interpreter per node. Will be execute by the " +"following command.
src/testing/" +"testing_api_cmd_netjail_start_testsystem.cCommand to start the helper processes.
src/testing/testing_api_cmd_netjail_stop_testsystem.cCommand to stop the helper processes.
src/testing/netjail_stop.shScript to stop the netjail topology.
src/testing/testing_api_cmd_netjail_stop.cCommand to stop the test setup.
" +msgstr "" + +#: template/l2o/mile1.html.j2:65 template/l2o/mile2.html.j2:48 +#: template/l2o/mile3.html.j2:66 +msgid "Local Loop" +msgstr "" + +#: template/l2o/mile1.html.j2:67 +msgid "" +" " +" " +" " +"" +msgstr "" + +#: template/l2o/mile1.html.j2:115 +msgid "" +"
src/testing/gnunet-cmds-helper.cHelper to start the local interpreter loop.
src/transport/test_transport_plugin_cmd_simple_send.cPlugin which creates the cmds for the " +"simple send test case.
src/testing/testing_api_cmd_system_create.cCommand to create a local test system.
src/transport/transport_api_cmd_start_peer.cCommand to start a peer.
src/transport/transport_api_cmd_connecting_peers.c Command to connect two peers.
src/transport/" +"transport_api_cmd_send_simple.cCommand to send a simple message from one peer to another.
src/transport/transport_api_cmd_stop_peer.cCommand to stop a peer.
src/testing/testing_api_cmd_system_destroy.cCommand to destroy the local test system.
src/testing/testing_api_cmd_local_test_finished.cCommand to send " +"a message to the master loop, if the local loop has finished.
" +"
src/transport/test_transport_api2_tcp_node1.confConfiguration for the first node running " +"during the simple send test case.
src/transport/" +"test_transport_api2_tcp_node2.confConfiguration for the second node running during the simple " +"send test case.
" +msgstr "" + +#: template/l2o/mile2.html.j2:22 +msgid "" +" " +"
src/transport/test_transport_simple_send.shIntroduced scripts to start the tests. The script " +"checks, if a kernel parameter is set to allow unprivileged users to create " +"network namespaces. The script than starts the following gerneric binary in " +"a network namespace.
src/transport/" +"test_transport_start_with_config.cA generic binary to start a test case which will be configured " +"by a configuration file.
src/testing/testing.cAdded code to read netjail topology from a file.
src/testing/topo.shScript which reads the topology from a file for the use in the other " +"netjail scripts.
All already existing commands.All commands changed to work with the " +"topology data.
" +msgstr "" + +#: template/l2o/mile2.html.j2:50 +msgid "" +"
src/testing/testing_api_cmd_send_peer_ready.cCommand to send a message to the master loop if a " +"peer has started in local loop.
src/testing/" +"testing_api_cmd_local_test_prepared.cCommand to send a message to the master loop if a peer is " +"ready to shutdown.
" +msgstr "" + +#: template/l2o/mile2.html.j2:65 +msgid "" +"
src/transport/transport_api_cmd_start_peer.cCommand now uses a configuration template for the " +"peer configuration.
test_transport_simple_send_topo.confTopology configuration " +"file for the simple send test case.
" +msgstr "" + +#: template/l2o/mile3.html.j2:20 +msgid "Bug fixing" +msgstr "" + +#: template/l2o/mile3.html.j2:22 +msgid "" +"Some bugs in the tng service and communicator code which were found with new " +"tests were fixed." +msgstr "" + +#: template/l2o/mile3.html.j2:31 +msgid "" +" " +"
src/transport/test_transport_udp_backchannel.shAdded script to start the udp backchannel " +"test case.
src/transport/test_transport_simple_send_broadcast." +"shAdded script for the " +"UDB broadcast test.
src/transport/" +"test_transport_simple_send_string.shAdded script as an example to start a test with inline " +"topology configuration string.
All commandsChanged code to handle strings with " +"topology information.
src/testing/netjail_start.shChanged the netjail " +"start script to configure port forwarding for specific protocols (tcp, udp)." +"
src/testing/netjail_*.shMoved to contrib/netjail directory
" +msgstr "" + +#: template/l2o/mile3.html.j2:68 +msgid "" +" " +" " +"
src/transport/test_transport_plugin_cmd_simple_send_broadcast.cNew plugin for the udp " +"broadcast test case.
src/transport/" +"test_transport_plugin_cmd_udp_backchannel.cNew plugin for the udp backchannel test case.
src/transport/transport_api_cmd_backchannel_check.cCommand to check for a udp " +"backchannel specific log entry.
src/testing/" +"testing_api_cmd_block_until_external_trigger.ccCommand to block the local loop until triggered by " +"a external signal.
" +msgstr "" + +#: template/l2o/mile3.html.j2:94 +msgid "" +"
src/transport/test_transport_simple_send_broadcast_topo.confTopology configuration for the " +"broadcast test.
test_transport_udp_backchannel_topo.confTopology configuration " +"file for the udp backchannel test case.
" +msgstr "" + +#: template/l2o/testng.html.j2:20 +msgid "Netjail setup and execution" +msgstr "" + +#: template/l2o/testng.html.j2:22 +msgid "" +"Netjail is the GNUnet naming for having several network namespaces, being " +"isolated from each other to test how GNUnet nodes with limited connectivity " +"behave, and how the new transport next generation implementation can help to " +"circumvent the connectivity obstacles. The network namespaces are span a " +"network with globally known nodes and several subnets separated from each " +"other via a single router. We have three scripts for the test setup:
    " +"
  • netjail_start.sh: A script to setup the network namespaces. This script " +"takes three arguments. The first is either the name of a configuration for " +"the test setup topology or a string containing the topology information. The " +"second is the process id of the test. The third is a flag if the first " +"parameter contains the name of the configuration file or the topology string." +"
  • netjail_exec.sh: A script to run some command in a specific " +"namespace. This script takes eight arguments. The first is the index of a " +"node in a namespace for which we like to execute a command. The second is " +"the index of the namespace of the node. The third is the command to execute, " +"the fourth is the number of subnets, the fifth the number of nodes in each " +"subnet, the sixth is the identifier used by the ip-netns command, the sixth " +"is a flag is the topology information is given via a topology file of a " +"string containing the topology information..
  • netjail_stop.sh: A " +"script which remove all the network namespace setup by netjail_start.sh. The " +"arguments are the same as those for netjail_start.sh.
The is a " +"generic test binary (test_transport_start_with_config) which will start the " +"above mentioned scripts. Because creating network namespaces is only " +"permitted for privileged users the generic test binary is not start " +"directly, but via scripts. This script starts the generic binary using the " +"command unshare. Using unshare one can create a namespace with its own user " +"namespace, where creating network namespaces is allowed. Precondition to do " +"this with unshare, is to set the kernel.unprivileged_userns_clone kernel " +"parameter." +msgstr "" + +#: template/l2o/testng.html.j2:38 +msgid "CMD helper and testcase plugins" +msgstr "" + +#: template/l2o/testng.html.j2:42 +msgid "" +"Although netjail_exec.sh can execute an arbitrary command in the ng testing " +"framework a special command is used: gnunet-cmds-helper This commands itself " +"is of a special kind named helper processes which communicates via " +"GNUNET_MessageHeaders on stdin/stdout with the process that started the " +"helper. The gnunet-cmds-helper is used to load testcase plugins. Those " +"plugins are implementations of an api which is used to start different test " +"cases. Those plugins are dynamically loaded by gnunet-cmds-helper. Each " +"plugin defines the commands which are running in a local interpreter loop " +"started by the helper on that specific network namespace node. The plugins " +"are also responsible for the communication via the helper with the master " +"interpreter loop." +msgstr "" + +#: template/l2o/testng.html.j2:48 +msgid "Command Pattern" +msgstr "" + +#: template/l2o/testng.html.j2:52 +msgid "" +"The testing framework borrowed from the GNU Taler testing library was " +"extended to handle asychronous commands. Therefore a struct " +"GNUNET_TESTING_AsyncContext was added to struct GNUNET_TESTING_Command. By " +"default the continuation function of GNUNET_TESTING_AsyncContext is the " +"interpreter_next function of the interpreter loop (blocking asynchronous " +"command) which will be executed calling GNUNET_TESTING_async_finish, when " +"the asynchronous task finished, but also can be any other function to be " +"executed when the asynchronous task is non blocking." +msgstr "" + +#: template/l2o/testng.html.j2:57 +#, fuzzy +#| msgid "Configuration" +msgid "Topology Configuration" +msgstr "配置" + +#: template/l2o/testng.html.j2:61 +msgid "" +"The topology of the netjail setup can be configured via a configuration " +"file, or with a configuration string handed over to the generic binary for " +"starting netjail based tests.

Both method can be examined in two " +"example test scripts

test_transport_send_simple.sh

and
test_transport_send_simple_string.sh

The Syntax of the " +"configuration is as follows.

The configuration string is " +"structured by lines and the delimiter ':' used for seperating key/value(s) " +"pairs and the chars '{' and '}' for grouping several key/value pairs as " +"value and '|' to separate a group of values from the key/value(s) pair " +"identifying a line.

Keys are

" +" " +"
MThe number of natted subnets in the topology." +"
NThe number of nodes in each subnet.
XThe Number of globally known (not " +"natted) nodes.
K A globally known (not natted) node. The number value " +"identifies the node.
TThe default test plugin to execute.
RA router of a " +"subnet.
PA subnet node with two key values, the first one for " +"identifying the subnet and the second for identifying the node in the subnet." +"
connectCan be one of several grouped values of the P, K or R key. " +"Configuring a connection to another node.

The value of the " +"connect key is a node key (P or K) with two resp. one number value " +"identifying the node, and an additional value configuring a protocol.
If the connect key is used in a line configuring a node it is used to " +"configure a connection, which will result in the node identified by the line " +"P or K key will try to connect nodes also identified with the P or K key via " +"the configured protocol.
tcp_portCan be a grouped value of the R key. The " +"value of the tcp_port can be 0 or 1, if a port forwarding to the first " +"(index 1) node of a subnet is not or is configured for the tcp protocol.
udp_portCan be a grouped value of the R key. The value of the tcp_port " +"can be 0 or 1, if a port forwarding to the first (index 1) node of a subnet " +"is not or is configured for the udp protocol.
" +"
pluginCan be a grouped value " +"of the P or K key. The value is the name of a plugin which will run on that " +"peer instead of the default plugin defined by key K.
" +msgstr "" + #: template/news/index.html.j2:45 msgid "News archives:" msgstr "新聞檔案:" @@ -3731,6 +4316,19 @@ msgstr "" "依賴方從分散的目錄中檢索加密的身份數據。它能夠使用相應的密鑰解密所有用戶已授" "權訪問的屬性。" +#~ msgid "Cadet-GTK" +#~ msgstr "學員GTK (Cadet-GTK)" + +#~ msgid "" +#~ "Cadet-GTK " +#~ "is a convenient but feature-rich graphical application providing " +#~ "messaging using the CADET subsystem. It is developed using GTK and " +#~ "libhandy for a convergent design." +#~ msgstr "" +#~ "Cadet-GTK 是" +#~ "一種方便而功能豐富的圖形應用程序,Cadet-GTK 尤其使用 CADET 子系統提供消息" +#~ "傳遞。其使用 GTK 和 libhandy 開發的以收斂設計。" + #~ msgid "The IRC channel" #~ msgstr "IRC頻道" diff --git a/template/news/2022-02-0.16.0.html.j2 b/template/news/2022-02-0.16.0.html.j2 new file mode 100644 index 00000000..aaa55302 --- /dev/null +++ b/template/news/2022-02-0.16.0.html.j2 @@ -0,0 +1,80 @@ +{% extends "common/news.j2" %} +{% block body_content %} +

GNUnet 0.16.0 released

+

+ We are pleased to announce the release of GNUnet 0.16.0. +
+ This is a new major release. It breaks protocol compatibility with the 0.15.x versions. + Please be aware that Git master is thus henceforth (and has been for a + while) INCOMPATIBLE with + the 0.15.x GNUnet network, and interactions between old and new peers + will result in issues. 0.15.x peers will be able to communicate with Git + master or 0.16.x peers, but some services - in particular GNS - will not be compatible.
+ In terms of usability, users should be aware that there are still + a number of known open issues in particular with respect to ease + of use, but also some critical privacy issues especially for mobile users. + Also, the nascent network is tiny and thus unlikely to + provide good anonymity or extensive amounts of interesting information. + As a result, the 0.16.0 release is still only suitable for early adopters + with some reasonable pain tolerance. +

+

Download links

+ +

+ The GPG key used to sign is: 3D11063C10F98D14BD24D1470B0998EF86F59B6A +

+

+ Note that due to mirror synchronization, not all links might be functional + early after the release. For direct access try + http://ftp.gnu.org/gnu/gnunet/ +

+

Noteworthy changes in 0.16.0 (since 0.15.3)

+
    +
  • GNS: +
      +
    • New record flag: CRITICAL. For records that must be processed otherwise resolution must fail. #7169
    • +
    • Deletion of records and reduction of expiration times is now properly handled with respect to monotonically increasing expiratin times. #7170
    • +
    • VPN tunnel establishment is moved out of the GNS resolver to be handled by applications (such as the DNS2GNS service). #7171
    • +
    • Introduces new record type REDIRECT which replaces the previous (ab)use of CNAME records. #7172
    • +
    • The specification has been updated to reflect the changes. LSD0001
    • + +
    +
  • +
  • DHT: +
      +
    • Routes can now be signed. #4164
    • +
    • Changed distance metric to a more traditional XOR. #7136
    • +
    • The specification has been updated to reflect the changes. LSD0004
    • +
    +
  • +
  • RECLAIM: Added some preliminary support for Decentralized Identifier (DID) and Verifiable Credentials (VCs).
  • +
  • UTIL: Add Clause-Schnorr blind signatures. For use in Taler.
  • +
  • BUILD: Building from git now requires recutils. The bootstrap will generate up-to-date header files from GANA.
  • +
+

+ A detailed list of changes can be found in the ChangeLog and + the bug tracker. +

+

Known Issues

+
    +
  • There are known major design issues in the TRANSPORT, ATS and CORE subsystems which will need to be addressed in the future to achieve acceptable usability, performance and security.
  • +
  • There are known moderate implementation limitations in CADET that negatively impact performance.
  • +
  • There are known moderate design issues in FS that also impact usability and performance.
  • +
  • There are minor implementation limitations in SET that create unnecessary attack surface for availability.
  • +
  • The RPS subsystem remains experimental.
  • +
  • Some high-level tests in the test-suite fail non-deterministically due to the low-level TRANSPORT issues.
  • +
+

+ In addition to this list, you may also want to consult our bug tracker at bugs.gnunet.org which lists about 190 more specific issues. +

+ +

Thanks

+

+ This release was the work of many people. The following people contributed code and were thus easily identified: + Christian Grothoff, Tristan Schwieren, Alessio Vanni, Florian Dold, Thien-Thi Nguyen, t3sserakt, Lucien Heuzeveldt, Gian Demarmels, madmurphy, TheJackiMonster and Martin Schanzenbach. +

+{% endblock body_content %} diff --git a/www.yml b/www.yml index d49a9f52..c44a7527 100644 --- a/www.yml +++ b/www.yml @@ -29,6 +29,9 @@ meetingnotes: 2019: 2019-12-27 2020: 2020-12-30 newsposts: + - page: 2022-02-0.16.0.html + date: 2022-02-25 + title: GNUnet 0.16.0 - page: 2021-12-GNSSpecISE.html date: 2021-12-28 title: GNS Technical Specification Call for Reviews -- cgit v1.2.3