tech-net archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
TCP/IPv6 stalling
Hello,
I'm having some networking issues which aren't completely unheard of;
I googled around a little and found several posts from diffierent people
describing more or less exactly this problem, but couldn't find any
solutions.
The abstract versions is: I can ping Internet from the host, I can
make very small requests ("wget http://www.netbsd.org" works fine), but
if I try to fetch something larger than a few KB, the transfer grinds to
a halt (not entirely true, I get like 50B/s (very unstable) transfer
rate, and that's not a typo, there isn't a "K" missing there, it's in
the magnitude of 50 characters per second).
Any such operations from the router works fine, it's only when
performed from any of the system on the LAN. (All host systems are
affected; NetBSD, Linux, Windows, Mac). IPv4 does not have any issues;
this only occurs with IPv6.
I looked at the traffic on the router in Wireshark while performing:
$ wget http://ftp.gnu.org/pub/gnu/tar/tar-1.29.tar.bz2
.. on the host in a setup which looks like this:
host router
(re0) <--> (wm0) (re0) <--> Modem
Asustek Intel Asustek Cisco
.. and it's immediately apparent that something is wrong. The
capture is riddled with [TCP Retransmission] and [TCP Dup ACK ...].
First entries in the capture are normal:
SYN host -> server
SYN+ACK host <- server
ACK host -> server
This is followed the actual HTTP request being sent from the host to
the server.
After that the oddities begin. The initial SYN is resent; marked in
Wireshark as a [TCP Spurious Retransmission]. The ethernet frame
indicates that the first SYN was sent from the host to the router's wm0
interface. The retransmission is sent from the routers re0 interface to
the modem.
I've attached the summary part of the capture. If anyone is
interested in a more detailed capture, I can email them.
It looks to my highly untrained eyes like the network stack is
suddenly deciding, a while after the initial SYN/ACK handshake has
completed, that the SYN was never ACK'd, so it is resent. The similar
kind of issue occurs over and over again, which causes more or less a
complete stall of the TCP traffic.
The router is running NetBSD/amd64 -7 with npf (currently configured
to just pass everything in both directions).
--
Kind Regards,
Jan
No. Time Source Destination Protocol Length Info
3785 3.524968 2001:host 2001:4830:134:3::b TCP 98 65387→80 [SYN] Seq=0 Win=32768 Len=0 MSS=1440 WS=8 SACK_PERM=1 TSval=1 TSecr=0
3973 3.680796 2001:4830:134:3::b 2001:host TCP 94 80→65387 [SYN, ACK] Seq=0 Ack=1 Win=28560 Len=0 MSS=1440 SACK_PERM=1 TSval=618195561 TSecr=1 WS=128
3975 3.681260 2001:host 2001:4830:134:3::b TCP 86 65387→80 [ACK] Seq=1 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195561
3976 3.681260 2001:host 2001:4830:134:3::b HTTP 247 GET /pub/gnu/tar/tar-1.29.tar.bz2 HTTP/1.1
4056 3.524977 2001:host 2001:4830:134:3::b TCP 98 [TCP Spurious Retransmission] 65387→80 [SYN] Seq=0 Win=32768 Len=0 MSS=1440 WS=8 SACK_PERM=1 TSval=1 TSecr=0
4245 3.680787 2001:4830:134:3::b 2001:host TCP 94 [TCP Retransmission] 80→65387 [SYN, ACK] Seq=0 Ack=1 Win=28560 Len=0 MSS=1440 SACK_PERM=1 TSval=618195561 TSecr=1 WS=128
4247 3.681266 2001:host 2001:4830:134:3::b TCP 86 65387→80 [ACK] Seq=1 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195561
4248 3.681272 2001:host 2001:4830:134:3::b TCP 247 [TCP Retransmission] 65387→80 [PSH, ACK] Seq=1 Ack=1 Win=33120 Len=161 TSval=1 TSecr=618195561
4413 3.832790 2001:4830:134:3::b 2001:host TCP 86 80→65387 [ACK] Seq=1 Ack=162 Win=29696 Len=0 TSval=618195600 TSecr=1
4414 3.835545 2001:4830:134:3::b 2001:host TCP 1514 [TCP Previous segment not captured] [TCP segment of a reassembled PDU]
4415 3.835950 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 4247#1] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=1429 SRE=2857
4416 3.836805 2001:4830:134:3::b 2001:host TCP 1514 [TCP segment of a reassembled PDU]
4417 3.837211 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 4247#2] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=1429 SRE=4285
4418 3.838053 2001:4830:134:3::b 2001:host TCP 1514 [TCP segment of a reassembled PDU]
4419 3.838458 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 4247#3] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=1429 SRE=5713
4420 3.840492 2001:4830:134:3::b 2001:host TCP 1514 [TCP Previous segment not captured] [TCP segment of a reassembled PDU]
4421 3.840898 2001:host 2001:4830:134:3::b TCP 106 [TCP Dup ACK 4247#4] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=7141 SRE=8569 SLE=1429 SRE=5713
4422 3.841747 2001:4830:134:3::b 2001:host TCP 1514 [TCP segment of a reassembled PDU]
4423 3.842152 2001:host 2001:4830:134:3::b TCP 106 [TCP Dup ACK 4247#5] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=7141 SRE=9997 SLE=1429 SRE=5713
4424 3.843120 2001:4830:134:3::b 2001:host TCP 1514 [TCP segment of a reassembled PDU]
4425 3.843526 2001:host 2001:4830:134:3::b TCP 106 [TCP Dup ACK 4247#6] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=7141 SRE=11425 SLE=1429 SRE=5713
4605 3.832785 2001:4830:134:3::b 2001:host TCP 86 80→65387 [ACK] Seq=1 Ack=162 Win=29696 Len=0 TSval=618195600 TSecr=1
4606 3.835541 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=1429 Ack=162 Win=29696 Len=1428 TSval=618195600 TSecr=1
4607 3.835954 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 4247#7] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=1429 SRE=2857
4608 3.836802 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=2857 Ack=162 Win=29696 Len=1428 TSval=618195601 TSecr=1
4609 3.837214 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 4247#8] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=1429 SRE=4285
4610 3.838050 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=4285 Ack=162 Win=29696 Len=1428 TSval=618195601 TSecr=1
4611 3.838461 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 4247#9] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=1429 SRE=5713
4612 3.840489 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=7141 Ack=162 Win=29696 Len=1428 TSval=618195601 TSecr=1
4613 3.840901 2001:host 2001:4830:134:3::b TCP 106 [TCP Dup ACK 4247#10] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=7141 SRE=8569 SLE=1429 SRE=5713
4614 3.841743 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=8569 Ack=162 Win=29696 Len=1428 TSval=618195601 TSecr=1
4615 3.842155 2001:host 2001:4830:134:3::b TCP 106 [TCP Dup ACK 4247#11] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=7141 SRE=9997 SLE=1429 SRE=5713
4616 3.843117 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=9997 Ack=162 Win=29696 Len=1428 TSval=618195601 TSecr=1
4617 3.843529 2001:host 2001:4830:134:3::b TCP 106 [TCP Dup ACK 4247#12] 65387→80 [ACK] Seq=162 Ack=1 Win=33120 Len=0 TSval=1 TSecr=618195600 SLE=7141 SRE=11425 SLE=1429 SRE=5713
9562 11.004783 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=1 Ack=162 Win=29696 Len=1428 TSval=618197400 TSecr=1
9563 11.005189 2001:host 2001:4830:134:3::b TCP 98 65387→80 [ACK] Seq=162 Ack=5713 Win=27408 Len=0 TSval=15 TSecr=618197400 SLE=7141 SRE=11425
9564 11.005189 2001:host 2001:4830:134:3::b TCP 98 [TCP Window Update] 65387→80 [ACK] Seq=162 Ack=5713 Win=33120 Len=0 TSval=15 TSecr=618197400 SLE=7141 SRE=11425
9568 11.004766 2001:4830:134:3::b 2001:host TCP 1514 [TCP Spurious Retransmission] [TCP segment of a reassembled PDU]
9569 11.005196 2001:host 2001:4830:134:3::b TCP 98 [TCP Window Update] 65387→80 [ACK] Seq=162 Ack=5713 Win=27408 Len=0 TSval=15 TSecr=618197400 SLE=7141 SRE=11425
9570 11.005203 2001:host 2001:4830:134:3::b TCP 98 [TCP Window Update] 65387→80 [ACK] Seq=162 Ack=5713 Win=33120 Len=0 TSval=15 TSecr=618197400 SLE=7141 SRE=11425
12765 14.379952 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=5713 Ack=162 Win=29696 Len=1428 TSval=618198244 TSecr=15
12766 14.380357 2001:host 2001:4830:134:3::b TCP 86 65387→80 [ACK] Seq=162 Ack=11425 Win=27408 Len=0 TSval=22 TSecr=618198244
12767 14.380357 2001:host 2001:4830:134:3::b TCP 86 [TCP Window Update] 65387→80 [ACK] Seq=162 Ack=11425 Win=33120 Len=0 TSval=22 TSecr=618198244
12781 14.379940 2001:4830:134:3::b 2001:host TCP 1514 [TCP Spurious Retransmission] [TCP segment of a reassembled PDU]
12782 14.380363 2001:host 2001:4830:134:3::b TCP 86 [TCP Window Update] 65387→80 [ACK] Seq=162 Ack=11425 Win=27408 Len=0 TSval=22 TSecr=618198244
12783 14.380369 2001:host 2001:4830:134:3::b TCP 86 [TCP Window Update] 65387→80 [ACK] Seq=162 Ack=11425 Win=33120 Len=0 TSval=22 TSecr=618198244
14760 17.737318 2001:4830:134:3::b 2001:host TCP 1514 [TCP segment of a reassembled PDU]
14873 17.737327 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=11425 Ack=162 Win=29696 Len=1428 TSval=618199081 TSecr=22
15109 17.934936 2001:host 2001:4830:134:3::b TCP 86 65387→80 [ACK] Seq=162 Ack=12853 Win=33120 Len=0 TSval=29 TSecr=618199081
15293 17.934947 2001:host 2001:4830:134:3::b TCP 86 [TCP Dup ACK 15109#1] 65387→80 [ACK] Seq=162 Ack=12853 Win=33120 Len=0 TSval=29 TSecr=618199081
21352 25.331297 2001:4830:134:3::b 2001:host TCP 1514 [TCP segment of a reassembled PDU]
21353 25.331306 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=12853 Ack=162 Win=29696 Len=1428 TSval=618200982 TSecr=29
21354 25.528232 2001:host 2001:4830:134:3::b TCP 86 65387→80 [ACK] Seq=162 Ack=14281 Win=33120 Len=0 TSval=45 TSecr=618200982
21355 25.528214 2001:host 2001:4830:134:3::b TCP 86 [TCP Dup ACK 21354#1] 65387→80 [ACK] Seq=162 Ack=14281 Win=33120 Len=0 TSval=45 TSecr=618200982
24469 29.382995 2001:4830:134:3::b 2001:host TCP 1514 [TCP segment of a reassembled PDU]
24616 29.382986 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=14281 Ack=162 Win=29696 Len=1428 TSval=618201982 TSecr=45
24853 29.580263 2001:host 2001:4830:134:3::b TCP 86 65387→80 [ACK] Seq=162 Ack=15709 Win=33120 Len=0 TSval=53 TSecr=618201982
24983 29.580254 2001:host 2001:4830:134:3::b TCP 86 [TCP Dup ACK 24853#1] 65387→80 [ACK] Seq=162 Ack=15709 Win=33120 Len=0 TSval=53 TSecr=618201982
24990 29.705295 2001:4830:134:3::b 2001:host TCP 1514 [TCP Previous segment not captured] [TCP segment of a reassembled PDU]
24991 29.705701 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 24853#2] 65387→80 [ACK] Seq=162 Ack=15709 Win=33120 Len=0 TSval=53 TSecr=618201982 SLE=38557 SRE=39985
24992 29.705289 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=38557 Ack=162 Win=29696 Len=1428 TSval=618202075 TSecr=53
24993 29.705705 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 24853#3] 65387→80 [ACK] Seq=162 Ack=15709 Win=33120 Len=0 TSval=53 TSecr=618201982 SLE=38557 SRE=39985
29872 34.326306 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [PSH, ACK] Seq=15709 Ack=162 Win=29696 Len=1428 TSval=618203222 TSecr=53
29873 34.326725 2001:host 2001:4830:134:3::b TCP 98 65387→80 [ACK] Seq=162 Ack=17137 Win=31688 Len=0 TSval=62 TSecr=618203222 SLE=38557 SRE=39985
29969 34.326314 2001:4830:134:3::b 2001:host TCP 1514 [TCP Spurious Retransmission] [TCP segment of a reassembled PDU]
29970 34.326720 2001:host 2001:4830:134:3::b TCP 98 [TCP Dup ACK 29873#1] 65387→80 [ACK] Seq=162 Ack=17137 Win=31688 Len=0 TSval=62 TSecr=618203222 SLE=38557 SRE=39985
29988 34.801493 2001:host 2001:4830:134:3::b TCP 98 65387→80 [FIN, ACK] Seq=162 Ack=17137 Win=33120 Len=0 TSval=63 TSecr=618203222 SLE=38557 SRE=39985
29989 34.801483 2001:host 2001:4830:134:3::b TCP 98 [TCP Spurious Retransmission] 65387→80 [FIN, ACK] Seq=162 Ack=17137 Win=33120 Len=0 TSval=63 TSecr=618203222 SLE=38557 SRE=39985
30069 35.796319 2001:host 2001:4830:134:3::b TCP 98 [TCP Spurious Retransmission] 65387→80 [FIN, ACK] Seq=162 Ack=17137 Win=33120 Len=0 TSval=65 TSecr=618203222 SLE=38557 SRE=39985
30096 35.796313 2001:host 2001:4830:134:3::b TCP 98 [TCP Spurious Retransmission] 65387→80 [FIN, ACK] Seq=162 Ack=17137 Win=33120 Len=0 TSval=65 TSecr=618203222 SLE=38557 SRE=39985
31333 36.389558 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=17137 Ack=163 Win=29696 Len=1428 TSval=618203734 TSecr=65
31334 36.389963 2001:host 2001:4830:134:3::b TCP 74 65387→80 [RST] Seq=163 Win=0 Len=0
31456 36.389551 2001:4830:134:3::b 2001:host TCP 1514 [TCP Retransmission] 80→65387 [ACK] Seq=17137 Ack=163 Win=29696 Len=1428 TSval=618203734 TSecr=65
31457 36.389968 2001:host 2001:4830:134:3::b TCP 74 65387→80 [RST] Seq=163 Win=0 Len=0
Home |
Main Index |
Thread Index |
Old Index