[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r10698 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r10698 - gnunet/src/transport |
Date: |
Thu, 25 Mar 2010 15:44:05 +0100 |
Author: grothoff
Date: 2010-03-25 15:44:05 +0100 (Thu, 25 Mar 2010)
New Revision: 10698
Modified:
gnunet/src/transport/gnunet-service-transport.c
Log:
more gentle enforcement
Modified: gnunet/src/transport/gnunet-service-transport.c
===================================================================
--- gnunet/src/transport/gnunet-service-transport.c 2010-03-25 14:33:27 UTC
(rev 10697)
+++ gnunet/src/transport/gnunet-service-transport.c 2010-03-25 14:44:05 UTC
(rev 10698)
@@ -3171,10 +3171,22 @@
ntohs (message->type), GNUNET_i2s (peer));
#endif
if (GNUNET_YES == GNUNET_BANDWIDTH_tracker_consume (&n->in_tracker,
- msize))
- n->quota_violation_count++;
+ (ssize_t) msize))
+ {
+ n->quota_violation_count++;
+ if (n->quota_violation_count > QUOTA_VIOLATION_DROP_THRESHOLD)
+ {
+ /* since we'll be dropping, only count this message for half
so that
+ peers that send aggressively at the quota don't get
"punished"
+ forever */
+ GNUNET_BANDWIDTH_tracker_consume (&n->in_tracker,
+ - (ssize_t) msize / 2);
+ }
+ }
else
- n->quota_violation_count = 0; /* back within limits */
+ {
+ n->quota_violation_count = 0; /* back within limits */
+ }
GNUNET_STATISTICS_update (stats,
gettext_noop ("# payload received from
other peers"),
msize,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r10698 - gnunet/src/transport,
gnunet <=