[Swan-commit] Changes to ref refs/heads/master

Andrew Cagney cagney at vault.libreswan.fi
Mon Nov 27 15:57:20 UTC 2017


New commits:
commit 41a1b15bafe7a366c8e54a66fe710583512a7f8d
Merge: 3bc35e5 fb47042
Author: Andrew Cagney <cagney at gnu.org>
Date:   Mon Nov 27 10:55:16 2017 -0500

    retransmits: always wait at least r_timeout
    
    The combination of duplicate replies and delays could result in
    things waiting less than r_timeout.
    
    Merge commit 'fb47042b8361178f832a5687f57aa65b5bffab0d'

commit fb47042b8361178f832a5687f57aa65b5bffab0d
Author: Andrew Cagney <cagney at gnu.org>
Date:   Thu Nov 23 20:34:01 2017 -0500

    testing: expect correct retransmit count

commit cce50b0ab0fc6e34e461ded32432410ca1a691ad
Author: Andrew Cagney <cagney at gnu.org>
Date:   Thu Nov 23 19:27:20 2017 -0500

    retransmits: fix retransmit count by cleaning up delay/timeout code
    
    Was one too many.
    
    Stop retransmitting when R_TIMEOUT is exceeded, not when the equation
    DELAY*2**NR_RETEANSMITS exceeds R_TIMEOUT.  This way duplicate packet
    re-transmits don't cause re-transmits to stop early (instead they
    just slow down the re-transmits).
    
    Calculate delay by just doubling it every time there is a re-transmit
    but keep it less than R_TIMEOUT.  This leads to the sequence:
          DELAY, DELAY*1, DELAY*2, DELAY*4, ...,
          DELAY*2**floor(log2(TIMEOUT/DELAY)), ...
    where duplicate re-transmits will result in some values being skipped.



More information about the Swan-commit mailing list