On Tue, 8 Feb 2005 17:02:08 -0300, Pablo Milano <[EMAIL PROTECTED]> wrote: > I've patched l2tpd in order to adjust timeouts using exponential backoff. > I've also added optional logging of these adjustments. > I tested the new version using a 33.2 kbps dialup connection and retries > went between 3 to 5, rising the timeout up to 16 seconds. I am not sure if > the problem is due to the dialup connection or to the windows L2TP/IPsec > client.
Presumably, when you get a saturated dialup link, *both* sides (l2tpd and Windows) of the L2TP tunnels are loosing control packets and thus doing their own retry algorithm. I would have to think Windows does a correct exponential backoff, but I do not know what or if it has a cap on retries. If I read the spec right...it says there's a minimum of 5 attempts and a minimum timeout interval cap of 8 seconds. So, in 5 attempts there are 4 retransmissions (the first one is not a retry). And binary exponential intervals before giving up are correspondingly: 0, 1, 2, 4, 8, 8 (the last 8 seconds are because you still have to wait for the last packet to timeout). That's a total time of approx 31 seconds, minimum, before an implementation is allowed to drop the tunnels because of missing control packets. Of course implementations are allowed to wait longer. Anybody know what Windows does (or is there a registry setting)? David, regarding my changes to rp-l2tp (not l2tpd), I need to clean them up and turn them into proper patches. I'll work on that. I've mainly tried to fix the tunnel re-establishment logic (when that option is set). There were many failure conditions before where the tunnels would never be re-established (which caused me grief whenever a rogue CB radio operating at illegal power levels would take down my DSL connection for a couple minutes). I've also added a lot more statistics gathering and reporting in it. Also, I've always had a question about rp-l2tp running as a LAC: Is there any way to establish multiple independent calls (with separate PPP instances) when communicating to a single L2TP LNS peer? It seems those concepts in rp-l2tp are fused together so you only easily get one call per tunnel, or one tunnel per peer. -- Deron Meranda