[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [tor-relays] dgoulet - Stockholm 2019 expense request



On 30 Apr (12:06:31), marziyeh latifi wrote:
> Hello,
> I have two questions about SENDME cell in TOR:
> Is SENDME a Control cell or a Relay cell?

A SENDME cell is a control cell. See:

https://gitweb.torproject.org/torspec.git/tree/tor-spec.txt#n1531

However, SENDME exists at the stream level which affects only a specific
stream within the circuit and thus their StreamID will be non zero which
explains the "sometimes" in the spec.

> Which node does  interpret  SENDME cells?The node that receives them or the
> edge node(client/exit)?

SENDMEs are always end-to-end so only the end points interpret them.

For example, when a client starts a download of a large file from an Exit
node, the Exit will send some data (up to what we call the circuit window
size) and wait for a SENDME cell _from_ the client to send more. In order
word, the client sends the SENDME towards the Exit to tell it "please send me
more data".

Now, if the client uploads data to the Exit, this is reverse where the Exit
will send a SENDME when it is ready to receive more data.

All this is managed by the package and delivery window maintained at each end
points. See Section 7 of torspec.txt for more details.

Cheers!
David

-- 
71kN/ro+ccyP6zH5RukUX1TNXn7KjZ+E8ffp3xaYOzg=

Attachment: signature.asc
Description: PGP signature

_______________________________________________
tor-relays mailing list
tor-relays@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-relays