ChangeSet 1.1448.1.137, 2005/03/18 14:09:27-03:00, [EMAIL PROTECTED]

        [PATCH] TCP BIC not binary searching correctly
        
        2.4 version of same fix as 2.6.11.
        
        The problem is that BIC is supposed to reset the cwnd to the last loss 
value
        rather than ssthresh when loss is detected.  The correct code (from the 
BIC
        TCP code for Web100) is in this patch.
        
        Signed-off-by: Stephen Hemminger <[EMAIL PROTECTED]>



 tcp_input.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)


diff -Nru a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
--- a/net/ipv4/tcp_input.c      2005-03-24 09:05:20 -08:00
+++ b/net/ipv4/tcp_input.c      2005-03-24 09:05:20 -08:00
@@ -1642,7 +1642,10 @@
 static void tcp_undo_cwr(struct tcp_opt *tp, int undo)
 {
        if (tp->prior_ssthresh) {
-               tp->snd_cwnd = max(tp->snd_cwnd, tp->snd_ssthresh<<1);
+               if (tcp_is_bic(tp))
+                       tp->snd_cwnd = max(tp->snd_cwnd, 
tp->bictcp.last_max_cwnd);
+               else
+                       tp->snd_cwnd = max(tp->snd_cwnd, tp->snd_ssthresh<<1);
 
                if (undo && tp->prior_ssthresh > tp->snd_ssthresh) {
                        tp->snd_ssthresh = tp->prior_ssthresh;
-
To unsubscribe from this list: send the line "unsubscribe bk-commits-24" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to