Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Tor Tor
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 328
    • Issues 328
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 31
    • Merge requests 31
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • The Tor Project
  • Core
  • TorTor
  • Issues
  • #9574
Closed
Open
Issue created Aug 24, 2013 by Roger Dingledine@armaReporter

Process ntor create cells before tap create cells?

Motivated by http://nsl.cs.columbia.edu/papers/2013/cellflood.raid13.pdf

A) In the attack case: If we're under attack by somebody flooding us with tap create cells, it would be nice if the ntor creates get processed before this flood. If this strategy forces them to flood us with ntor create cells instead, that raises the expense.

B) In the normal case: Since handling ntor create cells is faster than handling tap create cells anyway, we could get them out of the way earlier and improve performance even more for folks using ntor-based circuit handshakes.

We already prioritize create-fast cells in exactly this way, though implementation-wise it'll probably be different. For the implementation here, maybe we'll be happiest just keeping two onionskin queues, one for each type.

The only downside I can see is that it'll be harder to measure how much of a performance improvement we get from ntor creates, since now we speed it up in two ways that are hard to separate.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking