From 9830ef2bd3cdcdda93a51cdae56f19ee80f53fc8 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sat, 26 Jan 2019 18:15:17 +0100 Subject: planning ahead --- src/transport/gnunet-service-tng.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/transport/gnunet-service-tng.c b/src/transport/gnunet-service-tng.c index 707fe49a7..a32d1872c 100644 --- a/src/transport/gnunet-service-tng.c +++ b/src/transport/gnunet-service-tng.c @@ -32,10 +32,17 @@ * (which could be core-data, background-channel traffic, or * transport-to-transport traffic) * - * Implement: + * Implement next: * - ACK handling / retransmission * - track RTT, distance, loss, etc. - * - DV data structures, learning, forgetting & using them! + * - DV data structures: + * + learning + * + forgetting + * + using them! + * - routing of messages (using DV data structures!) + * - handling of DV-boxed messages that need to be forwarded + * - backchannel message encryption & decryption + * - * * Easy: * - use ATS bandwidth allocation callback and schedule transmissions! @@ -51,6 +58,10 @@ * - if messages are below MTU, consider adding ACKs and other stuff * (requires planning at receiver, and additional MST-style demultiplex * at receiver!) + * - could avoid copying body of message into each fragment and keep + * fragments as just pointers into the original message and only + * fully build fragments just before transmission (optimization, should + * reduce CPU and memory use) * * Design realizations / discussion: * - communicators do flow control by calling MQ "notify sent" -- cgit v1.2.3