On 02.11.2010 01:11, Maxim Dounin wrote:
Hello!

On Mon, Sep 27, 2010 at 03:17:59PM +0200, Andre Oppermann wrote:

On 27.09.2010 10:12, Maxim Dounin wrote:
Hello!

On Mon, Sep 13, 2010 at 09:24:53PM +0400, Maxim Dounin wrote:

[...]

Andre, could you please take a look at one more patch as well?

Igor reported that it still sees 100ms delays with rfc3465 turned
on, and it turns out to be similar issue (setting cwnd to 1*MSS)
for hosts found in hostcache.

The problem with setting cwnd from hostcache was already reported
here:

http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/92690
http://lists.freebsd.org/pipermail/freebsd-net/2007-July/014780.html

As using larger cwnd from hostcache may cause problems on
congested links (see second thread) I changed code to only use
cached cwnd as an upper bound for cwnd (instead of fixing current
code).  This is also in-line with what we do on connection
restarts.

We may later consider re-adding usage of larger cwnd from
hostcache.  But I believe it should be done carefully and
probably behind sysctl, off by default.

Ping.

Thanks for the reminder.  I'll disable priming CWND from hostcache.

Ping again.

I would like to see the patch in question[1] committed and MFC'ed
somewhere before 8.2.

Andre, if you are just too busy to do it yourself - please say so,
I'll ask somebody else to commit it.

Thanks for the reminder.  After EuroBSDCon Developer Summit I was
busy with other work and most of my tcp work was stalled due to
review bandwidth issues.

Lawrence, could you please spare a few seconds and take a quick look
at the attached patch?

--
Andre
Index: tcp_input.c
===================================================================
--- tcp_input.c (revision 214692)
+++ tcp_input.c (working copy)
@@ -3340,10 +3340,14 @@
         * hostcache when cwnd collapses so next connection doesn't
         * overloads the path again.
         *
+        * XXXAO: Initializing the CWND from the hostcache is broken
+        * and in its current form not RFC conformant.  It is disabled
+        * until fixed or removed entirely.
+        *
         * RFC3390 says only do this if SYN or SYN/ACK didn't got lost.
         * We currently check only in syncache_socket for that.
         */
-#define TCP_METRICS_CWND
+/* #define TCP_METRICS_CWND */
 #ifdef TCP_METRICS_CWND
        if (metrics.rmx_cwnd)
                tp->snd_cwnd = max(mss,
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to