[metrics-bugs] #29787 [Metrics/Onionperf]: Enumerate possible failure cases and include failure information in .tpf output

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Mar 14 23:16:58 UTC 2019


#29787: Enumerate possible failure cases and include failure information in .tpf
output
-------------------------------+------------------------------
 Reporter:  karsten            |          Owner:  metrics-team
     Type:  enhancement        |         Status:  new
 Priority:  Medium             |      Milestone:
Component:  Metrics/Onionperf  |        Version:
 Severity:  Normal             |     Resolution:
 Keywords:                     |  Actual Points:
Parent ID:                     |         Points:
 Reviewer:                     |        Sponsor:
-------------------------------+------------------------------

Comment (by acute):

 Worth noting that the OnionPerf json output records the following error
 codes when a transfer fails, which come directly form TGen:

 shd-tgen-transfer.c:        case TGEN_XFER_ERR_NONE
 shd-tgen-transfer.c:        case TGEN_XFER_ERR_AUTH
 shd-tgen-transfer.c:        case TGEN_XFER_ERR_READ
 shd-tgen-transfer.c:        case TGEN_XFER_ERR_WRITE
 shd-tgen-transfer.c:        case TGEN_XFER_ERR_TIMEOUT
 shd-tgen-transfer.c:        case TGEN_XFER_ERR_STALLOUT
 shd-tgen-transfer.c:        case TGEN_XFER_ERR_PROXY
 shd-tgen-transfer.c:        case TGEN_XFER_ERR_MISC

 We should consider making OnionPerf include the code (NONE, AUTH, READ
 etc) in .tpf output.
 I can also work towards analyzing archived data to see how these codes map
 to the examples above and classify them. For now, these are my initial
 thoughts:
 * A 'NONE' error corresponds to a successful transfer
 * A 'TIMEOUT' error is recorded by OP if the TGen client fails to complete
 a transfer in a certain amount of time (defined in the TGen model graph)
 * A 'STALLOUT' error is recorded by OP if the TGen client fails to
 transfer any bytes in a certain amount of time (defined in the TGen model
 graph)
 * However, OP records a 'READ' error if the TGen server times out of a
 transfer, and possibly due to other failures
 * Streams being destroyed usually result in a 'PROXY' error, these can be
 further correlated with the torctl logs to define subcases

 Will update after digging some more.

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


More information about the metrics-bugs mailing list