Re: [2.6.6-mm4, 2.6.6-1.435.2.3] Hanging tcp connections to certain www servers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jul 25, 2004 at 12:07:40PM +0200, you [Henrik Nordstrom] wrote:
> On Fri, 23 Jul 2004, Ville Herva wrote:
> 
> > 19:27:45.384678 IP my-host.56690 > plus.kaleva.fi.http: S 2740242788:2740242788(0) win 5840 <mss 1460,sackOK,timestamp 209947219 0,nop,wscale 0>
> > 19:27:45.406106 IP plus.kaleva.fi.http > my-host.56690: S 3447607723:3447607723(0) ack 2740242789 win 65535 <mss 1440,nop,wscale 0,nop,nop,timestamp 0 0,nop,nop,sackOK>
> > 19:27:45.406209 IP my-host.56690 > plus.kaleva.fi.http: . ack 1 win 5840 <nop,nop,timestamp 209947241 0>
> > 19:27:49.857104 IP my-host.56690 > plus.kaleva.fi.http: P 1:8(7) ack 1 win 5840 <nop,nop,timestamp 209951692 0>
> > 19:27:49.889166 IP plus.kaleva.fi.http > my-host.56690: . 1:1429(1428) ack 8 win 65528 <nop,nop,timestamp 14858124 209951692>
> > 19:27:49.889331 IP my-host.56690 > plus.kaleva.fi.http: . ack 1429 win 8568 <nop,nop,timestamp 209951724 14858124>
> 
> > And here is a hanging one:
> > --8<-----------------------------------------------------------------------
> > # tcpdump host plus.kaleva.fi
> > tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
> > listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
> > 19:27:55.165918 IP my-host.56691 > plus.kaleva.fi.http: S 2736589007:2736589007(0) win 5840 <mss 1460,sackOK,timestamp 209957002 0,nop,wscale 0>
> > 19:27:55.188250 IP plus.kaleva.fi.http > my-host.56691: S 3450327922:3450327922(0) ack 2736589008 win 65535 <mss 1460,nop,wscale 0,nop,nop,timestamp 0 0,nop,nop,sackOK>
> > 19:27:55.188344 IP my-host.56691 > plus.kaleva.fi.http: . ack 1 win 5840 <nop,nop,timestamp 209957024 0>
> > 19:27:58.107821 IP my-host.56691 > plus.kaleva.fi.http: P 1:8(7) ack 1 win 5840 <nop,nop,timestamp 209959944 0>
> > 19:27:58.134478 IP plus.kaleva.fi.http > my-host.56691: FP 2897:2911(14) ack 8 win 65528 <nop,nop,timestamp 14858207 209959944>
> > 19:27:58.134589 IP my-host.56691 > plus.kaleva.fi.http: . ack 1 win 5840 <nop,nop,timestamp 209959971 0,nop,nop,sack sack 1 {2897:2912} >
> > 19:27:58.417788 IP my-host.56691 > plus.kaleva.fi.http: P 8:10(2) ack 1 win 5840 <nop,nop,timestamp 209960254 0,nop,nop,sack sack 1 {2897:2912} >
> 
> 
> May be a MTU blackhole in the path from the server to you. 

Sorry for my cluelessness here, but does that explain the oddness in the
tcpdump David S. Miller pointed out?

> It looks like there may be two loadbalaced servers involved here with
> different MSS settings.

plus.kaleva.fi does resolve into two ip's (193.143.126.85, 193.143.126.75).
It is not, however, the only server that showed this symptom - a lot of
https server, such as secure.verkkokauppa.com, acted up, too. And
secure.verkkokauppa.com only has one ip (though I guess it could still be
several physical machines.)

> Try setting a small MSS to force the server to send you smaller packets 
> than default. If this works then the problem is quite likely MTU related.
> 
>   ip ro add plus.kaleva.fi via your.deafult.gateway advmss 500

Thanks.

It seems a mere 

   ifconfig eth0 <ip> netmask <nm> mtu 1458 up

was enough to make the problem go away (instead of the default MTU=1500).
Even MTU=1492 seemed to do it. MTU=1458 was, however, a bit faster than 1500
or 1492 when I timed the download speed (211kB/s vs. ~205-206kB/s). The DSL
line uses PPPoA, and for example
http://www.adslnation.com/support/knowledgebase/ht003.php suggests MTU=1458
is advisable. It could just be that the must-fragment icmp packets do not
get back to my machine (the problem appeared few weeks ago when my ISP
changed the connection from lease physical cable to their own cable - but it
could of course be also be a misconfiguration on my side.)

I don't know if these explain the oddness in the tcpdump, though.
-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux