Strange TCP (and BGP!) problem

Sean Groarke (
Mon, 20 Dec 1999 08:33:13 +0100

Got a real strange problem which one of you kind folks may be able to advise
on...I hope!

Running a BGP Simulator (from to a Router. BGP Sim host is SuSE
dist, kernel 2.2.10.

Since this is a TCP issue, I'll try and keep the BGP out of it as much as
possible: BGPSim and router bring up TCP session, talk BGP (BGP OPENs, BGP
KEEPALIVES, etc), then the communication takes the form of one way data (BGP
UPDATEs) flowing from the Linux box to the router. The router happily TCP acks
all of this.

After 30 seconds the router sends BGP data to the Linux box (actually a BGP
Keepalive message). At this point the Linux host usually responds with a TCP
RST, which is a little unfriendly... Also, from scoping the network, there is no
legit reason for this to happen (the protocol exchange is entirely valid).

If I really slug the performance of the sending task on the Linux box (NICE it
right down, give it a silly small window, whatever) then the session works fine:
the Linux box does not TCP RST the session.

What worries me is that, as far as I can tell from a debug session, the BGPSim
program itself never see the message which is being TCP RST'ed - it's happening
much lower down in the Linux box. I've tried this on several very different
boxes, and always get the same result. Now, I'm good on networks, OK as a
programmer but know very little about TCP on Linux - and I fear this problem
lies in the area of the program / kernel stack interface. Any ideas how one
would trouble-shoot this


To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to