Thus spake Nick Mathewson (nickm@xxxxxxxxxxxxx): > 2010/2/12 ilter yüksel <ilteryuksel@xxxxxxxxx>: > > "For circuits that do not need to be "fast", when choosing among multiple > > candidates for a path element, we choose randomly. For "fast" circuits, we > > pick a given router as an exit with probability proportional to its > > bandwidth." > > > > Could anybody explain why Tor pick exit router with probability proportional > > to its bandwidth only for fast circuits? As far as i know Tor uses this > > technique for load-balance. But why it uses this technique only for fast > > circuits? > > First of all, "Fast" circuits are a bit misnamed as used in > path-spec.txt. Basically, "fast" means "bandwidth-sensitive". The > only ones that aren't don't need to be "fast" in this sense are ones > that are going to be used only for a tiny amount of traffic. > > That said, I think the statement in path-spec.txt may be poor. It > probably makes sense to weight all choices by bandwidth, now that > bandwidth is measured rather than just being self-advertised. > > To see what the code is actually doing, the string to search for is > need_capacity or NEED_CAPACITY. The most interesting layer to look > for this is at is where it's passed as a flag to > circuit_launch_by_router() or circuit_launch_by_extend_info(). Ok, I've gone ahead and fixed both the spec and the code in mikeperry/consensus-bw-weights4 in my git repo. -- Mike Perry Mad Computer Scientist fscked.org evil labs
Attachment:
pgpYdcIIWsruq.pgp
Description: PGP signature