Ricerca e bozze

ricerca TCP

Un argomento per l'aumento della finestra di congestione iniziale di TCP

I flussi TCP iniziano con una finestra di congestione iniziale di al massimo quattro segmenti o circa 4 kB di dati. Poiché la maggior parte delle transazioni web ha durata breve, la finestra di congestione iniziale è un parametro TCP fondamentale per determinare la velocità di completamento dei flussi. Mentre la velocità di accesso alla rete globale è aumentata drasticamente in media nell'ultimo decennio, il valore standard della finestra di congestione iniziale di TCP è rimasto invariato. In questo documento proponiamo di aumentare la finestra di congestione iniziale di TCP ad almeno dieci segmenti (circa 15 kB). Attraverso esperimenti Internet su larga scala, quantificamo i vantaggi in termini di latenza e i costi legati all'utilizzo di una finestra più ampia, in funzione della larghezza di banda della rete, del tempo di round trip (RTT), del prodotto di ritardo della larghezza di banda (BDP) e della natura delle applicazioni. Mostriamo che la latenza media delle risposte HTTP è migliorata di circa il 10% con i maggiori vantaggi dimostrati in reti RTT e BDP elevati. Anche la latenza delle reti a bassa larghezza di banda è migliorata notevolmente nei nostri esperimenti. Il tasso medio di ritrasmissione è aumentato di un modesto 0,5%, con la maggior parte dell'aumento proveniente da applicazioni che aggirano efficacemente l'algoritmo di avvio lento di TCP utilizzando più connessioni simultanee. In base ai risultati dei nostri esperimenti, riteniamo che il periodo di congestione iniziale dovrebbe essere di almeno dieci segmenti e lo stesso deve essere esaminato per la standardizzazione da parte della IETF.

Apertura rapida TCP

I servizi web di oggi sono dominati da flussi TCP talmente brevi da terminare alcuni round trip dopo l'handshake; questo handshake è una fonte significativa di latenza per questi flussi. In questo documento descriviamo la progettazione, l'implementazione e il deployment del protocollo TCP Fast Open, un nuovo meccanismo che consente lo scambio di dati durante l'handshake iniziale di TCP. In questo modo, l'apertura rapida TCP riduce la latenza della rete dell'applicazione di un tempo di round trip completo, diminuendo il ritardo riscontrato da questi brevi trasferimenti TCP. Risolviamo i problemi di sicurezza inerenti al consenso dello scambio di dati durante l'handshake a tre vie, che abbiamo mitigato utilizzando un token di sicurezza che verifichi la proprietà dell'indirizzo IP. Descrivere in dettaglio altri meccanismi di difesa di riserva e risolvere i problemi riscontrati con i middlebox, la compatibilità con le versioni precedenti degli stack di rete esistenti e il deployment incrementale. In base all'analisi del traffico e all'emulazione della rete, mostriamo che TCP Fast Open ridurrebbe la latenza di rete delle transazioni HTTP del 15%e il tempo di caricamento dell'intera pagina di oltre il 10% in media e in alcuni casi fino al 40%

Riduzione della tariffa proporzionale per TCP

La perdita di pacchetti aumenta la latenza per gli utenti web. Il ripristino rapido è un meccanismo chiave che consente a TCP di recuperare dalla perdita di pacchetti. In questo documento, esploriamo alcune delle debolezze dell'algoritmo standard descritto in RFC 3517 e gli algoritmi non standard implementati in Linux. Abbiamo scoperto che questi algoritmi deviano dal comportamento previsto nel mondo reale a causa dell'effetto combinato di flussi brevi, blocchi dell'applicazione, perdite di burst, perdita e riordinamento di ACK (ACK) e estensione degli ACK. Linux soffre di riduzioni eccessive delle finestre di congestione mentre RFC 3517 trasmette burst di grandi dimensioni con perdite elevate, che danneggiano il resto del flusso e aumentano la latenza web. Il nostro contributo principale è un nuovo design per controllare la trasmissione in un recupero rapido, chiamato riduzione della tariffa proporzionale (PRR). Il tasso di risposta positivo recupera dalle perdite in modo rapido, uniforme e preciso, interrompendo le ritrasmissioni tra gli ACK ricevuti. Oltre al PRR, valutiamo l'algoritmo TCP di ritrasmissione anticipata (ER), che abbassa la soglia di riconoscimento duplicata per trasferimenti brevi, e mostriamo che ritardare le ritrasmissioni anticipati per un breve intervallo è efficace nell'evitare le ritrasmissioni false in presenza di un piccolo grado di ritrasmissione. PRR ed ER riducono la latenza TCP delle connessioni che subiscono perdite del 3-10% a seconda delle dimensioni della risposta. Sulla base della nostra strumentazione sui server web di Google e di YouTube negli Stati Uniti e in India, presentiamo anche statistiche chiave sulla natura delle ritrasmissioni TCP.

TCP laminare

Laminar è un nuovo framework per il controllo della congestione TCP che separa la pianificazione della trasmissione, che determina con precisione quando vengono inviati i dati, dal puro controllo della congestione, che determina la quantità totale di dati inviati durante ogni RTT. Si prevede che Laminar consenta a nuovi algoritmi avanzati di regolare con maggiore precisione il traffico TCP.

Bozze SSL e TLS

Falso inizio TLS (Transport Layer Security)

"False Start" è un comportamento facoltativo delle implementazioni TLS. Influisce solo sulla sincronizzazione del protocollo, non sui dati sul protocollo via cavo e può essere implementato unilateralmente. La funzionalità TLS False Start determina una riduzione della latenza di un round trip per determinati handshake.

Estensione della negoziazione successiva del protocollo TLS (Transport Layer Security)

Estensione Transport Layer Security (TLS) per la negoziazione del protocollo a livello di applicazione. Ciò consente al livello dell'applicazione di negoziare quale protocollo deve essere eseguito sulla connessione sicura in modo da evitare ulteriori round trip e che è indipendente dai protocolli del livello dell'applicazione.

Bozza DNS

Subnet client nelle richieste DNS

Questa bozza definisce un'estensione EDNS0 per includere informazioni sulla rete che ha originato una query DNS e sulla rete per cui una risposta può essere memorizzata nella cache.