[tor-bugs] #29698 [Core Tor/Tor]: Edge case that causes improper circuit prioritization for one scheduling run

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Mar 8 17:02:12 UTC 2019


#29698: Edge case that causes improper circuit prioritization for one scheduling
run
--------------------------------+------------------------------------
 Reporter:  pastly              |          Owner:  (none)
     Type:  defect              |         Status:  new
 Priority:  Medium              |      Milestone:  Tor: 0.3.5.x-final
Component:  Core Tor/Tor        |        Version:  Tor: 0.3.2.1-alpha
 Severity:  Normal              |     Resolution:
 Keywords:  tor-sched tor-cmux  |  Actual Points:
Parent ID:                      |         Points:
 Reviewer:                      |        Sponsor:
--------------------------------+------------------------------------

Comment (by pastly):

 Currently KIST will always handle every pending channel. It will always
 send at least one cell, thereby updating the EWMA values. Technically a
 bug, but not super bad IMHO.

 But if KIST were to ever stop handling every pending channel -- for
 example if a global write limit were added on the maximum number of cells
 it is allowed to send over all channels --, then channels could "get
 forgotten about."

 I'm attaching two graphs in a single image that show a single channel's
 best EWMA value over time. In both graphs, the middle 120 seconds takes
 place when a global write limit and extra load are applied to the relay.

 The left graph is without the `touch` function. The channel we are looking
 at gets "forgotten" during the middle 120 seconds. No cells are sent on it
 during this time, and its EWMA value never updates. It's stuck. Once the
 load and write limit are removed, the channel gets to send and its EWMA
 value is updated correctly.

 The right graph adds the `touch` function. The channel gets its EWMA value
 updated periodically like all other channels, and it does get its fair
 chance to send data. The channel is not "forgotten."

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/29698#comment:1>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list