SlideShare uma empresa Scribd logo
1 de 21
Multipath QUIC: A
Deployable
Multipath Transport
Protocol
Alexandre Carneiro
Alexey Gabriel Papalexiou
Matheus Donizete
SUMÁRIO
◎Introdução
○ Histórico
○ Objetivos
◎QUIC
◎MPQUIC
○ Funcionamento
○ Avaliação de Desempenho
◎Conclusão
2
Histórico
3
Surgimento: 2009
Aceleração: 23%
Primeiro Esboço: 2012
Padrão: 2015
Browser Suporte: 2013
Server Suporte: 2017
Objetivos QUIC
◎O Principal Objetivo: Acelerar a Web
(Performance)
◎Modificar paradigma de transporte
◎Reduzir latência
◎Reduzir o RTT a zero
◎Se tornar o padrão
4
QUIC
◎Baseado em UDP
◎Não requer mudanças no SO
◎Transferência de dados em ordem
◎Controle de congestionamento
◎Retransmissão automática de pacotes
5
QUIC
◎Stream = Corrente
◎Subflow
◎Encriptação
◎Similar a TCP+TLS+HTTP2
◎Multiplexação de Fluxo
○ Multíplas correntes em um pacote UDP
6
7
QUIC
8
MPQUIC
◎Inspirado pelo Multipath TCP
◎Compatível com QUIC tradicional
◎SO continua sem ser alterado
◎Download mais rápido do que QUIC, TCP e
MPTCP
9
10
Estabelecimento de conexão e Subfluxos
◎ MultiPathFlag
◎ ConnectionID
11
Injeção de Pacotes de Controle
◎Controle do Fluxo
○ Evitar overflow do receptor
○ Estatisticas de RTT adaptadas
◎Controle de Congestionamento
○ Controle por subfluxo
○ Também usa o RTT
12
Injeção de Pacotes de Controle
◎Detecção de Perda
○ Subfluxo detecta
○ Escalonador retransmite
◎Escalonador de Pacotes
○ Passa pacotes da corrente para subfluxos
○ Permite retransmissão em outro subfluxo
13
Injeção de Pacotes de Controle
14
MPQUIC x MPTCP
15
Avaliação de Desempenho
◎Cenário 1:
○ Notebook com duas interfaces de rede (Wi-Fi e
LTE)
○ Servidor: Máquina virtual no AWS (cloud Amazon)
16
QUIC x MPQUIC
17
QUIC x MPQUIC
18
Tempo de carregamento de páginas
19
Conclusão
◎QUIC é a maneira de impulsionar como a
Internet funciona
◎MPQUIC apresenta aumento de vazão e
diminuição da latência
◎Resolve os problemas de head-of-line
blocking
◎O futuro da Internet = QUIC + TLS + HTTP/2
20
Referências
◎ https://www.chromium.org/quic
◎ https://docs.google.com/document/d/1gY9-
YNDNAB1eip-
RTPbqphgySwSNSDHLq9D5Bty4FSU/edit
◎ https://docs.google.com/presentation/d/1BjPUowoO
oG0ywmq5r8QNqnC9JPELUe02jvgyoOW3HFw/edit#sli
de=id.p7
◎ http://www.dicasparacomputador.com/protocolo-
quic-funciona-agiliza-carregamento-sites
21

Mais conteúdo relacionado

Mais procurados

Elastic Meetup Florianópolis - Apresentação Thiago Diniz
Elastic Meetup Florianópolis - Apresentação Thiago DinizElastic Meetup Florianópolis - Apresentação Thiago Diniz
Elastic Meetup Florianópolis - Apresentação Thiago DinizThiago Murilo Diniz
 
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Renato Groff
 
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Renato Groff
 
Implementação de Servidor Linux Ubuntu Server
Implementação de Servidor Linux Ubuntu ServerImplementação de Servidor Linux Ubuntu Server
Implementação de Servidor Linux Ubuntu ServerTiago Bezerra Dos Santos
 
Qt tchelinux-2010
Qt tchelinux-2010Qt tchelinux-2010
Qt tchelinux-2010Wagner Reck
 
Sql SAT #147 Problemas de Fragmentção com TLog
Sql SAT #147 Problemas de Fragmentção com TLogSql SAT #147 Problemas de Fragmentção com TLog
Sql SAT #147 Problemas de Fragmentção com TLogMarcus Bittencourt
 
Projeto Terminais Leves Linux
Projeto Terminais Leves LinuxProjeto Terminais Leves Linux
Projeto Terminais Leves LinuxMarco Neves
 

Mais procurados (11)

AWS 101 - VBronwBag Brasil
AWS 101 - VBronwBag BrasilAWS 101 - VBronwBag Brasil
AWS 101 - VBronwBag Brasil
 
Node.js
Node.jsNode.js
Node.js
 
Elastic Meetup Florianópolis - Apresentação Thiago Diniz
Elastic Meetup Florianópolis - Apresentação Thiago DinizElastic Meetup Florianópolis - Apresentação Thiago Diniz
Elastic Meetup Florianópolis - Apresentação Thiago Diniz
 
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
 
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
Docker para Ambientes de Desenvolvimento e Testes - Open Source Roadshow 2019...
 
Slides nginx
Slides nginxSlides nginx
Slides nginx
 
Implementação de Servidor Linux Ubuntu Server
Implementação de Servidor Linux Ubuntu ServerImplementação de Servidor Linux Ubuntu Server
Implementação de Servidor Linux Ubuntu Server
 
Apresentação
ApresentaçãoApresentação
Apresentação
 
Qt tchelinux-2010
Qt tchelinux-2010Qt tchelinux-2010
Qt tchelinux-2010
 
Sql SAT #147 Problemas de Fragmentção com TLog
Sql SAT #147 Problemas de Fragmentção com TLogSql SAT #147 Problemas de Fragmentção com TLog
Sql SAT #147 Problemas de Fragmentção com TLog
 
Projeto Terminais Leves Linux
Projeto Terminais Leves LinuxProjeto Terminais Leves Linux
Projeto Terminais Leves Linux
 

Semelhante a Multipath QUIC: A Deployable Multipath Transport Protocol

DENIS_Comparacao_de_Protocolos_de_Comunicacao
DENIS_Comparacao_de_Protocolos_de_ComunicacaoDENIS_Comparacao_de_Protocolos_de_Comunicacao
DENIS_Comparacao_de_Protocolos_de_ComunicacaoDenis Storti da Silva
 
Aula05 camada de aplicação
Aula05 camada de aplicaçãoAula05 camada de aplicação
Aula05 camada de aplicaçãoTiago Tda
 
Tecnologia java para sockets
Tecnologia java para socketsTecnologia java para sockets
Tecnologia java para socketslucascsoliveira
 
Content Delivery Networks
Content Delivery NetworksContent Delivery Networks
Content Delivery NetworksWanderson Paim
 
Redes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteRedes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteWellington Oliveira
 
Camada de Transporte - TADS/REC 2014/2
Camada de Transporte - TADS/REC 2014/2Camada de Transporte - TADS/REC 2014/2
Camada de Transporte - TADS/REC 2014/2Caio Miranda
 
Camada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumCamada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumWellington Oliveira
 
FAST TCP e Checksum no IPV6
FAST TCP e Checksum no IPV6FAST TCP e Checksum no IPV6
FAST TCP e Checksum no IPV6Matheus Girardi
 
20130521 computacao nuvem
20130521 computacao nuvem20130521 computacao nuvem
20130521 computacao nuvemLuis Bermudez
 
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...Renato Groff
 
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Tiago Hillebrandt
 
TDC 2012 Trilha – Android University
TDC 2012 Trilha – Android UniversityTDC 2012 Trilha – Android University
TDC 2012 Trilha – Android UniversityInael Rodrigues
 
Websocket
WebsocketWebsocket
Websocketmaxii
 
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...Renato Groff
 
Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito Anderson Silveira
 
Aula06 camada de transporte
Aula06 camada de transporteAula06 camada de transporte
Aula06 camada de transporteTiago Tda
 
Source-to-container no mundo real
Source-to-container no mundo realSource-to-container no mundo real
Source-to-container no mundo realEvandro Silvestre
 

Semelhante a Multipath QUIC: A Deployable Multipath Transport Protocol (20)

DENIS_Comparacao_de_Protocolos_de_Comunicacao
DENIS_Comparacao_de_Protocolos_de_ComunicacaoDENIS_Comparacao_de_Protocolos_de_Comunicacao
DENIS_Comparacao_de_Protocolos_de_Comunicacao
 
Aula05 camada de aplicação
Aula05 camada de aplicaçãoAula05 camada de aplicação
Aula05 camada de aplicação
 
Tecnologia java para sockets
Tecnologia java para socketsTecnologia java para sockets
Tecnologia java para sockets
 
Content Delivery Networks
Content Delivery NetworksContent Delivery Networks
Content Delivery Networks
 
Redes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteRedes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de Transporte
 
Camada de Transporte - TADS/REC 2014/2
Camada de Transporte - TADS/REC 2014/2Camada de Transporte - TADS/REC 2014/2
Camada de Transporte - TADS/REC 2014/2
 
Camada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumCamada de Transporte Redes Tanenbaum
Camada de Transporte Redes Tanenbaum
 
FAST TCP e Checksum no IPV6
FAST TCP e Checksum no IPV6FAST TCP e Checksum no IPV6
FAST TCP e Checksum no IPV6
 
20130521 computacao nuvem
20130521 computacao nuvem20130521 computacao nuvem
20130521 computacao nuvem
 
Minicurso Node-RED.pdf
Minicurso Node-RED.pdfMinicurso Node-RED.pdf
Minicurso Node-RED.pdf
 
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
 
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
Melhorando o desempenho do seu WordPress [WordCamp São Paulo 2015]
 
HTTP 2
HTTP 2HTTP 2
HTTP 2
 
TDC 2012 Trilha – Android University
TDC 2012 Trilha – Android UniversityTDC 2012 Trilha – Android University
TDC 2012 Trilha – Android University
 
Websocket
WebsocketWebsocket
Websocket
 
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
 
Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito
 
Aula06 camada de transporte
Aula06 camada de transporteAula06 camada de transporte
Aula06 camada de transporte
 
Source-to-container no mundo real
Source-to-container no mundo realSource-to-container no mundo real
Source-to-container no mundo real
 
SOA
SOASOA
SOA
 

Multipath QUIC: A Deployable Multipath Transport Protocol