
Just to answer my own question for any others. I've played around with it a for a few days and it seems the intermediate ORs don't maintain windows, it's only the edge nodes, maintaining a circuit, and individual stream windows. Hope someone can update the spec to be clearer on this to save others the effort. The offending sentence is: *"The OP behaves identically, except that it must track a packaging window and a delivery window for every OR in the circuit."* Best Gareth On 1 July 2014 09:51, Gareth Owen <gareth.owen@port.ac.uk> wrote:
(sorry re-post - forgot subject)
Dear all
I'm working on a tor research project and am having difficulty understanding the SENDME cells. The tor spec acknowledges that it isn't particularly clear so I would welcome some clarification please.
The spec says that *all* nodes in a circuit maintain a send and receive window, and that this window is decremented on each RELAY_DATA and incremented on each SENDME. Cells that are neither of these do not affect the window size. The problem I have understanding is, that only edge nodes will know whether a cell is a RELAY_DATA, the intermediate nodes only know that its a RELAY but not what type. So, if only RELAY_DATA decrements the window size, and intermediate nodes cannot spot these, what point is there in intermediate nodes having a window?
Any help greatly appreciated.
Gareth
--- Dr Gareth Owen Senior Lecturer School of Computing, University of Portsmouth
W: ghowen.me
-- Dr Gareth Owen Senior Lecturer School of Computing, University of Portsmouth Tel: 02392 846423 Web: ghowen.me