Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Mar 2000 15:29:17 -0500
From:      Dan Moschuk <dan@freebsd.org>
To:        hackers@freebsd.org
Subject:   Odd TCP problem
Message-ID:  <20000322152917.A919@spirit.jaded.net>

next in thread | raw e-mail | index | archive | help

Greetings,

I've encounted somewhat of an odd problem that seemed to appear out of 
nowhere after my last -current upgrade a week or two ago.  I rebuild last
night and the problem is still around.

Basically, near the end of the TCP transaction, consistant retransmission
leads to the connection timing out.

In the first example, my -current laptop is talking to a postgres database
server running solaris7 on an ultra sparc.  The program runs, and in the
exact same spot each time (updating the last record) it stops.  Here's a
tcpdump:

14:20:01.894645 spirit.1100 > eclipse.5432: P 1176338:1176373(35) ack 136575 win 17520 (DF)
14:20:01.897467 eclipse.5432 > spirit.1100: P 136575:136624(49) ack 1176373 win 8760 (DF)
14:20:01.897951 spirit.1100 > eclipse.5432: P 1176373:1176756(383) ack 136624 win 17520 (DF)
14:20:01.908113 eclipse.5432 > spirit.1100: P 136624:136649(25) ack 1176756 win 8760 (DF)
14:20:01.910717 spirit.1100 > eclipse.5432: . 1176756:1178216(1460) ack 136649 win 17520 (DF)
14:20:01.911188 spirit.1100 > eclipse.5432: P 1178216:1178807(591) ack 136649 win 17520 (DF)
14:20:01.978311 eclipse.5432 > spirit.1100: . ack 1178216 win 8760 (DF)
14:20:02.977968 spirit.1100 > eclipse.5432: P 1178216:1178807(591) ack 136649 win 17520 (DF)
14:20:04.977986 spirit.1100 > eclipse.5432: P 1178216:1178807(591) ack 136649 win 17520 (DF)
14:20:08.978058 spirit.1100 > eclipse.5432: P 1178216:1178807(591) ack 136649 win 17520 (DF)
14:20:16.978187 spirit.1100 > eclipse.5432: P 1178216:1178807(591) ack 136649 win 17520 (DF)
14:20:32.978432 spirit.1100 > eclipse.5432: P 1178216:1178807(591) ack 136649 win 17520 (DF)
14:21:04.978917 spirit.1100 > eclipse.5432: P 1178216:1178807(591) ack 136649 win 17520 (DF)

This continues until spirit gives up and resets the connection.

As you can see, its like eclipse vanished.  Now, running a tcpdump on eclipse
shows that these packets are in fact reaching the machine, its just not
responding to them.

It's not a problem with postgres itself, as the same problem can also be
observed sending mail.  Everything goes fine until after the DATA stage,
where we become stuck in the above retransmission loop.

Ideas?

-- 
Dan Moschuk (TFreak!dan@freebsd.org)
"Waste not fresh tears on old griefs."


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000322152917.A919>