[tor-dev] Connection, Channel and Scheduler - An Intense Trek

Ian Goldberg iang at cs.uwaterloo.ca
Wed Nov 1 13:18:28 UTC 2017


On Wed, Nov 01, 2017 at 09:09:36AM -0400, David Goulet wrote:
> On 01 Nov (07:31:50), Ian Goldberg wrote:
> > On Wed, Nov 01, 2017 at 02:28:03PM +1100, teor wrote:
> > > 
> > > > On 31 Oct 2017, at 06:57, David Goulet <dgoulet at ev0ke.net> wrote:
> > > > 
> > > > * I believe now that we should seriously discuss the relevance of channels.
> > > >  Originally, the idea was good that is providing an abstraction layer for the
> > > >  relay to relay handshake and send/process cells related to the protocol. But,
> > > >  as of now, they are half doing it.
> > > > 
> > > >  There is an important cost in code and maintanance of something that is not
> > > >  properly implemented/finished (channel abstraction) and also something that
> > > >  is unused. An abstraction implemented only for one thing is not really useful
> > > >  except maybe to offer an example for others? But we aren't providing a good
> > > >  example right now imo...
> > > > 
> > > >  That being said, we can spend time fixing the channel subsystem, trying to
> > > >  turn it in a nicer interface, fixing all the issues I've described above (and
> > > >  I suspect there might be more) so the cell scheduler can play nicely with
> > > >  channels. Or, we could rip them off eliminating lots of code and reducing our
> > > >  technical debt. I would like us to think about what we want seriously because
> > > >  that channel subsystem is _complicated_ and very few of us fully understands
> > > >  it afaict.
> > > 
> > > It depends what the goal of the channel layer is.
> > > 
> > > Do we seriously think we will use another protocol in place of TLS?
> > 
> > The channel layer has certainly been used fruitfully in the past for
> > experiments with other transports, such as UDP-based ones, QUIC-Tor,
> > etc.  I would be a little sad to see it disappear completely.
> 
> So after Montreal meeting, I got access to QUIC-Tor code. And, as a
> misconception of channels, they aren't about "transport" but "protocol".
> 
> Thus the QUIC-Tor code didn't even *touch* channels ;). Everything they did
> had to be done mostly at the connection layer.
> 
> For some reasearch to experiement with channels, it would be basically a
> research based on _removing_ TLS between relays. I'm not aware of such a thing
> right now but I'm sure someone did poked at it for sure!

Ah, bad example I guess.  But some of my work in the past certainly has
used channels for this purpose.


More information about the tor-dev mailing list