Um projeto para melhorar a experiência do usuário da Internet
25/02/2021
A Universidade de Palermo da Argentina leva adiante uma iniciativa para a otimização da latência, facilitando, dessa forma, a experiência do usuário final da Internet.
Por conta da sua inovação técnica, o projeto obteve uma subvenção do Programa FRIDA do LACNIC. Os fundos obtidos serão destinados à incorporação e formação de novos pesquisadores para a equipe de trabalho, aumentando assim a capacidade de exploração de alternativas e de desenvolvimento. O prêmio é uma grande motivação para os participantes, ampliando a visibilidade e o escopo dos resultados”, afirmou Alejandro Popovsky, decano de Engenharia na Universidade de Palermo (Argentina).
Por que é importante otimizar a latência?
Em geral, associa-se a qualidade de um serviço da Internet com a largura da banda que oferece, bem como com o overbooking que realiza o provedor, determinando a probabilidade de que o cliente possa atingir essa largura da banda nominal a maior parte do tempo.
Porém a qualidade de muitos dos serviços que acessam os usuários não dependem da largura da banda disponível. São serviços que não requerem a transmissão de grande quantidade de informação, senão que dependem da rápida resposta à solicitação do usuário. Neste caso a latência é o fator mais importante na qualidade do serviço.
Um exemplo disso é a web. As páginas webs estão compostas por dezenas e às vezes centenas de objetos – como por exemplo: gráficos – que podem baixar-se separadamente, cada um deles é uma transação contra o servidor web, e uma latência alta multiplica-se em razão da quantidade de objetos para gerar um tempo muito longo ao baixar a página por completo.
Em que consiste o projeto da Universidade de Palermo sobre o desenvolvimento de um algoritmo para melhorar a latência?
A latência nas comunicações transacionais possui dois componentes principais, a latência do servidor e a latência da rede. A latência da rede tem por sua vez um componente causado pela velocidade finita de transporte da informação nos cabos, e um componente causado pela espera dos pacotes de dados, nas filas de saída dos dispositivos de rede, no caminho da conexão. Esta espera é comumente chamada de latência de fila ou queuing delay.
Geralmente o queuing delay representa a maior parte da latência da rede, e está causado pelo algoritmo de controle de congestionamento de TCP, que tradicionalmente busca otimizar apenas dois objetivos: diminuir a perda de pacotes e maximizar o throughput.
Tomando apenas esses dois objetivos, o algoritmo de controle de congestionamento de TCP descuida outros dois objetivos que também são muito importantes: a minimização da latência e a distribuição justa da capacidade disponível entre as conexões que compartilham os recursos de rede. O problema que causam os algoritmos de controle de congestionamento tradicionais é chamado muitas vezes bufferbloat, já que enchem de pacotes os buffers de saída dos dispositivos de rede.
O projeto da Universidade de Palermo busca incorporar os dois objetivos de otimização de latência e de distribuição justa aos primeiros dois objetivos de diminuir as perdas e de adquirir a capacidade disponível, representando da melhor forma as necessidades de qualidade dos usuários da Internet.
Qual inovação representa o algoritmo que vocês propõem desenvolver?
Existem outros algoritmos de controle de congestionamento que buscam otimizar latência. Entretanto, geralmente possuem baixa performance quando compartilham o gargalo do caminho de rede com outras conexões tradicionais. No entanto, são utilizados por exemplo em servidores de atualização de aplicativos, porque podem funcionar somente com a capacidade ociosa de rede, e não importa que demorem mais ou menos, mas sim importa que não atinjam o tráfego do usuário que está, ao mesmo tempo, utilizando outros serviços sensíveis à latência.
O algoritmo de controle de congestionamento Palermo é o primeiro embasado na estimativa da quantidade de capacidade disponível utilizada pela conexão. A maioria dos algoritmos utiliza uma realimentação baseada na detecção de perdas, outros na variação do round trip time e alguns na medição do bit rate atingido. Porém o nosso é o primeiro em estimar a quantidade de capacidade utilizada.
O algoritmo de controle de congestionamento Palermo, busca otimizar a latência e favorecer a distribuição justa da capacidade, mas sem ficar relegado a uma pequena porção ao compartilhar o caminho da rede com conexões malcomportadas que causam bufferboat.
Quem seria beneficiado com a melhora da latência?
A otimização da latência não apenas beneficiará os usuários de computadores que implementem o novo algoritmo, como também os usuários de serviços transacionais de computadores que utilizem algoritmos tradicionais e que compartilhem o gargalo de rede com os primeiros. Visto que, uma vez instalado o bufferbloat nas interfases dos dispositivos de redes, atingirá a todos os usuários que compartilharem o gargalo por igual.