From: Christian Grothoff Date: Thu, 15 Nov 2018 22:36:28 +0000 (+0100) Subject: notes X-Git-Tag: v0.11.0~238^2 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=35e5be0b0b4c7aea5a56d6a62333ab3a964a2972;p=oweals%2Fgnunet.git notes --- diff --git a/src/include/gnunet_bandwidth_lib.h b/src/include/gnunet_bandwidth_lib.h index 78610c48b..4395b878b 100644 --- a/src/include/gnunet_bandwidth_lib.h +++ b/src/include/gnunet_bandwidth_lib.h @@ -11,7 +11,7 @@ WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. - + You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ diff --git a/src/transport/gnunet-service-tng.c b/src/transport/gnunet-service-tng.c index 555210585..c7bdfd77c 100644 --- a/src/transport/gnunet-service-tng.c +++ b/src/transport/gnunet-service-tng.c @@ -19,6 +19,15 @@ * @file transport/gnunet-service-transport.c * @brief main for gnunet-service-transport * @author Christian Grothoff + * + * TODO: + * - make *our* collected addresses available somehow somewhere + * => Choices: in peerstore or revive/keep peerinfo? + * - MTU information is missing for queues! + * - start supporting monitor logic (add functions to signal monitors!) + * - manage fragmentation/defragmentation, retransmission, track RTT, loss, etc. + * - ask ATS about bandwidth allocation + * - */ #include "platform.h" #include "gnunet_util_lib.h" @@ -133,6 +142,8 @@ struct Queue * Network type offered by this queue. */ enum GNUNET_ATS_Network_Type nt; + + // FIXME: add ATS-specific fields here! }; @@ -167,6 +178,18 @@ struct Neighbour */ struct Queue *queue_tail; + /** + * Quota at which CORE is allowed to transmit to this peer + * according to ATS. + * + * FIXME: not yet used, tricky to get right given multiple queues! + * (=> Idea: let ATS set a quota per queue and we add them up here?) + * FIXME: how do we set this value initially when we tell CORE? + * Options: start at a minimum value or at literally zero (before ATS?) + * (=> Current thought: clean would be zero!) + */ + struct GNUNET_BANDWIDTH_Value32NBO quota_out; + }; diff --git a/src/transport/transport.h b/src/transport/transport.h index 129b1ce15..423d3cefa 100644 --- a/src/transport/transport.h +++ b/src/transport/transport.h @@ -800,6 +800,8 @@ struct GNUNET_TRANSPORT_AddQueueMessage */ uint32_t nt; + // FIXME: add MTU? + /* followed by UTF-8 encoded, 0-terminated human-readable address */ };