SlideShare a Scribd company logo
1
Università degli studi di Trieste
Dipartimento di Ingegneria e Architettura
Corso di Laurea in Ingegneria Elettronica e Informatica
Extended Summary of “Comparing the Effects of DNS, DoT, and
DoH on Web Performance”
Candidato: Relatore:
Gabriele Cimador Prof. Alberto Bartoli
Matricola: IN0500665
Anno Accademico 2021-2021
2
Indice
Introduzione...............................................................................................................3
Metodologia...............................................................................................................3
Risultati......................................................................................................................4
Considerazioni finali e conclusione ............................................................................6
Bibliografia.................................................................................................................6
3
Introduzione
Il Domain Name System (DNS) gioca un ruolo fondamentale nel funzionamento di Internet, dovendo
supportare grossissimi carichi di lavoro che durante gli anni è aumentato di sette ordini di grandezza.
La progettazione e l’implementazione di questa tecnologia si è dunque concentrata, fin dall’inizio,
sulla minimizzazione della latenza di ogni query DNS. Il protocollo Do53, seguendo questa filosofia,
permette di inviare messaggi DNS non crittati utilizzando il protocollo UDP.
Negli ultimi anni, diverse ricerche hanno dimostrato che le query DNS sono un potenziale rischio per
la privacy e la sicurezza di ogni utente. Sono stati sviluppati dunque nuovi protocolli che permettono
di risolvere domain names con garanzie di sicurezza; nell’articolo vengono analizzati due di questi:
 DNS-over-TLS (DoT) che permette di crittare il traffico DNS tramite un canale TLS stabilito
su una connessione TCP;
 DNS-over-HTTPS (DoH), che permette di inviare messaggi DNS tramite HTTPS (dunque usa
anch’esso TCP e TLS).
DoT e DoH presentano però un costo prestazionale aggiuntivo in termini di overhead, in particolare
quello introdotto dai protocolli TCP, TLS e HTTP. L’entità e l’impatto di questo costo, tuttavia, non
sono ancora ben compresi. L’esperimento descritto nell’articolo è mirato a misurare, analizzare e
comparare come l’impiego dei protocolli Do53, DoT e DoH incida sull’esperienza di navigazione degli
utenti su Internet tramite web browsers.
Contrariamente alle aspettative, lo studio dimostra come in certe condizioni DoT e DoH possano
rendere prestazioni migliori rispetto a Do53.
Metodologia
Le metriche considerate in questo esperimento sono state i page load time, ovvero il tempo
impiegato da una pagina web per caricarsi completamente (risorse comprese) e i DNS query
response time.
 Per misurare i page load time, è stato utilizzato il browser Mozilla Firefox 67.0.1 in headless
mode, cioè senza interfaccia utente, ed è stato automatizzato per visitare una lista di siti
web. Una volta che la pagina ha finito di caricare, è stato raccolto l’HTTP Archive Object
(HAR) e da quest’ultimo è stato estratto il page load time.
 Per misurare accuratamente i DNS query response time, è stato utilizzato un tool creato
appositamente grazie alle librerie C getdns e libcurl. Getdns mette a disposizione una API per
inviare query DNS con i protocolli Do53 e DoT mentre libcurl permette di inviare query DNS
con il protocollo DoH. È stato misurato il DNS query response time per ogni distinto domain
name presente negli HAR raccolti.
Il tool creato per effettuare le misurazioni è stato eseguito da istanze “Amazon EC2 m5.2x large
hardware configuration” che erano connesse alla rete tramite Ethernet. Per poter effettuare uno
4
studio completo ed ottenere risultati che rispecchiassero diverse possibili configurazioni, sono state
introdotte tre variabili.
 La prima è la posizione geografica: le istanze sono state lanciate in cinque diversi punti
attorno al globo: Ohio, California, Francoforte, Sydney e Seoul.
 La seconda è la condizione della rete: oltre alla condizione normale della rete offerta dalle
istanze, è stata emulata una rete 4G, una rete 4G con frequente perdita di pacchetti e una
rete 3G. Le reti sono state emulate tramite il traffic shaping aumentando la latenza, la
percentuale dei pacchetti persi e limitando il throughput in uplink e downlink.
 La terza è il DNS Resolver interrogato (successivamente chiamato “recursor”). Vengono
interrogati quattro diversi public recursor: Google, Cloudflare, Quad9 e quello locale delle
istanze Amazon (che supporta solo Do53).
Sono state dunque eseguite venti istanze diverse, una per ogni differente condizione della rete per
ogni punto geografico. Per ognuna di esse è stata randomizzata la lista di siti web da visitare, l’ordine
di utilizzo del protocollo DNS e del public recursor da interrogare.
I siti web visitati sono stati i primi mille della “Tranco top-list”, considerati i più popolari. Inoltre,
sono stati visitati i siti web della medesima lista dalla posizione 99000 alla 100000 per comprendere
le performance dei browser con i siti meno popolari.
Risultati
I rilevamenti concernenti i query response time, indipendentemente dalle tre variabili introdotte,
confermano l’ipotesi che l’uso dei due protocolli crittati possono risultare, in media, in tempi di
latenza maggiori per le singole query a causa del maggiore overhead presente. Viene osservato però
che DoH è leggermente più veloce rispetto a Do53 nelle query più lente; si suppone che la ragione
possa essere il caching HTTP dei messaggi DNS.
Le misurazioni dei page load time, a sorpresa degli autori, hanno invece portato alla luce un
comportamento interessante.
Considerando l’istanza di Francoforte con condizioni normali della rete, si è osservato che
interrogando Cloudflare i protocolli hanno concluso il caricamento della pagina in media entro 30
ms l’uno dall’altro. Gli autori trovano in Firefox la causa di questo comportamento: con Do53 e DoT
esso risolve i nomi grazie ad un thread pool, mentre con DoH utilizza HTTP/2, un’implementazione
asincrona. Con DoH, dunque, si potrebbe beneficiare del fatto che il caricamento di una pagina non
sarà bloccato dalle query se si è in condizione di exhausted thread pool.
Viene inoltre evidenziato come le configurazioni <Google, DoH> e <Quad9, DoT> abbiano reso le
peggiori prestazioni tra tutte le altre configurazioni considerate.
Confrontando le prestazioni delle istanze di Francoforte, che differiscono per condizione della rete,
è emerso che DoT e DoH possono avere prestazioni migliori rispetto a Do53.
5
Nella Figura 1 vengono riportate le funzioni di ripartizione della differenza in page load time tra i
protocolli crittati e Do53, misurata dalle istanze di Francoforte usando Cloudflare.
Sorprendentemente, sulla rete 4G emulata (seconda colonna della Figura 1) il page load time medio
con DoT è di 11 ms più rapido rispetto a quello con Do53 e con DoH è 58 ms più lento. Sulla rete 4G
con frequente perdita di pacchetti (terza colonna della Figura 1) DoT e DoH sono più rapidi di Do53:
DoT è più rapido di 101 ms mentre DoH è più rapido di 33ms rispetto a Do53 in media.
Il motivo di questo fenomeno viene attribuito all’implementazione dei protocolli. Dal momento che
DoT e DoH utilizzano TCP i tempi di ritrasmissione sono molto più piccoli: con TCP un segmento può
essere ritrasmesso dopo due volte il round trip time, che è dell’ordine delle centinaia di millisecondi,
mentre ad esempio in Linux il timeout per le query Do53 è impostato a cinque secondi.
Quando le condizioni della rete peggiorano sulla rete emulata 3G (quarta colonna della Figura 1),
DoT e DoH hanno prestazioni peggiori rispetto a Do53 anche in termini di page load time. La causa
di questo comportamento viene attribuita al maggiore overhead di bytes inviati rispetto a Do53.
La tendenza osservata, indipendentemente dalla posizione geografica, è quindi che DoT e DoH
possono risultare in prestazioni migliori in caso di frequente perdita di pacchetti ed alta latenza.
Vengono però entrambi superati da Do53 se le condizioni della rete peggiorano notevolmente,
come nel caso della rete 3G emulata.
Figura 1: Comparazione dei page load time dalle istanze di Francoforte interrogando Cloudflare
6
Considerazioni finali e conclusione
Questo studio ha il merito di aver contribuito con:
 Misurazioni che dimostrano come la scelta del protocollo DNS in base alla posizione
geografica, condizione della rete e public recursor interrogato incida sull’esperienza utente.
 Un accurato e variegato studio sulle performance dei protocolli Do53, DoT e DoH, che ha
permesso di validare ed ampliare studi precedentemente condotti, considerati poco
accurati.
 La dimostrazione che sotto certe condizioni DoT e DoH possono rendere prestazioni migliori
in termini di page load time, grazie a tempi di ritrasmissione più rapidi.
 Due osservazioni fatte durante lo studio che i DNS stakeholders dovrebbero considerare,
qui di seguito riportate.
Si suggerisce l’utilizzo delle “opportunistic partial responses”, una funzionalità del DNS Internet
Standard non attualmente supportata dai public recursor utilizzati: il client indica di voler utilizzare
questa funzionalità nella prima query e poi può, se il server lo supporta, risolvere più nomi con
un’unica query, permettendo in questo modo di inviare un minore overhead relativo.
Si è osservato che con DoH la memorizzazione dei messaggi DNS nella cache HTTP permetteva una
risposta più rapida in caso di cache hit, dal momento che il recursor non doveva costruire per intero
la DNS response ma semplicemente leggerla dalla cache. Si suggerisce dunque di memorizzare le
risposte DNS indipendentemente dal transaction id e di aggiungerlo solo prima di rispondere.
Le rilevazioni fatte presentano alcune limitazioni che potrebbero influire sulla generalità dei risultati.
Innanzitutto, le misurazioni vengono effettuate esclusivamente con il sistema operativo Debian e
dunque i suoi parametri per gli algoritmi di rete e il suo networking stack potrebbero influire sui
risultati. Inoltre, ci si affida solo a Mozilla Firefox per misurare i page load time; il suo codice per la
gestione delle query DNS dunque condizionerà i risultati. Si rimarca però che i sistemi operativi e i
browser sono altamente ottimizzati, pertanto ci si aspetta che i risultati siano generalizzabili. Infine,
gli esperimenti vengono condotti su istanze localizzate in data centers. Questo implica che non è
possibile generalizzare i risultati per altre reti come, ad esempio, quelle residenziali fornite dagli ISP.
D’altro canto, Amazon EC2 permette di capire come Do53, DoT, DoH rendano da cinque diverse
posizioni geografiche.
Bibliografia
 Austin Hounsel, Kevin Borgolte, Paul Schmitt, Jordan Holland, and Nick Feamster, Comparing
the Effects of DNS, DoT, and DoH on Web Performance. In: Proceedings of The Web
Conference 2020, pp. 562–572.

More Related Content

PDF
Extended summary of “Understanding the Performance Costs and Benefits of Pri...
PPTX
Presentation - Extended Summary of “Comparing the Effects of DNS, DoT, and D...
PDF
Summary of "An Empirical Study of the Cost of DNS-over-HTTPS" [EXTENDED SUMMARY]
PDF
Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...
PPTX
Slides - Progetto e realizzazione di uno strumento per la raccolta di dipende...
PDF
Extended summary of dark matter uncovering the dark comet rat ecosystem
PDF
Summary of "Cache Me If You Can: Effects of DNS Time-to-Live
PDF
The Google File System
Extended summary of “Understanding the Performance Costs and Benefits of Pri...
Presentation - Extended Summary of “Comparing the Effects of DNS, DoT, and D...
Summary of "An Empirical Study of the Cost of DNS-over-HTTPS" [EXTENDED SUMMARY]
Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...
Slides - Progetto e realizzazione di uno strumento per la raccolta di dipende...
Extended summary of dark matter uncovering the dark comet rat ecosystem
Summary of "Cache Me If You Can: Effects of DNS Time-to-Live
The Google File System

Similar to Extended Summary of “Comparing the Effects of DNS, DoT, and DoH on Web Performance” (20)

PDF
Summary of "An Empirical Study of the Cost of DNS-over-HTTPS" [PRESENTATION]
PDF
Summary of "NebulOS: A Big Data framework for astrophysics"
PDF
Extended Summary of "DNS Observatory: the Big Picture of the DNS"
PDF
Michielin Davide Extended Summary
ODP
Slide Bit Torrent
PDF
Sistemi Distribuiti part 5: P2P systems: from simple to distributed P2P trust...
PDF
6 Dns Parte1
PDF
Extended Summary of "DNS Observatory: The Big Picture of the DNS"
PDF
Io uso Tor e non lascio tracce! Sei proprio sicuro?
PPT
1 Intro Propedeutici
PPT
2 - Introduzione a Internet (1/2) - 16/17
PPT
02 - Introduzione a Internet (I)
PDF
Architetture per la riservatezza, integrità e disponibilità dei dati nei sist...
PPTX
Lezione 1 - Teoria - Accenni sulle reti e sui servizi internet
PPT
3 - Introduzione a Internet (2/2)
PPT
2 - Introduzione a Internet (1/2) - 17/18
PPTX
Named data networking
PPT
Valorizzare le IDT conformi agli standard OGC® per produrre Linked Open Data ...
PPT
l'aspetto sociale del p2p
PPT
L'aspetto sociale del p2p
Summary of "An Empirical Study of the Cost of DNS-over-HTTPS" [PRESENTATION]
Summary of "NebulOS: A Big Data framework for astrophysics"
Extended Summary of "DNS Observatory: the Big Picture of the DNS"
Michielin Davide Extended Summary
Slide Bit Torrent
Sistemi Distribuiti part 5: P2P systems: from simple to distributed P2P trust...
6 Dns Parte1
Extended Summary of "DNS Observatory: The Big Picture of the DNS"
Io uso Tor e non lascio tracce! Sei proprio sicuro?
1 Intro Propedeutici
2 - Introduzione a Internet (1/2) - 16/17
02 - Introduzione a Internet (I)
Architetture per la riservatezza, integrità e disponibilità dei dati nei sist...
Lezione 1 - Teoria - Accenni sulle reti e sui servizi internet
3 - Introduzione a Internet (2/2)
2 - Introduzione a Internet (1/2) - 17/18
Named data networking
Valorizzare le IDT conformi agli standard OGC® per produrre Linked Open Data ...
l'aspetto sociale del p2p
L'aspetto sociale del p2p
Ad

Extended Summary of “Comparing the Effects of DNS, DoT, and DoH on Web Performance”

  • 1. 1 Università degli studi di Trieste Dipartimento di Ingegneria e Architettura Corso di Laurea in Ingegneria Elettronica e Informatica Extended Summary of “Comparing the Effects of DNS, DoT, and DoH on Web Performance” Candidato: Relatore: Gabriele Cimador Prof. Alberto Bartoli Matricola: IN0500665 Anno Accademico 2021-2021
  • 3. 3 Introduzione Il Domain Name System (DNS) gioca un ruolo fondamentale nel funzionamento di Internet, dovendo supportare grossissimi carichi di lavoro che durante gli anni è aumentato di sette ordini di grandezza. La progettazione e l’implementazione di questa tecnologia si è dunque concentrata, fin dall’inizio, sulla minimizzazione della latenza di ogni query DNS. Il protocollo Do53, seguendo questa filosofia, permette di inviare messaggi DNS non crittati utilizzando il protocollo UDP. Negli ultimi anni, diverse ricerche hanno dimostrato che le query DNS sono un potenziale rischio per la privacy e la sicurezza di ogni utente. Sono stati sviluppati dunque nuovi protocolli che permettono di risolvere domain names con garanzie di sicurezza; nell’articolo vengono analizzati due di questi:  DNS-over-TLS (DoT) che permette di crittare il traffico DNS tramite un canale TLS stabilito su una connessione TCP;  DNS-over-HTTPS (DoH), che permette di inviare messaggi DNS tramite HTTPS (dunque usa anch’esso TCP e TLS). DoT e DoH presentano però un costo prestazionale aggiuntivo in termini di overhead, in particolare quello introdotto dai protocolli TCP, TLS e HTTP. L’entità e l’impatto di questo costo, tuttavia, non sono ancora ben compresi. L’esperimento descritto nell’articolo è mirato a misurare, analizzare e comparare come l’impiego dei protocolli Do53, DoT e DoH incida sull’esperienza di navigazione degli utenti su Internet tramite web browsers. Contrariamente alle aspettative, lo studio dimostra come in certe condizioni DoT e DoH possano rendere prestazioni migliori rispetto a Do53. Metodologia Le metriche considerate in questo esperimento sono state i page load time, ovvero il tempo impiegato da una pagina web per caricarsi completamente (risorse comprese) e i DNS query response time.  Per misurare i page load time, è stato utilizzato il browser Mozilla Firefox 67.0.1 in headless mode, cioè senza interfaccia utente, ed è stato automatizzato per visitare una lista di siti web. Una volta che la pagina ha finito di caricare, è stato raccolto l’HTTP Archive Object (HAR) e da quest’ultimo è stato estratto il page load time.  Per misurare accuratamente i DNS query response time, è stato utilizzato un tool creato appositamente grazie alle librerie C getdns e libcurl. Getdns mette a disposizione una API per inviare query DNS con i protocolli Do53 e DoT mentre libcurl permette di inviare query DNS con il protocollo DoH. È stato misurato il DNS query response time per ogni distinto domain name presente negli HAR raccolti. Il tool creato per effettuare le misurazioni è stato eseguito da istanze “Amazon EC2 m5.2x large hardware configuration” che erano connesse alla rete tramite Ethernet. Per poter effettuare uno
  • 4. 4 studio completo ed ottenere risultati che rispecchiassero diverse possibili configurazioni, sono state introdotte tre variabili.  La prima è la posizione geografica: le istanze sono state lanciate in cinque diversi punti attorno al globo: Ohio, California, Francoforte, Sydney e Seoul.  La seconda è la condizione della rete: oltre alla condizione normale della rete offerta dalle istanze, è stata emulata una rete 4G, una rete 4G con frequente perdita di pacchetti e una rete 3G. Le reti sono state emulate tramite il traffic shaping aumentando la latenza, la percentuale dei pacchetti persi e limitando il throughput in uplink e downlink.  La terza è il DNS Resolver interrogato (successivamente chiamato “recursor”). Vengono interrogati quattro diversi public recursor: Google, Cloudflare, Quad9 e quello locale delle istanze Amazon (che supporta solo Do53). Sono state dunque eseguite venti istanze diverse, una per ogni differente condizione della rete per ogni punto geografico. Per ognuna di esse è stata randomizzata la lista di siti web da visitare, l’ordine di utilizzo del protocollo DNS e del public recursor da interrogare. I siti web visitati sono stati i primi mille della “Tranco top-list”, considerati i più popolari. Inoltre, sono stati visitati i siti web della medesima lista dalla posizione 99000 alla 100000 per comprendere le performance dei browser con i siti meno popolari. Risultati I rilevamenti concernenti i query response time, indipendentemente dalle tre variabili introdotte, confermano l’ipotesi che l’uso dei due protocolli crittati possono risultare, in media, in tempi di latenza maggiori per le singole query a causa del maggiore overhead presente. Viene osservato però che DoH è leggermente più veloce rispetto a Do53 nelle query più lente; si suppone che la ragione possa essere il caching HTTP dei messaggi DNS. Le misurazioni dei page load time, a sorpresa degli autori, hanno invece portato alla luce un comportamento interessante. Considerando l’istanza di Francoforte con condizioni normali della rete, si è osservato che interrogando Cloudflare i protocolli hanno concluso il caricamento della pagina in media entro 30 ms l’uno dall’altro. Gli autori trovano in Firefox la causa di questo comportamento: con Do53 e DoT esso risolve i nomi grazie ad un thread pool, mentre con DoH utilizza HTTP/2, un’implementazione asincrona. Con DoH, dunque, si potrebbe beneficiare del fatto che il caricamento di una pagina non sarà bloccato dalle query se si è in condizione di exhausted thread pool. Viene inoltre evidenziato come le configurazioni <Google, DoH> e <Quad9, DoT> abbiano reso le peggiori prestazioni tra tutte le altre configurazioni considerate. Confrontando le prestazioni delle istanze di Francoforte, che differiscono per condizione della rete, è emerso che DoT e DoH possono avere prestazioni migliori rispetto a Do53.
  • 5. 5 Nella Figura 1 vengono riportate le funzioni di ripartizione della differenza in page load time tra i protocolli crittati e Do53, misurata dalle istanze di Francoforte usando Cloudflare. Sorprendentemente, sulla rete 4G emulata (seconda colonna della Figura 1) il page load time medio con DoT è di 11 ms più rapido rispetto a quello con Do53 e con DoH è 58 ms più lento. Sulla rete 4G con frequente perdita di pacchetti (terza colonna della Figura 1) DoT e DoH sono più rapidi di Do53: DoT è più rapido di 101 ms mentre DoH è più rapido di 33ms rispetto a Do53 in media. Il motivo di questo fenomeno viene attribuito all’implementazione dei protocolli. Dal momento che DoT e DoH utilizzano TCP i tempi di ritrasmissione sono molto più piccoli: con TCP un segmento può essere ritrasmesso dopo due volte il round trip time, che è dell’ordine delle centinaia di millisecondi, mentre ad esempio in Linux il timeout per le query Do53 è impostato a cinque secondi. Quando le condizioni della rete peggiorano sulla rete emulata 3G (quarta colonna della Figura 1), DoT e DoH hanno prestazioni peggiori rispetto a Do53 anche in termini di page load time. La causa di questo comportamento viene attribuita al maggiore overhead di bytes inviati rispetto a Do53. La tendenza osservata, indipendentemente dalla posizione geografica, è quindi che DoT e DoH possono risultare in prestazioni migliori in caso di frequente perdita di pacchetti ed alta latenza. Vengono però entrambi superati da Do53 se le condizioni della rete peggiorano notevolmente, come nel caso della rete 3G emulata. Figura 1: Comparazione dei page load time dalle istanze di Francoforte interrogando Cloudflare
  • 6. 6 Considerazioni finali e conclusione Questo studio ha il merito di aver contribuito con:  Misurazioni che dimostrano come la scelta del protocollo DNS in base alla posizione geografica, condizione della rete e public recursor interrogato incida sull’esperienza utente.  Un accurato e variegato studio sulle performance dei protocolli Do53, DoT e DoH, che ha permesso di validare ed ampliare studi precedentemente condotti, considerati poco accurati.  La dimostrazione che sotto certe condizioni DoT e DoH possono rendere prestazioni migliori in termini di page load time, grazie a tempi di ritrasmissione più rapidi.  Due osservazioni fatte durante lo studio che i DNS stakeholders dovrebbero considerare, qui di seguito riportate. Si suggerisce l’utilizzo delle “opportunistic partial responses”, una funzionalità del DNS Internet Standard non attualmente supportata dai public recursor utilizzati: il client indica di voler utilizzare questa funzionalità nella prima query e poi può, se il server lo supporta, risolvere più nomi con un’unica query, permettendo in questo modo di inviare un minore overhead relativo. Si è osservato che con DoH la memorizzazione dei messaggi DNS nella cache HTTP permetteva una risposta più rapida in caso di cache hit, dal momento che il recursor non doveva costruire per intero la DNS response ma semplicemente leggerla dalla cache. Si suggerisce dunque di memorizzare le risposte DNS indipendentemente dal transaction id e di aggiungerlo solo prima di rispondere. Le rilevazioni fatte presentano alcune limitazioni che potrebbero influire sulla generalità dei risultati. Innanzitutto, le misurazioni vengono effettuate esclusivamente con il sistema operativo Debian e dunque i suoi parametri per gli algoritmi di rete e il suo networking stack potrebbero influire sui risultati. Inoltre, ci si affida solo a Mozilla Firefox per misurare i page load time; il suo codice per la gestione delle query DNS dunque condizionerà i risultati. Si rimarca però che i sistemi operativi e i browser sono altamente ottimizzati, pertanto ci si aspetta che i risultati siano generalizzabili. Infine, gli esperimenti vengono condotti su istanze localizzate in data centers. Questo implica che non è possibile generalizzare i risultati per altre reti come, ad esempio, quelle residenziali fornite dagli ISP. D’altro canto, Amazon EC2 permette di capire come Do53, DoT, DoH rendano da cinque diverse posizioni geografiche. Bibliografia  Austin Hounsel, Kevin Borgolte, Paul Schmitt, Jordan Holland, and Nick Feamster, Comparing the Effects of DNS, DoT, and DoH on Web Performance. In: Proceedings of The Web Conference 2020, pp. 562–572.