Re: [tor-bugs] #25268 [Core Tor/Tor]: cmux: Remove round robin code and make EWMA mandatory

2018-03-19 Thread Tor Bug Tracker & Wiki
#25268: cmux: Remove round robin code and make EWMA mandatory
-+-
 Reporter:  dgoulet  |  Owner:  dgoulet
 Type:  enhancement  | Status:  closed
 Priority:  Low  |  Milestone:  Tor:
 |  0.3.4.x-final
Component:  Core Tor/Tor |Version:
 Severity:  Normal   | Resolution:
 Keywords:  tor-cmux, tor-sched, tor-relay,  |  implemented
  tor-circuit, review-group-33, review-group-34  |  Actual Points:
Parent ID:  #25328   | Points:
 Reviewer:  isis |Sponsor:
 |  SponsorM-can
-+-
Changes (by nickm):

 * status:  merge_ready => closed
 * resolution:   => implemented


Comment:

 I wrote a changes file for this, and merged in master.  Thanks!

--
Ticket URL: 
Tor Bug Tracker & Wiki 
The Tor Project: anonymity online
___
tor-bugs mailing list
tor-bugs@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs

Re: [tor-bugs] #25268 [Core Tor/Tor]: cmux: Remove round robin code and make EWMA mandatory

2018-02-28 Thread Tor Bug Tracker & Wiki
#25268: cmux: Remove round robin code and make EWMA mandatory
-+-
 Reporter:  dgoulet  |  Owner:  dgoulet
 Type:  enhancement  | Status:
 |  merge_ready
 Priority:  Low  |  Milestone:  Tor:
 |  0.3.4.x-final
Component:  Core Tor/Tor |Version:
 Severity:  Normal   | Resolution:
 Keywords:  tor-cmux, tor-sched, tor-relay,  |  Actual Points:
  tor-circuit, review-group-33   |
Parent ID:  #25328   | Points:
 Reviewer:  isis |Sponsor:
 |  SponsorM-can
-+-
Changes (by isis):

 * status:  needs_review => merge_ready
 * sponsor:   => SponsorM-can


Comment:

 Looks good! I also ran `make check && make test-stem && make test-
 network`, and ran it through Travis where [https://travis-
 ci.org/isislovecruft/tor/builds/347530454 it passed].

 Stem was mad about some stuff, frequently erroring on `[] != ['']`, but
 I'm pretty sure that's a Stem problem? Or my Stem is too old or something
 (v1.4.1). Chutney seemed fine though.

--
Ticket URL: 
Tor Bug Tracker & Wiki 
The Tor Project: anonymity online
___
tor-bugs mailing list
tor-bugs@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs

Re: [tor-bugs] #25268 [Core Tor/Tor]: cmux: Remove round robin code and make EWMA mandatory

2018-02-22 Thread Tor Bug Tracker & Wiki
#25268: cmux: Remove round robin code and make EWMA mandatory
-+-
 Reporter:  dgoulet  |  Owner:  dgoulet
 Type:  enhancement  | Status:
 |  needs_review
 Priority:  Low  |  Milestone:  Tor:
 |  0.3.4.x-final
Component:  Core Tor/Tor |Version:
 Severity:  Normal   | Resolution:
 Keywords:  tor-cmux, tor-sched, tor-relay,  |  Actual Points:
  tor-circuit, review-group-33   |
Parent ID:  #25328   | Points:
 Reviewer:  isis |Sponsor:
-+-
Changes (by isis):

 * reviewer:   => isis


--
Ticket URL: 
Tor Bug Tracker & Wiki 
The Tor Project: anonymity online
___
tor-bugs mailing list
tor-bugs@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs

Re: [tor-bugs] #25268 [Core Tor/Tor]: cmux: Remove round robin code and make EWMA mandatory

2018-02-21 Thread Tor Bug Tracker & Wiki
#25268: cmux: Remove round robin code and make EWMA mandatory
-+-
 Reporter:  dgoulet  |  Owner:  dgoulet
 Type:  enhancement  | Status:
 |  needs_review
 Priority:  Low  |  Milestone:  Tor:
 |  0.3.4.x-final
Component:  Core Tor/Tor |Version:
 Severity:  Normal   | Resolution:
 Keywords:  tor-cmux, tor-sched, tor-relay,  |  Actual Points:
  tor-circuit, review-group-33   |
Parent ID:  #25328   | Points:
 Reviewer:   |Sponsor:
-+-
Changes (by dgoulet):

 * parent:   => #25328


--
Ticket URL: 
Tor Bug Tracker & Wiki 
The Tor Project: anonymity online
___
tor-bugs mailing list
tor-bugs@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs

Re: [tor-bugs] #25268 [Core Tor/Tor]: cmux: Remove round robin code and make EWMA mandatory

2018-02-15 Thread Tor Bug Tracker & Wiki
#25268: cmux: Remove round robin code and make EWMA mandatory
-+-
 Reporter:  dgoulet  |  Owner:  dgoulet
 Type:  enhancement  | Status:
 |  needs_review
 Priority:  Low  |  Milestone:  Tor:
 |  0.3.4.x-final
Component:  Core Tor/Tor |Version:
 Severity:  Normal   | Resolution:
 Keywords:  tor-cmux, tor-sched, tor-relay,  |  Actual Points:
  tor-circuit|
Parent ID:   | Points:
 Reviewer:   |Sponsor:
-+-
Changes (by dgoulet):

 * status:  assigned => needs_review


Comment:

 See branch: `ticket25268_034_01`

 As I said, this mostly cleans up code but also make the EWMA policy
 mandatory. Unit test and chutney tests pass. Stats of the branch:

 {{{
  16 files changed, 119 insertions(+), 805 deletions(-)
 }}}

 There could be a commit that would benefit an OnionGit MR, let me know if
 needed.

--
Ticket URL: 
Tor Bug Tracker & Wiki 
The Tor Project: anonymity online
___
tor-bugs mailing list
tor-bugs@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs

[tor-bugs] #25268 [Core Tor/Tor]: cmux: Remove round robin code and make EWMA mandatory

2018-02-15 Thread Tor Bug Tracker & Wiki
#25268: cmux: Remove round robin code and make EWMA mandatory
-+-
 Reporter:  dgoulet  |  Owner:  dgoulet
 Type:   | Status:  assigned
  enhancement|
 Priority:  Low  |  Milestone:  Tor: 0.3.4.x-final
Component:  Core |Version:
  Tor/Tor|   Keywords:  tor-cmux, tor-sched, tor-relay,
 Severity:  Normal   |  tor-circuit
Actual Points:   |  Parent ID:
   Points:   |   Reviewer:
  Sponsor:   |
-+-
 Since 0.2.4.x stable, Tor has been using EWMA circuit policy which is
 enabled by the consensus param: `CircuitPriorityHalflifeMsec=3`

 The `circuitmux.c` code still does quite a bit to maintain the round robin
 circuit policy that was used prior to EWMA. It hasn't been used since 024
 (except in Chutney, see #25265).

 A lot of that code is called for every cell tor receives so it is part of
 our fast path. Removing this round robin code would help in performance
 and remove complexity from the code.

 However, that round robin functionality is used as a fallback if the EWMA
 policy was either not set or couldn't pick an active circuit (I'm not sure
 that is possible if we have active circuits).

 Thus, the side effect of removing this code is that we'll now enforce a
 cmux to have a policy set and make the `pick_active_circuit()` callback
 mandatory. That is OK because we've been enforcing that since 024.

 It would also probably mean that we need to put in a default value in tor
 code for `CircuitPriorityHalflifeMsec` so that if the consensus doesn't
 specify it, we fallback to a usable value instead of being able to disable
 EWMA.

 This piece of work will help out with improving performance of the cmux
 subsystem with #25152 and make sure we stick to only the required code for
 this fast path

--
Ticket URL: 
Tor Bug Tracker & Wiki 
The Tor Project: anonymity online
___
tor-bugs mailing list
tor-bugs@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs