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 <http://www.gnu.org/licenses/>.
*/
* @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"
* Network type offered by this queue.
*/
enum GNUNET_ATS_Network_Type nt;
+
+ // FIXME: add ATS-specific fields here!
};
*/
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;
+
};