Skip to content
  • Nick Mathewson's avatar
    Eliminate MaxOnionsPending; replace it with MaxOnionQueueDelay · b0b3c14c
    Nick Mathewson authored
    The right way to set "MaxOnionsPending" was to adjust it until the
    processing delay was appropriate.  So instead, let's measure how long
    it takes to process onionskins (sampling them once we have a big
    number), and then limit the queue based on its expected time to
    finish.
    
    This change is extra-necessary for ntor, since there is no longer a
    reasonable way to set MaxOnionsPending without knowing what mix of
    onionskins you'll get.
    
    This patch also reserves 1/3 of the onionskin spots for ntor
    handshakes, on the theory that TAP handshakes shouldn't be allowed to
    starve their speedier cousins.  We can change this later if need be.
    
    Resolves 7291.
    b0b3c14c