I am looking to create my own version of TOR, and to do that I need to understand the way that relay, directory servers and clients communicate. but after reading Tor: The Second-Generation Onion Router I was left with some questions about the cell structure:
- what is CircID and what is it's purpose?
- what is StreamID and what is it's purpose?
- what is Relay? (the one shown in the cell picture below)