[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r35191 - gnunet/src/ats
From: |
gnunet |
Subject: |
[GNUnet-SVN] r35191 - gnunet/src/ats |
Date: |
Mon, 9 Feb 2015 13:17:18 +0100 |
Author: grothoff
Date: 2015-02-09 13:17:18 +0100 (Mon, 09 Feb 2015)
New Revision: 35191
Modified:
gnunet/src/ats/ats_api_connectivity.c
gnunet/src/ats/ats_api_performance.c
gnunet/src/ats/ats_api_scheduling.c
Log:
-use backoff for reconnects
Modified: gnunet/src/ats/ats_api_connectivity.c
===================================================================
--- gnunet/src/ats/ats_api_connectivity.c 2015-02-09 11:59:59 UTC (rev
35190)
+++ gnunet/src/ats/ats_api_connectivity.c 2015-02-09 12:17:18 UTC (rev
35191)
@@ -78,6 +78,10 @@
*/
struct GNUNET_SCHEDULER_Task *task;
+ /**
+ * Reconnect backoff delay.
+ */
+ struct GNUNET_TIME_Relative backoff;
};
@@ -125,7 +129,8 @@
GNUNET_CLIENT_disconnect (ch->client);
ch->client = NULL;
}
- ch->task = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS,
+ ch->backoff = GNUNET_TIME_STD_BACKOFF (ch->backoff);
+ ch->task = GNUNET_SCHEDULER_add_delayed (ch->backoff,
&reconnect_task,
ch);
}
Modified: gnunet/src/ats/ats_api_performance.c
===================================================================
--- gnunet/src/ats/ats_api_performance.c 2015-02-09 11:59:59 UTC (rev
35190)
+++ gnunet/src/ats/ats_api_performance.c 2015-02-09 12:17:18 UTC (rev
35191)
@@ -221,9 +221,14 @@
/**
* Task to trigger reconnect.
*/
- struct GNUNET_SCHEDULER_Task * task;
+ struct GNUNET_SCHEDULER_Task *task;
/**
+ * Reconnect backoff delay.
+ */
+ struct GNUNET_TIME_Relative backoff;
+
+ /**
* Monitor request multiplexing
*/
uint32_t monitor_id;
@@ -609,6 +614,7 @@
GNUNET_break(0);
goto reconnect;
}
+ ph->backoff = GNUNET_TIME_UNIT_ZERO;
GNUNET_CLIENT_receive (ph->client,
&process_ats_message,
ph,
@@ -635,8 +641,10 @@
GNUNET_BANDWIDTH_value_init (0),
NULL, 0);
}
- ph->task = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS,
- &reconnect_task, ph);
+ ph->backoff = GNUNET_TIME_STD_BACKOFF (ph->backoff);
+ ph->task = GNUNET_SCHEDULER_add_delayed (ph->backoff,
+ &reconnect_task,
+ ph);
}
Modified: gnunet/src/ats/ats_api_scheduling.c
===================================================================
--- gnunet/src/ats/ats_api_scheduling.c 2015-02-09 11:59:59 UTC (rev 35190)
+++ gnunet/src/ats/ats_api_scheduling.c 2015-02-09 12:17:18 UTC (rev 35191)
@@ -145,6 +145,11 @@
struct GNUNET_SCHEDULER_Task *task;
/**
+ * Reconnect backoff delay.
+ */
+ struct GNUNET_TIME_Relative backoff;
+
+ /**
* Size of the @e session_array.
*/
unsigned int session_array_size;
@@ -200,7 +205,8 @@
NULL, NULL, NULL,
GNUNET_BANDWIDTH_ZERO,
GNUNET_BANDWIDTH_ZERO);
- sh->task = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS,
+ sh->backoff = GNUNET_TIME_STD_BACKOFF (sh->backoff);
+ sh->task = GNUNET_SCHEDULER_add_delayed (sh->backoff,
&reconnect_task,
sh);
}
@@ -432,6 +438,7 @@
GNUNET_break (0);
return;
}
+ sh->backoff = GNUNET_TIME_UNIT_ZERO;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"ATS suggests address slot %u for peer `%s' using plugin %s\n",
ar->slot,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r35191 - gnunet/src/ats,
gnunet <=