Messages in this thread |  | | Date | Sat, 18 Jan 1997 16:50:43 +0100 | From | Peter Enderborg <> | Subject | Know tcp bug ?! |
| |
Is this a known bug ?
I have problem with squid and setsockopt with SO_RCVBUF options. This is a dump that show that tcp is not OK. Note the window size of 700, that is the option that I use in squid.Is this a known bug ?
I have problem with squid and setsockopt with SO_RCVBUF options. This is a dump that show that tcp is not OK. Note the window size of 700, that is the option that I use in squid.
root@pescadero# tcpdump -i eth0 port www tcpdump: listening on eth0 16:21:34.020370 pescadero.ampr.org.1561 > sulaco.ampr.org.www: S 602136707:602136707(0) win 512 <mss 1460> 16:21:34.022671 sulaco.ampr.org.www > pescadero.ampr.org.1561: S 3397745337:3397745337(0) ack 602136708 win 8760 <mss 1460> (DF)
This is strange. Is send an ack with win 0. (There have not been any data, so it should be the value I have put in to the setsockopt value.)
16:21:34.022901 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0
It sends the same data twice ! (With wrong window value)
16:21:34.024282 pescadero.ampr.org.1561 > sulaco.ampr.org.www: P 1:397(396) ack 1 win 0 16:21:34.218782 pescadero.ampr.org.1561 > sulaco.ampr.org.www: P 1:397(396) ack 1 win 0
It continue with the win=0, and try to send data, and it gets its ack, but dont care.
16:21:34.221451 sulaco.ampr.org.www > pescadero.ampr.org.1561: . ack 397 win 8760 (DF) [tos 0x10] 16:21:34.221639 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:34.542941 sulaco.ampr.org.www > pescadero.ampr.org.1561: . 1:2(1) ack 397 win 8760 (DF) [tos 0x10] 16:21:34.543137 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:34.618570 pescadero.ampr.org.1561 > sulaco.ampr.org.www: P 1:397(396) ack 1 win 0 16:21:34.620962 sulaco.ampr.org.www > pescadero.ampr.org.1561: . ack 397 win 8760 (DF) [tos 0x10] 16:21:34.621146 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:35.022742 sulaco.ampr.org.www > pescadero.ampr.org.1561: . 1:2(1) ack 397 win 8760 (DF) [tos 0x10] 16:21:35.022939 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:35.418245 pescadero.ampr.org.1561 > sulaco.ampr.org.www: P 1:397(396) ack 1 win 0 16:21:35.420936 sulaco.ampr.org.www > pescadero.ampr.org.1561: . ack 397 win 8760 (DF) [tos 0x10] 16:21:35.421120 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:35.982845 sulaco.ampr.org.www > pescadero.ampr.org.1561: . 1:2(1) ack 397 win 8760 (DF) [tos 0x10] 16:21:35.983038 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:37.017607 pescadero.ampr.org.1561 > sulaco.ampr.org.www: P 1:397(396) ack 1 win 0 16:21:37.020232 sulaco.ampr.org.www > pescadero.ampr.org.1561: . ack 397 win 8760 (DF) [tos 0x10] 16:21:37.020426 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:37.806093 sulaco.ampr.org.www > pescadero.ampr.org.1558: . 3390340206:3390340207(1) ack 2565479135 win 8760 (DF) [tos 0x10] 16:21:37.806283 pescadero.ampr.org.1558 > sulaco.ampr.org.www: . ack 0 win 0 16:21:37.902722 sulaco.ampr.org.www > pescadero.ampr.org.1561: . 1:2(1) ack 397 win 8760 (DF) [tos 0x10] 16:21:37.902914 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:40.216228 pescadero.ampr.org.1561 > sulaco.ampr.org.www: P 1:397(396) ack 1 win 0 16:21:40.218924 sulaco.ampr.org.www > pescadero.ampr.org.1561: . ack 397 win 8760 (DF) [tos 0x10] 16:21:40.219114 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0 16:21:41.742808 sulaco.ampr.org.www > pescadero.ampr.org.1561: . 1:2(1) ack 397 win 8760 (DF) [tos 0x10] 16:21:41.743015 pescadero.ampr.org.1561 > sulaco.ampr.org.www: . ack 1 win 0
31 packets received by filter 0 packets dropped by kernel root@pescadero#
netstat shows. Look at the Send-Q. It changes, is that what should happend ? I don't think it's squid adding more data.
Proto Recv-Q Send-Q Local Address Foreign Address (State) User tcp 0 396 pescadero.ampr.or:1561 sulaco.ampr.org:www ESTABLISHED root
tcp 0 397 pescadero.ampr.or:1561 sulaco.ampr.org:www FIN_WAIT1 root
|  |