planning ahead
authorChristian Grothoff <christian@grothoff.org>
Sat, 26 Jan 2019 17:15:17 +0000 (18:15 +0100)
committerChristian Grothoff <christian@grothoff.org>
Sat, 26 Jan 2019 17:15:17 +0000 (18:15 +0100)
src/transport/gnunet-service-tng.c

index 707fe49a754bd437ec2bb04e914ffa145fd3bc82..a32d1872c052f19729f7a14b2a28d69bad98dcb8 100644 (file)
  *      (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!
  * - 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"