From my understanding, when I first open a connection to a Hidden Service, what happend is the following:
- local Tor client gets the descriptor of the Hidden Service form the HS Directory Server
- local Tor client contact an Introduction Point found in the descriptor obtained at point 1 and tells it about the choosen Rendezvous Point
- local Tor client waits for the Hidden Service to "meet" it at the Rendezvous Point
Now, my question is: if I open a second connection almost identical to the first one, soon after the first one has terminated, will Tor do all the steps again or is there something cached that can speed up the second connection? I think that the descriptors are cached but I'm not sure about the second point.
My goal is to understand how much time is "wasted" every connection in something that's not just the application data flowing from the source to the destination and back.