MLEFlow: Learning from History to Improve Load Balancing in Tor

Tor has millions of daily users seeking privacy while browsing the Internet. It has thousands of relays to route users’ packets while anonymizing their sources and destinations. Users choose relays to forward their traffic according to probability distributions published by the Tor authorities. The...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autores principales: Darir Hussein, Sibai Hussein, Cheng Chin-Yu, Borisov Nikita, Dullerud Geir, Mitra Sayan
Formato: article
Lenguaje:EN
Publicado: Sciendo 2022
Materias:
tor
Acceso en línea:https://doaj.org/article/690025189b764d579b9f7d70cb4156d2
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
id oai:doaj.org-article:690025189b764d579b9f7d70cb4156d2
record_format dspace
spelling oai:doaj.org-article:690025189b764d579b9f7d70cb4156d22021-12-05T14:11:10ZMLEFlow: Learning from History to Improve Load Balancing in Tor2299-098410.2478/popets-2022-0005https://doaj.org/article/690025189b764d579b9f7d70cb4156d22022-01-01T00:00:00Zhttps://doi.org/10.2478/popets-2022-0005https://doaj.org/toc/2299-0984Tor has millions of daily users seeking privacy while browsing the Internet. It has thousands of relays to route users’ packets while anonymizing their sources and destinations. Users choose relays to forward their traffic according to probability distributions published by the Tor authorities. The authorities generate these probability distributions based on estimates of the capacities of the relays. They compute these estimates based on the bandwidths of probes sent to the relays. These estimates are necessary for better load balancing. Unfortunately, current methods fall short of providing accurate estimates leaving the network underutilized and its capacities unfairly distributed between the users’ paths. We present MLEFlow, a maximum likelihood approach for estimating relay capacities for optimal load balancing in Tor. We show that MLEFlow generalizes a version of Tor capacity estimation, TorFlow-P, by making better use of measurement history. We prove that the mean of our estimate converges to a small interval around the actual capacities, while the variance converges to zero. We present two versions of MLEFlow: MLEFlow-CF, a closed-form approximation of the MLE and MLEFlow-Q, a discretization and iterative approximation of the MLE which can account for noisy observations. We demonstrate the practical benefits of MLEFlow by simulating it using a flow-based Python simulator of a full Tor network and packet-based Shadow simulation of a scaled down version. In our simulations MLEFlow provides significantly more accurate estimates, which result in improved user performance, with median download speeds increasing by 30%.Darir HusseinSibai HusseinCheng Chin-YuBorisov NikitaDullerud GeirMitra SayanSciendoarticletorcapacity estimationload balancingmaximum likelihood estimationshadow simulatorprivacyEthicsBJ1-1725Electronic computers. Computer scienceQA75.5-76.95ENProceedings on Privacy Enhancing Technologies, Vol 2022, Iss 1, Pp 75-104 (2022)
institution DOAJ
collection DOAJ
language EN
topic tor
capacity estimation
load balancing
maximum likelihood estimation
shadow simulator
privacy
Ethics
BJ1-1725
Electronic computers. Computer science
QA75.5-76.95
spellingShingle tor
capacity estimation
load balancing
maximum likelihood estimation
shadow simulator
privacy
Ethics
BJ1-1725
Electronic computers. Computer science
QA75.5-76.95
Darir Hussein
Sibai Hussein
Cheng Chin-Yu
Borisov Nikita
Dullerud Geir
Mitra Sayan
MLEFlow: Learning from History to Improve Load Balancing in Tor
description Tor has millions of daily users seeking privacy while browsing the Internet. It has thousands of relays to route users’ packets while anonymizing their sources and destinations. Users choose relays to forward their traffic according to probability distributions published by the Tor authorities. The authorities generate these probability distributions based on estimates of the capacities of the relays. They compute these estimates based on the bandwidths of probes sent to the relays. These estimates are necessary for better load balancing. Unfortunately, current methods fall short of providing accurate estimates leaving the network underutilized and its capacities unfairly distributed between the users’ paths. We present MLEFlow, a maximum likelihood approach for estimating relay capacities for optimal load balancing in Tor. We show that MLEFlow generalizes a version of Tor capacity estimation, TorFlow-P, by making better use of measurement history. We prove that the mean of our estimate converges to a small interval around the actual capacities, while the variance converges to zero. We present two versions of MLEFlow: MLEFlow-CF, a closed-form approximation of the MLE and MLEFlow-Q, a discretization and iterative approximation of the MLE which can account for noisy observations. We demonstrate the practical benefits of MLEFlow by simulating it using a flow-based Python simulator of a full Tor network and packet-based Shadow simulation of a scaled down version. In our simulations MLEFlow provides significantly more accurate estimates, which result in improved user performance, with median download speeds increasing by 30%.
format article
author Darir Hussein
Sibai Hussein
Cheng Chin-Yu
Borisov Nikita
Dullerud Geir
Mitra Sayan
author_facet Darir Hussein
Sibai Hussein
Cheng Chin-Yu
Borisov Nikita
Dullerud Geir
Mitra Sayan
author_sort Darir Hussein
title MLEFlow: Learning from History to Improve Load Balancing in Tor
title_short MLEFlow: Learning from History to Improve Load Balancing in Tor
title_full MLEFlow: Learning from History to Improve Load Balancing in Tor
title_fullStr MLEFlow: Learning from History to Improve Load Balancing in Tor
title_full_unstemmed MLEFlow: Learning from History to Improve Load Balancing in Tor
title_sort mleflow: learning from history to improve load balancing in tor
publisher Sciendo
publishDate 2022
url https://doaj.org/article/690025189b764d579b9f7d70cb4156d2
work_keys_str_mv AT darirhussein mleflowlearningfromhistorytoimproveloadbalancingintor
AT sibaihussein mleflowlearningfromhistorytoimproveloadbalancingintor
AT chengchinyu mleflowlearningfromhistorytoimproveloadbalancingintor
AT borisovnikita mleflowlearningfromhistorytoimproveloadbalancingintor
AT dullerudgeir mleflowlearningfromhistorytoimproveloadbalancingintor
AT mitrasayan mleflowlearningfromhistorytoimproveloadbalancingintor
_version_ 1718371303348502528