[tor-bugs] #23993 [Core Tor/Tor]: sched: Refactor and fix interactions between channel and scheduler
Tor Bug Tracker & Wiki
blackhole at torproject.org
Wed Oct 25 18:35:49 UTC 2017
#23993: sched: Refactor and fix interactions between channel and scheduler
------------------------------+--------------------------------
Reporter: dgoulet | Owner: dgoulet
Type: defect | Status: assigned
Priority: Medium | Milestone: Tor: 0.3.3.x-final
Component: Core Tor/Tor | Version:
Severity: Normal | Keywords: tor-sched
Actual Points: | Parent ID:
Points: | Reviewer:
Sponsor: |
------------------------------+--------------------------------
This is a top level ticket for all the things we need to address in the
channel subsystem and scheduler.
Channels interact with the scheduler using a few entry points and
assumptions provided by the circuit and channel subsystem. However, it
turns out that the channel abstraction is often violated from the
connection subsystem with `channel_t` and `channeltls_t` objects.
We also have too many cells queues that goes from connection inbuf to
circuit queue to channel queue to connection outbuf. But #23709 showed us
that the channel queues aren't quite working as intended.
Furthermore, we put scheduler state data in the `channel_t` object that
are actually only relevant to the Vanilla scheduler but not to the other
types (KIST and KISTLite for now).
Along with pastly, we've discussed changes to simplify the scheduler
interface, to make scheduler data stored in a channel tied to a scheduler
type and make some changes to improve the channel subsystem.
The child tickets address all of the above (and maybe more) in order to
have a leaner channel subsystem that actually provides properties and
correct assumptions to the scheduler.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/23993>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list