Opened 7 years ago

Closed 6 years ago

#5490 closed enhancement (implemented)

Collect and review Rob's "circuit scheduling subsystem refactoring" patch

Reported by: robgjansen Owned by:
Priority: Medium Milestone: Tor: 0.2.5.x-final
Component: Core Tor/Tor Version:
Severity: Keywords: tor-relay
Cc: robgjansen, arma, nickm, andrea Actual Points:
Parent ID: Points:
Reviewer: Sponsor:


Rob recently refactored the circuit scheduling subsystem to make it easier to add new schedulers. The current RR and EWMA schedulers have been ported as new scheduling modules. We should review his code to determine if we'd like to move forward with the design.

The code is available in branch "schedule-refactor" at:

Child Tickets

Change History (10)

comment:1 Changed 7 years ago by robgjansen

The main work that is left is making sure that consensus updates will not break the scheduling state. For example, if the consensus tells us to stop using RR and start using EWMA, we need to make sure that the transition works seamlessly. Since the schedulers are now modular, its not clear to me that this will work out of the box.

comment:2 Changed 7 years ago by nickm

Milestone: Tor: 0.2.4.x-final

I want something like this in; 0.2.4.x is the time to merge it.

comment:3 Changed 7 years ago by nickm

Keywords: tor-relay added

comment:4 Changed 7 years ago by nickm

Component: Tor RelayTor

comment:5 Changed 6 years ago by nickm

Milestone: Tor: 0.2.4.x-finalTor: 0.2.5.x-final

comment:6 Changed 6 years ago by arma

New plan here should be to figure out which of Andrea's circuit mux stuff has what effect on Rob's patch, and either do a rewrite or a merge or an abandon.

comment:7 Changed 6 years ago by nickm

Status: newneeds_review

Right. Andrea, this looks a lot like what you did with circuitmux. Is there more here that isn't in your cmux code? Should we close this, or try to merge what's left into 0.2.5?

comment:8 Changed 6 years ago by nickm

Cc: andrea added

comment:9 Changed 6 years ago by andrea

We should probably close this; it looks functionally quite close to my cmux code. I don't think there's any features I see in this that cmux lacks.

comment:10 Changed 6 years ago by nickm

Resolution: implemented
Status: needs_reviewclosed

Okay, closing. Please reopen if there's anything here that Andrea missed.

Note: See TracTickets for help on using tickets.