Hello,
There appears to be some weird problem with TCP over IPv6 with 2.4.18.
At least with RHL72 kernel (2.4.9-xx), this does not happen.
The topology is such:
2001:708:10:10:250:4ff:fe6a:db55 - Linux client
2001:708:10:f::c1a6:45 - FreeBSD 4.5 TCP relay (using IPv6-to-IPv4 relay)
The test is done with basically 'lynx [http://[2001:708:10:f::c1a6:45]',
the same also happens if telnetting to port 80 and issuing 'GET /
HTTP/1.0'
The problem is that FreeBSD never seems to be able to send the data it
receives from IPv4 to the Linux client: netstat -an shows the data is kept
in SendQ of the connection, which is CLOSING state. Linux client never
sees the data.
Works:
- Linux 2.4.9 (at least) works (the same system)
- Linux 2.4.9, 2.4.12, 2.4.18 and other versions do work from some other
topological locations: it seems that this happens only if the latency
between the boxes is very low.
Perhaps some TCP specilist can shed some light on this?
17:12:51.254612 2001:708:10:10:250:4ff:fe6a:db55.1046 >
2001:708:10:f::c1a6:45.http: S [tcp sum ok] 3514706145:3514706145(0) win 5760
<mss 1440,sackOK,timestamp 100174 0,nop,wscale 0> (len 40, hlim 64)
17:12:51.259395 2001:708:10:f::c1a6:45.http >
2001:708:10:10:250:4ff:fe6a:db55.1046: S [tcp sum ok] 2663223199:2663223199(0)
ack 3514706146 win 65535 <mss 1440,nop,wscale 1,nop,nop,timestamp 218472648
100174> (len 40, hlim 61)
17:12:51.259457 2001:708:10:10:250:4ff:fe6a:db55.1046 >
2001:708:10:f::c1a6:45.http: . [tcp sum ok] 1:1(0) ack 1 win 5760
<nop,nop,timestamp 100175 218472648> (len 32, hlim 64)
17:12:51.260802 2001:708:10:10:250:4ff:fe6a:db55.1046 >
2001:708:10:f::c1a6:45.http: P 1:537(536) ack 1 win 5760 <nop,nop,timestamp
100175 218472648> (len 568, hlim 64)
17:12:51.468662 2001:708:10:10:250:4ff:fe6a:db55.1046 >
2001:708:10:f::c1a6:45.http: P 1:537(536) ack 1 win 5760 <nop,nop,timestamp
100196 218472648> (len 568, hlim 64)
17:12:51.474158 2001:708:10:f::c1a6:45.http >
2001:708:10:10:250:4ff:fe6a:db55.1046: . [tcp sum ok] 2857:2857(0) ack 537 win
32844 <nop,nop,timestamp 218472670 100196> [flowlabel 0x60695] (len 32, hlim 61)
Any thoughts? Does this appear to be a FreeBSD or Linux problem? (I'd be
tempted to say Linux, because it works in some versions but not others.)
--
Pekka Savola "Tell me of difficulties surmounted,
Netcore Oy not those you stumble over and fall"
Systems. Networks. Security. -- Robert Jordan: A Crown of Swords
|