[tor-bugs] #17598 [Tor]: Trace cell queue times in Tor to measure Tor application "congestion"

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Jan 14 15:56:18 UTC 2016


#17598: Trace cell queue times in Tor to measure Tor application "congestion"
-------------------------+------------------------------------
 Reporter:  robgjansen   |          Owner:
     Type:  enhancement  |         Status:  new
 Priority:  Medium       |      Milestone:  Tor: 0.2.8.x-final
Component:  Tor          |        Version:
 Severity:  Normal       |     Resolution:
 Keywords:               |  Actual Points:
Parent ID:  #12541       |         Points:
  Sponsor:               |
-------------------------+------------------------------------

Comment (by robgjansen):

 Replying to [comment:3 dgoulet]:
 > Is that correct?

 Pretty much, though I don't think you need the cell size. You just need
 the position in the Tor outbuf in order to compute when the cell gets
 written to the kernel.

 The flow will be like this:

 1. Read bytes from kernel input socket to Tor incoming connection X buffer
 1. Turn bytes from Tor incoming connection X buffer into a cell C
 1. LOG: Record 'socket_read' event for Cell C ID and timestamp
 1. Cell C gets processed
 1. Cell C gets packed for next hop
 1. Cell C gets written to Tor output connection Y buffer
 1. STATE: Store Cell C ID and its position in the Tor output connection Y
 buffer in memory
 1. STATE: Update buffer position of Cell C whenever output connection Y
 writes more cells to kernel output socket
 1. LOG: when position indicates Cell C is now in the kernel, record
 'socket_write' event for Cell ID and timestamp
 1. STATE: Clear state for Cell C

 Does that help?

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/17598#comment:4>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list