Improving Tor Performance By Modifying Path Selection
Abstract
Tor is a popular volunteer-based overlay network that provides anonymity andprivacy for Internet users. Using the Onion Proxy (OP) client, users connect to anetwork of Onion Routers (ORs) and send their traffic through an encrypted path ofthree ORs. One of the main problems of the Tor network is its slow performance, anda key cause of this is the Tor path selection algorithm. In Tor, ORs are selected basedprimarily on their bandwidth. In this work, we improve on the Tor path selectionalgorithm by proposing a new algorithm that besides bandwidth, uses distance as afactor to help reduce propagation delay. In our design, we build circuits to the mostpopular destinations in advance. Since the Tor design does not guarantee choosingless congested ORs, we calculate the round trip time of the circuits during the circuitbuilding phase and choose less congested circuits. We simulated our design in adiscrete-event Tor simulator called Shadow. Our results show a significant improvementin performance compared to Tor, with 83% faster time to first byte and 77%faster total download times for accessing webpage-sized objects.