Thread (17 messages) 17 messages, 5 authors, 2010-01-27

Re: [PATCH] tcp: fix ICMP-RTO war

From: Ilpo Järvinen <hidden>
Date: 2010-01-27 12:36:20

On Mon, 25 Jan 2010, Damian Lukowski wrote:
considering Denys' latest tests, I think we should bound
at TCP_RTO_MIN inside __tcp_set_rto().
Look at the following piece:
quoted
[  604.193389] rto: 200 (0 >> 3 + 0, 32) time: 304193 sent: 304091 pen: 1 307291 rem: 98                                                                                         
[  604.193518] lower bound violation: 0 code 1 sk_state 1                                                                                                                        
[  604.193589] rto: 200 (0 >> 3 + 0, 31) time: 304193 sent: 304091 pen: 1 304291 rem: 98                                                                                         
[  604.193706] lower bound violation: 0 code 1 sk_state 1                                                                                                                        
[  604.193776] rto: 200 (0 >> 3 + 0, 30) time: 304193 sent: 304091 pen: 1 304291 rem: 98                                                                                         
[  607.341327] lower bound violation: 0 code 1 sk_state 1                                                                                                                        
[  607.341412] rto: 200 (0 >> 3 + 0, 33) time: 307341 sent: 307091 pen: 1 310291 rem: 0  
We have a burst of three incoming ICMPs, not triggering retransmissions because
of rem > 0. Nevertheless, there is an increase of icsk_backoff by four
within 3100ms, with no ICMPs in between.
For me, this is explainable by the broken mdev/rtt issue together with
bursty ICMP replies.
Unless they are for a different connection? We might have to print sk (%p) 
in all those printouts to be sure which maps to which. If a peer becomes 
unreachable, it may well have multiple connections open (this was a 
proxy, iirc?).

-- 
 i.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help