* Capped rate can only go as low as default_MinRate which is 8bits/s
authorFaiyaz Ahmed <faiyaza@cs.princeton.edu>
Tue, 19 Dec 2006 16:52:24 +0000 (16:52 +0000)
committerFaiyaz Ahmed <faiyaza@cs.princeton.edu>
Tue, 19 Dec 2006 16:52:24 +0000 (16:52 +0000)
bwmon.py

index c0832ad..ce64322 100755 (executable)
--- a/bwmon.py
+++ b/bwmon.py
@@ -15,7 +15,7 @@
 # Faiyaz Ahmed <faiyaza@cs.princeton.edu>
 # Copyright (C) 2004-2006 The Trustees of Princeton University
 #
-# $Id: bwmon.py,v 1.5.2.2 2006/08/21 21:27:35 mlhuang Exp $
+# $Id: bwmon.py,v 1.15 2006/12/13 21:39:23 faiyaza Exp $
 #
 
 import syslog
@@ -62,6 +62,7 @@ default_ByteThresh = int(.8 * default_ByteMax)
 default_ExemptByteMax = 17609365914 
 default_ExemptByteThresh = int(.8 * default_ExemptByteMax) 
 
+default_MinRate = 8
 
 # Average over 1 day
 period = 1 * seconds_per_day
@@ -222,6 +223,8 @@ class Slice:
         if bytes >= (self.bytes + self.ByteThresh):
             new_maxrate = \
             int((self.ByteMax - self.bytes + bytes)/(period - time.time() - self.time))
+            if new_maxrate < default_MinRate:
+                new_maxrate = default_MinRate
         else:
             new_maxrate = maxrate
 
@@ -245,6 +248,8 @@ class Slice:
         if exemptbytes >= (self.exemptbytes + self.ExemptByteThresh):
             new_maxexemptrate = \
             int((self.ExemptByteMax - (self.bytes + bytes))/(period - (time.time() - self.time)))
+            if new_maxexemptrate < default_MinRate:
+                new_maxexemptrate = default_MinRate
         else:
             new_maxexemptrate = maxexemptrate
 
@@ -338,11 +343,11 @@ def main():
         (version, slices) = pickle.load(f)
         f.close()
         # Check version of data file
-        if version != "$Id: bwmon.py,v 1.5.2.2 2006/08/21 21:27:35 mlhuang Exp $":
+        if version != "$Id: bwmon.py,v 1.15 2006/12/13 21:39:23 faiyaza Exp $":
             print "Not using old version '%s' data file %s" % (version, datafile)
             raise Exception
     except Exception:
-        version = "$Id: bwmon.py,v 1.5.2.2 2006/08/21 21:27:35 mlhuang Exp $"
+        version = "$Id: bwmon.py,v 1.15 2006/12/13 21:39:23 faiyaza Exp $"
         slices = {}
 
     # Get special slice IDs