diff options
Diffstat (limited to 'target/linux/generic/patches-3.3/060-tcp-ecn-dont-delay-ACKS-after-CE.patch')
-rw-r--r-- | target/linux/generic/patches-3.3/060-tcp-ecn-dont-delay-ACKS-after-CE.patch | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/target/linux/generic/patches-3.3/060-tcp-ecn-dont-delay-ACKS-after-CE.patch b/target/linux/generic/patches-3.3/060-tcp-ecn-dont-delay-ACKS-after-CE.patch deleted file mode 100644 index 6f1cd12..0000000 --- a/target/linux/generic/patches-3.3/060-tcp-ecn-dont-delay-ACKS-after-CE.patch +++ /dev/null @@ -1,61 +0,0 @@ -From patchwork Mon Aug 6 21:04:43 2012 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -Subject: [net-next] tcp: ecn: dont delay ACKS after CE -Date: Mon, 06 Aug 2012 11:04:43 -0000 -From: Eric Dumazet <eric.dumazet@gmail.com> -X-Patchwork-Id: 175453 -Message-Id: <1344287083.26674.83.camel@edumazet-glaptop> -To: David Miller <davem@davemloft.net> -Cc: netdev <netdev@vger.kernel.org>, - Neal Cardwell <ncardwell@google.com> - -From: Eric Dumazet <edumazet@google.com> - -While playing with CoDel and ECN marking, I discovered a -non optimal behavior of receiver of CE (Congestion Encountered) -segments. - -In pathological cases, sender has reduced its cwnd to low values, -and receiver delays its ACK (by 40 ms). - -While RFC 3168 6.1.3 (The TCP Receiver) doesn't explicitly recommend -to send immediate ACKS, we believe its better to not delay ACKS, because -a CE segment should give same signal than a dropped segment, and its -quite important to reduce RTT to give ECE/CWR signals as fast as -possible. - -Note we already call tcp_enter_quickack_mode() from TCP_ECN_check_ce() -if we receive a retransmit, for the same reason. - -Signed-off-by: Eric Dumazet <edumazet@google.com> -Cc: Neal Cardwell <ncardwell@google.com> -Acked-by: Neal Cardwell <ncardwell@google.com> - ---- -net/ipv4/tcp_input.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - - - --- -To unsubscribe from this list: send the line "unsubscribe netdev" in -the body of a message to majordomo@vger.kernel.org -More majordomo info at http://vger.kernel.org/majordomo-info.html - ---- a/net/ipv4/tcp_input.c -+++ b/net/ipv4/tcp_input.c -@@ -231,7 +231,11 @@ static inline void TCP_ECN_check_ce(stru - tcp_enter_quickack_mode((struct sock *)tp); - break; - case INET_ECN_CE: -- tp->ecn_flags |= TCP_ECN_DEMAND_CWR; -+ if (!(tp->ecn_flags & TCP_ECN_DEMAND_CWR)) { -+ /* Better not delay acks, sender can have a very low cwnd */ -+ tcp_enter_quickack_mode((struct sock *)tp); -+ tp->ecn_flags |= TCP_ECN_DEMAND_CWR; -+ } - /* fallinto */ - default: - tp->ecn_flags |= TCP_ECN_SEEN; |