A Microsoft abriu sua implementação do protocolo QUIC usado em HTTP/3

Microsoft anunciou o sobre como abrir o código da biblioteca MsQuicName com a implementação do protocolo de rede QUIC. O código é escrito em C e distribuído por sob a licença MIT. A biblioteca é multiplataforma e pode ser usada não apenas em Windowsmas também em Linux envolvendo Schannel ou OpenSSL para TLS 1.3. No futuro, está previsto o suporte a outras plataformas.

A biblioteca é baseada no código do driver msquic.sys fornecido no kernel. Windows 10 (Prévia Insider) para garantir o funcionamento do HTTP e SMB Além do QUIC, esse código também é usado para implementar o HTTP/3 na pilha interna. Windows e em .NET Core. O desenvolvimento da biblioteca MsQuic será conduzido inteiramente no GitHub, utilizando revisão pública, pull requests e GitHub Issues. Uma infraestrutura foi estabelecida para verificar cada commit e pull request com base em um conjunto de mais de 4000 testes. Assim que o ambiente de desenvolvimento estiver estabilizado, contribuições de desenvolvedores terceirizados serão aceitas.

O MsQuic já pode ser usado para criar servidores e clientes, mas nem todas as funcionalidades definidas na especificação IETF estão disponíveis atualmente. Por exemplo, não há suporte para 0-RTT, migração de cliente, Path MTU Discovery ou controle de endereço preferencial do servidor. Entre os recursos implementados, destaca-se a otimização para atingir rendimento máximo e atrasos mínimos, suporte para entrada/saída assíncrona, RSS (Receive Side Scaling) e a capacidade de combinar fluxos UDP de entrada e saída. A implementação do MsQuic foi testada quanto à compatibilidade com versões experimentais dos navegadores Chrome e Edge.

Lembre-se de que HTTP/3 padroniza o uso do protocolo QUIC como transporte para HTTP/2. Protocolo QUIC (Quick UDP Internet Connections) é desenvolvido pelo Google desde 2013 como uma alternativa à combinação TCP+TLS para a Web, resolvendo problemas com longos tempos de configuração e negociação de conexões em TCP e eliminando atrasos quando pacotes são perdidos durante a transferência de dados. QUIC é uma extensão do protocolo UDP que suporta multiplexação de múltiplas conexões e fornece métodos de criptografia equivalentes a TLS/SSL.

O principal características RÁPIDO:

  • Alta segurança semelhante ao TLS (essencialmente o QUIC fornece a capacidade de usar TLS 1.3 sobre UDP);
  • Controle de integridade de fluxo para evitar perda de pacotes;
  • A capacidade de estabelecer instantaneamente uma conexão (0-RTT, em cerca de 75% dos casos, os dados podem ser transmitidos imediatamente após o envio de um pacote de configuração de conexão) e garantir atrasos mínimos entre o envio de uma solicitação e o recebimento de uma resposta (RTT, Round Trip Time) ;
    A Microsoft abriu sua implementação do protocolo QUIC usado em HTTP/3
  • Não use o mesmo número de sequência ao retransmitir um pacote, o que permite evitar ambigüidades na determinação dos pacotes recebidos e eliminar os tempos limite;
  • A perda de pacotes afeta apenas a entrega do stream associado a ele e não interrompe a entrega de dados em streams transmitidos em paralelo na conexão atual;
  • Ferramentas de correção de erros que minimizam atrasos devido à retransmissão de pacotes perdidos. Uso de códigos especiais de correção de erros no nível do pacote para reduzir situações que requerem retransmissão de dados perdidos do pacote.
  • Os limites dos blocos criptográficos estão alinhados com os limites dos pacotes QUIC, o que reduz o impacto das perdas de pacotes na decodificação do conteúdo dos pacotes subsequentes;
  • Sem problemas com o bloqueio da fila TCP;
  • Suporte de ID de conexão para reduzir o tempo de reconexão para clientes móveis;
  • Possibilidade de conectar mecanismos avançados para controle de sobrecarga de conexão;
  • Utilizar técnicas de previsão de largura de banda em cada direção para garantir a intensidade ótima de envio de pacotes, evitando rolar para um estado de congestionamento, no qual há perda de pacotes;
  • Perceptível crescimento desempenho e taxa de transferência em comparação com o TCP. Para serviços de vídeo como o YouTube, o QUIC demonstrou reduzir as operações de rebuffering de vídeo em 30%.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção DDoS, servidores VPS VDS 🔥 Compre hospedagem de sites confiável com proteção contra DDoS, servidores VPS/VDS | ProHoster