Path selection algorithm wastes exit bandwidth by choosing exits as relay nodes.
Nodes with more liberal exit policies should be chosen less frequently than nodes with more conservative exit policies, since they will naturally attract a disproportionate number of streams exiting to that port. For example, the fact that many streams traverse one particular node because it provides exit to port 6881 should not result in a concomitant bandwidth report that makes it more attractive to clients interested in exiting to port 80.
Ideally, we would (a) take into account that two hops of each circuit are chosen irrespectively of exit policy, and (b) we want to avoid "popular" nodes, where "popular" is some function of the scarcity of the ports to which they allow passage.
[Automatically added by flyspray2trac: Operating System: All]