I am a bit confused about handling streams in Tor. When we visit a website like Youtube the browser sends more than 100 requests to more than 20 different hosts. If we consider each request is for a TCP connection and, for the sake of anonymity, we cannot attach two streams to the same circuit, we need a bunch of circuits just for visiting a website.

I do not know what Tor actually does with streams. Are all streams for a website attached to the same circuit? or are they attached to distinct circuits? or Can we reuse circuits?, I mean, does Tor attach several streams to the same circuit?

  • Also, your browser will already multiplex several requests into a single TCP connection (HTTP keep-alive, etc.)
    – user578
    Nov 24 '13 at 10:15
  • Hi there; thanks for joining Tor.SE. Just a quick note: The answer feature is only for answers (not comments). In future, please use the comments feature for non-answers. For more info, on answering question see "How do I write a good answer?" in the help center (I've gone ahead and moved your answer to a comment this time).
    – Sam Whited
    Nov 24 '13 at 23:08

Tor puts many streams onto a single circuit. If possible, the same circuit is used for up to 10 minutes -- see For how long does a circuit stay alive? for some details.

Accordingly, if you visit a website and it takes a hundred http connections to fetch it all, Tor will use the same circuit for all of that. If you stay on the website for a while and load more things, then after a while you'll move to a new circuit for your requests.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.