diff options
author | Matthias Wachs <wachs@net.in.tum.de> | 2010-10-26 16:25:50 +0000 |
---|---|---|
committer | Matthias Wachs <wachs@net.in.tum.de> | 2010-10-26 16:25:50 +0000 |
commit | b7c944dd5acdcdb01503a69ca6e4899341791232 (patch) | |
tree | 4ac7e4fea43b0c21407d8e34bb7418290225e0dd /src/util/bandwidth.c | |
parent | 10445c2436ebf4db0d3ea96a1d939dbf99f864d2 (diff) | |
download | gnunet-b7c944dd5acdcdb01503a69ca6e4899341791232.tar.gz gnunet-b7c944dd5acdcdb01503a69ca6e4899341791232.zip |
some changes bandwidth carriage
Diffstat (limited to 'src/util/bandwidth.c')
-rw-r--r-- | src/util/bandwidth.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/util/bandwidth.c b/src/util/bandwidth.c index a08bb1f43..4e34f6f06 100644 --- a/src/util/bandwidth.c +++ b/src/util/bandwidth.c | |||
@@ -178,21 +178,27 @@ update_tracker (struct GNUNET_BANDWIDTH_Tracker *av) | |||
178 | delta_time = now.value - av->last_update__.value; | 178 | delta_time = now.value - av->last_update__.value; |
179 | delta_avail = (delta_time * ((unsigned long long) av->available_bytes_per_s__) + 500LL) / 1000LL; | 179 | delta_avail = (delta_time * ((unsigned long long) av->available_bytes_per_s__) + 500LL) / 1000LL; |
180 | av->consumption_since_last_update__ -= delta_avail; | 180 | av->consumption_since_last_update__ -= delta_avail; |
181 | av->last_update__ = now; | ||
181 | if (av->consumption_since_last_update__ < 0) | 182 | if (av->consumption_since_last_update__ < 0) |
182 | { | 183 | { |
183 | left_bytes = - av->consumption_since_last_update__; | 184 | left_bytes = - av->consumption_since_last_update__; |
184 | max_carry = av->available_bytes_per_s__ * av->max_carry_s__; | 185 | max_carry = av->available_bytes_per_s__ * av->max_carry_s__; |
186 | if (max_carry < GNUNET_SERVER_MAX_MESSAGE_SIZE) | ||
187 | max_carry = GNUNET_SERVER_MAX_MESSAGE_SIZE; | ||
188 | av->consumption_since_last_update__ = -left_bytes; | ||
185 | if (max_carry > left_bytes) | 189 | if (max_carry > left_bytes) |
186 | av->consumption_since_last_update__ = -max_carry; | 190 | av->consumption_since_last_update__ = -left_bytes; |
191 | else | ||
192 | av->consumption_since_last_update__ = -max_carry; | ||
187 | } | 193 | } |
188 | #if DEBUG_BANDWIDTH | 194 | #if DEBUG_BANDWIDTH |
189 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 195 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
190 | "Tracker %p updated, have %u Bps, last update was %llu ms ago\n", | 196 | "Tracker %p updated, have %u Bps, last update was %llu ms ago\n", |
191 | av, | 197 | av, |
192 | (unsigned int) av->available_bytes_per_s__, | 198 | (unsigned int) av->available_bytes_per_s__, |
193 | (unsigned long long) (now.value - av->last_update__.value)); | 199 | (unsigned long long) delta_time); |
194 | #endif | 200 | #endif |
195 | av->last_update__ = now; | 201 | |
196 | } | 202 | } |
197 | 203 | ||
198 | 204 | ||