Smoothing algorithm for round trip time (RTT) measurements
First Claim
1. A method, comprising:
- defining a maximum deviation allowed for any round trip time (RTT) sample relative to a current RTT value;
computing a deviation of a RTT sample relative to the current RTT value;
if the computed deviation is greater than zero and greater than the maximum deviation allowed, then performing a first type of RTT smoothing operation wherein the RTT sample is factored into the current RTT value using an additive increase;
if the computed deviation is less than zero and an absolute value of the computed deviation is greater than the maximum deviation allowed, then performing a second type of RTT smoothing operation wherein the RTT sample is factored into the current RTT value using a multiplicative decrease; and
otherwise performing a third type of RTT smoothing operation wherein a percentage of the RTT sample is factored into a percentage of the current RTT value.
8 Assignments
0 Petitions
Accused Products
Abstract
A smoothing algorithm for round trip time (RTT) measurements is provided to a network device to effectively deal with variations or other potential anomalies that may occur in RTT measurements. The algorithm involves: first determining what should be considered a very high or a very small value for a RTT sample. If a new RTT sample is in an acceptable range, then the network device performs a relatively basic smoothing. If the new RTT sample is much higher than a current RTT value, then the network device ignores the value of this RTT sample a few times. If the network device still detects this large value after ignoring that value for some time, then the network device factors this value into the current RTT value using an additive increase. Similarly, if the value of the new RTT sample is much lower than current RTT value, the network device ignores the value of the new RTT sample a few times. If the network device still sees this small/low value after ignoring that value for sometime, then the network device factors this value into the current RTT value using a multiplicative decrease. An effective RTT value results, which can be used singly or in combination with other metrics to load balance network traffic.
213 Citations
28 Claims
-
1. A method, comprising:
-
defining a maximum deviation allowed for any round trip time (RTT) sample relative to a current RTT value; computing a deviation of a RTT sample relative to the current RTT value; if the computed deviation is greater than zero and greater than the maximum deviation allowed, then performing a first type of RTT smoothing operation wherein the RTT sample is factored into the current RTT value using an additive increase; if the computed deviation is less than zero and an absolute value of the computed deviation is greater than the maximum deviation allowed, then performing a second type of RTT smoothing operation wherein the RTT sample is factored into the current RTT value using a multiplicative decrease; and otherwise performing a third type of RTT smoothing operation wherein a percentage of the RTT sample is factored into a percentage of the current RTT value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method, comprising:
-
determining whether an allowed maximum deviation of a round trip time (RTT) sample relative to a current RTT value is exceeded; if the RTT sample is larger than the current RTT value so as to exceed the allowed maximum deviation, adjusting the current RTT value using a first type of RTT smoothing operation; if the RTT sample is smaller than the current RTT value so as to exceed the allowed maximum deviation, adjusting the current RTT value using a second type of RTT smoothing operation; if the RTT sample relative to the current RTT value is within the allowed maximum deviation, adjusting the current RTT value using a third type of RTT smoothing operation; and ignoring and counting a plurality of RTT samples whose computed deviations relative to the current RTT value exceed the allowed maximum deviation, until a count of ignored RTT samples exceed a maximum ignore count. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A method, comprising:
-
determining whether an allowed maximum deviation of a round trip time (RTT) sample relative to a current RTT value is exceeded; if the RTT sample is larger than the current RTT value so as to exceed the allowed maximum deviation, adjusting the current RTT value using a first type of RTT smoothing operation; if the RTT sample is smaller than the current RTT value so as to exceed the allowed maximum deviation, adjusting the current RTT value using a second type of RTT smoothing operation; and if the RTT sample relative to the current RTT value is within the allowed maximum deviation, adjusting the current RTT value using a third type of RTT smoothing operation; and at least one of; a) wherein said adjusting the current RTT value using the first type of RTT smoothing operation includes using an additive increase that adds progressively increasing percentages of RTT samples to corresponding progressively decreasing percentages of current RTT values; b) wherein said adjusting the current RTT value using the second type of RTT smoothing operation includes using a multiplicative decrease that adds progressively increasing percentages of RTT samples to corresponding progressively decreasing percentages of current RTT values; and c) wherein said adjusting the current RTT value using the third type of RTT smoothing operation includes factoring a percentage of the RTT sample into a percentage of the current RTT value. - View Dependent Claims (19, 20)
-
-
21. A computer-readable medium that stores instructions executable by a processor to:
-
obtain a maximum deviation allowed for any round trip time (RTT) sample relative to a current RTT value; compute a deviation of a RTT sample relative to the current RTT value; perform a first type of RTT smoothing operation to factor the RTT sample into the current RTT value using an additive increase, if the computed deviation is greater than zero and greater than the maximum deviation allowed; perform a second type of RTT smoothing operation to factor the RTT sample into the current RTT value using a multiplicative decrease, if the computed deviation is less than zero and greater than the maximum deviation allowed; and otherwise perform a third type of RTT smoothing operation to factor a fixed percentage of the RTT sample into a fixed percentage of the current RTT value. - View Dependent Claims (22, 23, 24, 25)
-
-
26. A system, comprising:
-
storage means for storing at least one round trip time (RTT) value; and means for determining whether an allowed maximum deviation of a round trip time (RTT) sample relative to a current RTT value is exceeded;
for adjusting the current RTT value using a first type of RTT smoothing operation, if the RTT sample is larger than the current RTT value so as to exceed the allowed maximum deviation;
for adjusting the current RTT value using a second type of RTT smoothing operation, if the RTT sample is smaller than the current RTT value so as to exceed the allowed maximum deviation; and
for adjusting the current RTT value using a third type of RTT smoothing operation, if the RTT sample relative to the current RTT value is within the allowed maximum deviation; andat least one of; a) wherein the means for adjusting the current RTT value using the first type of RTT smoothing operation uses an additive increase that adds progressively increasing percentages of RTT samples to corresponding progressively decreasing percentages of current RTT values; b) wherein the means for adjusting the current RTT value using the second type of RTT smoothing operation uses a multiplicative decrease that adds progressively increasing percentages of RTT samples to corresponding progressively decreasing percentages of current RTT values; and c) wherein said means for adjusting the current RTT value using the third type of RTT smoothing operation factors a percentage of the RTT sample into a percentage of the current RTT value. - View Dependent Claims (27, 28)
-
Specification