- self.capped = False
-
- # Apply parameters
- if new_maxrate != runningmaxrate or new_maxi2rate != runningmaxi2rate:
- bwlimit.set(xid = self.xid, maxrate = new_maxrate, maxexemptrate = new_maxi2rate)
+ self.capped += False
+
+ # Check running values against newly calculated values so as not to run tc
+ # unnecessarily
+ if (runningrates['maxrate'] != new_maxrate) or \
+ (runningrates['minrate'] != self.MinRate * 1000) or \
+ (runningrates['maxexemptrate'] != new_maxi2rate) or \
+ (runningrates['minexemptrate'] != self.Mini2Rate * 1000) or \
+ (runningrates['share'] != self.Share):
+ # Apply parameters
+ bwlimit.set(xid = self.xid,
+ minrate = self.MinRate * 1000,
+ maxrate = new_maxrate,
+ minexemptrate = self.Mini2Rate * 1000,
+ maxexemptrate = new_maxi2rate,
+ share = self.Share)