[tor-bugs] #12541 [Core Tor/Tor]: Integrate KIST socket/circuit scheduling

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Sep 13 02:09:09 UTC 2017


#12541: Integrate KIST socket/circuit scheduling
-------------------------------------------------+-------------------------
 Reporter:  robgjansen                           |          Owner:  dgoulet
     Type:  enhancement                          |         Status:
                                                 |  needs_review
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  0.3.2.x-final
Component:  Core Tor/Tor                         |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  performance, tcp, kist, scheduling,  |  Actual Points:
  tor-relay, term-project-ideas, review-         |
  group-22, review-group-23                      |
Parent ID:                                       |         Points:
 Reviewer:                                       |        Sponsor:
-------------------------------------------------+-------------------------

Comment (by pastly):

 > sooo... did you change anything in the vanilla scheduler? It's
 impossible to tell with the diffs. Wasn't there a bug in there you fixed?
 (https://oniongit.eu/pastly/tor/merge_requests/1#note_863)

 I removed the `SchedulerLowWaterMark__`, `SchedulerHighWaterMark__`, and
 `SchedulerMaxFlushCells__` options. They were ineffective and never
 meaningful.

 Low: Tor had to have less than this in its outbufs or else it wouldn't
 start a scheduling round. High: Tor would stop a scheduling round if it
 hit this. MaxFlush: Tor would flush this many cells at maximum from a
 circuit queue to its outbuf at a time before moving on to another channel.

 They were all set so high that they didn't matter.

 ----

 > "What if ms >= 1000?"
 (https://oniongit.eu/pastly/tor/merge_requests/1#note_869)

 I'm assuming you mean "what if diff >= 1000"

 sched_run_interval (or _freq as it was called then) has a maximum of 100
 ms. If diff is larger than sched_run_interval, the code block with
 `event_active` is called instead so it doesn't matter.

 ----

 I've put off mucking around with int types still.

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


More information about the tor-bugs mailing list