aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorstephen hemminger <shemminger@vyatta.com>2011-03-14 03:52:14 -0400
committerDavid S. Miller <davem@davemloft.net>2011-03-14 18:54:39 -0400
commitaac46324e12a2bf2e9e0855ad6a287945e34ad39 (patch)
tree3f6fc25d6fb597cf051de4426f1c81e7f145c3a5 /net
parentc54b4b7655447c1f24f6d50779c22eba9ee0fd24 (diff)
tcp_cubic: make ack train delta value a parameter
Make the spacing between ACK's that indicates a train a tuneable value like other hystart values. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r--net/ipv4/tcp_cubic.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/ipv4/tcp_cubic.c b/net/ipv4/tcp_cubic.c
index 43bb34c9b8bf..66d3b00233ec 100644
--- a/net/ipv4/tcp_cubic.c
+++ b/net/ipv4/tcp_cubic.c
@@ -52,6 +52,7 @@ static int tcp_friendliness __read_mostly = 1;
52static int hystart __read_mostly = 1; 52static int hystart __read_mostly = 1;
53static int hystart_detect __read_mostly = HYSTART_ACK_TRAIN | HYSTART_DELAY; 53static int hystart_detect __read_mostly = HYSTART_ACK_TRAIN | HYSTART_DELAY;
54static int hystart_low_window __read_mostly = 16; 54static int hystart_low_window __read_mostly = 16;
55static int hystart_ack_delta __read_mostly = 2;
55 56
56static u32 cube_rtt_scale __read_mostly; 57static u32 cube_rtt_scale __read_mostly;
57static u32 beta_scale __read_mostly; 58static u32 beta_scale __read_mostly;
@@ -75,6 +76,8 @@ MODULE_PARM_DESC(hystart_detect, "hyrbrid slow start detection mechanisms"
75 " 1: packet-train 2: delay 3: both packet-train and delay"); 76 " 1: packet-train 2: delay 3: both packet-train and delay");
76module_param(hystart_low_window, int, 0644); 77module_param(hystart_low_window, int, 0644);
77MODULE_PARM_DESC(hystart_low_window, "lower bound cwnd for hybrid slow start"); 78MODULE_PARM_DESC(hystart_low_window, "lower bound cwnd for hybrid slow start");
79module_param(hystart_ack_delta, int, 0644);
80MODULE_PARM_DESC(hystart_ack_delta, "spacing between ack's indicating train (msecs)");
78 81
79/* BIC TCP Parameters */ 82/* BIC TCP Parameters */
80struct bictcp { 83struct bictcp {
@@ -343,7 +346,7 @@ static void hystart_update(struct sock *sk, u32 delay)
343 346
344 /* first detection parameter - ack-train detection */ 347 /* first detection parameter - ack-train detection */
345 if ((s32)(curr_jiffies - ca->last_jiffies) <= 348 if ((s32)(curr_jiffies - ca->last_jiffies) <=
346 msecs_to_jiffies(2)) { 349 msecs_to_jiffies(hystart_ack_delta)) {
347 ca->last_jiffies = curr_jiffies; 350 ca->last_jiffies = curr_jiffies;
348 if ((s32) (curr_jiffies - ca->round_start) > 351 if ((s32) (curr_jiffies - ca->round_start) >
349 ca->delay_min >> 4) 352 ca->delay_min >> 4)