A Cloudflare anunciou a abertura do código fonte da ferramenta h3i, que inclui uma utilidade de linha de comando e uma biblioteca de funções para testes e depuração de implementações de servidor do protocolo HTTP/3. A utilidade pode ser usada para avaliar o comportamento de servidores HTTP/3, determinar o nível de conformidade com as especificações e verificar a resposta a situações de falha. O código da utilidade foi escrito na linguagem Rust e é aberto sob a licença BSD.
A utilidade pode ser utilizada como um cliente HTTP/3, proporcionando recursos avançados para o controle total do canal de comunicação. Por exemplo, o h3i permite enviar quadros em qualquer stream HTTP/3 e em qualquer ordem, incluindo tanto conteúdo correto quanto incorreto. Todas as ações são salvas em um log, que pode ser usado posteriormente para reproduzir a sessão.
A biblioteca incluída pode ser aplicada para escrever testes automatizados que verificam a correta implementação do HTTP/3 durante o desenvolvimento. servidores HTTP/3 e para avaliar o desempenho de seus sistemas e serviços, inclusive ao enviar requisições incorretas e fazer alterações anômalas nos streams de dados (por exemplo, enviando quadros binários com cabeçalhos fora de ordem ou especificando no cabeçalho Content-Length um tamanho que não corresponde ao volume real de dados).
O diagnóstico do HTTP/3 é dificultado pela complexidade do protocolo, no qual é utilizado o protocolo QUIC, baseado em UDP, e mecanismos bastante complexos de controle de fluxo, paralelização de operações, prioridade, multiplexação de conexões, transmissão bidirecional de dados e empacotamento de informações, cabeçalhos, configurações e comandos em quadros binários.
Fonte: opennet.ru
