Para reduzir os tempos de atraso e aumentar a qualidade do streaming de vídeo, jogos para celular, e outros serviços da web, pesquisadores do Laboratório de Ciência da Computação e Inteligência Artificial do MIT projetaram um esquema de controle de congestionamento para links sem fio variáveis no tempo, como redes celulares. Crédito:José-Luis Olivares, MIT
Os pesquisadores do MIT desenvolveram um esquema de controle de congestionamento para redes sem fio que pode ajudar a reduzir os tempos de atraso e aumentar a qualidade do streaming de vídeo, chat de vídeo, jogos para celular, e outros serviços da web.
Para manter os serviços da web funcionando sem problemas, esquemas de controle de congestionamento inferem informações sobre a capacidade de largura de banda de uma rede e o congestionamento com base no feedback dos roteadores de rede, que é codificado em pacotes de dados. Essas informações determinam a rapidez com que os pacotes de dados são enviados pela rede.
Decidir uma boa taxa de envio pode ser um ato de equilíbrio difícil. Os remetentes não querem ser excessivamente conservadores:se a capacidade de uma rede varia constantemente de, dizer, dois megabytes por segundo a 500 kilobytes por segundo, o remetente sempre pode enviar tráfego na taxa mais baixa. Mas então o seu vídeo Netflix, por exemplo, será desnecessariamente de baixa qualidade. Por outro lado, se o remetente mantém uma taxa alta constantemente, mesmo quando a capacidade da rede cai, pode sobrecarregar a rede, criando uma enorme fila de pacotes de dados esperando para serem entregues. Os pacotes enfileirados podem aumentar o atraso da rede, causando, dizer, sua chamada do Skype para congelar.
As coisas ficam ainda mais complicadas em redes sem fio, que têm "links que variam no tempo, "com rapidez, mudanças imprevisíveis de capacidade. Dependendo de vários fatores, como o número de usuários da rede, localizações de torres de celular, e até edifícios circundantes, as capacidades podem dobrar ou cair para zero em frações de segundo. Em um artigo no Simpósio USENIX sobre Projeto e Implementação de Sistemas em Rede, os pesquisadores apresentaram "Accel-Brake Control" (ABC), um esquema simples que atinge uma taxa de transferência cerca de 50 por cento maior, e cerca de metade dos atrasos da rede, em links que variam no tempo.
O esquema se baseia em um novo algoritmo que permite aos roteadores comunicarem explicitamente quantos pacotes de dados devem fluir por uma rede para evitar o congestionamento, mas utilizar totalmente a rede. Ele fornece essas informações detalhadas de gargalos - como pacotes enfileirados entre torres de celular e remetentes - redirecionando um único bit já disponível em pacotes de Internet. Os pesquisadores já estão em negociações com operadoras de rede móvel para testar o esquema.
“Em redes celulares, sua fração da capacidade de dados muda rapidamente, causando atrasos em seu serviço. Os esquemas tradicionais são muito lentos para se adaptar a essas mudanças, "diz o primeiro autor Prateesh Goyal, um estudante de pós-graduação em CSAIL. "ABC fornece feedback detalhado sobre essas mudanças, seja para cima ou para baixo, usando um único bit de dados. "
Juntando-se a Goyal no jornal está Anup Agarwal, agora um estudante de graduação na Carnegie Melon University; Ravi Netravali, agora é professor assistente de ciência da computação na Universidade da Califórnia em Los Angeles; Mohammad Alizadeh, professor associado do Departamento de Engenharia Elétrica (EECS) do MIT e CSAIL; e Hari Balakrishnan, o Professor Fujitsu em EECS. Os autores são todos membros do grupo Redes e Sistemas Móveis do CSAIL.
Atingindo controle explícito
Os esquemas de controle de congestionamento tradicionais dependem de perdas de pacotes ou de informações de um único bit de "congestionamento" em pacotes de Internet para inferir o congestionamento e diminuir a velocidade. Um roteador, como uma estação base, marcará o bit para alertar um remetente - digamos, um servidor de vídeo - que seus pacotes de dados enviados estão em uma longa fila, sinalizando congestionamento. Em resposta, o remetente então reduzirá sua taxa enviando menos pacotes. O remetente também reduz sua taxa se detectar um padrão de pacotes sendo descartados antes de chegar ao receptor.
Na tentativa de fornecer mais informações sobre links com gargalo em um caminho de rede, pesquisadores propuseram esquemas "explícitos" que incluem bits múltiplos em pacotes que especificam as taxas atuais. Mas essa abordagem significaria mudar completamente a maneira como a Internet envia dados, e provou ser impossível de implantar.
"É uma tarefa difícil, "Alizadeh diz." Você teria que fazer mudanças invasivas no protocolo de Internet (IP) padrão para enviar pacotes de dados. Você teria que convencer todas as partes da Internet, operadoras de rede móvel, ISPs, e torres de celular para mudar a forma como enviam e recebem pacotes de dados. Isso não vai acontecer."
Com ABC, os pesquisadores ainda usam o único bit disponível em cada pacote de dados, mas eles fazem isso de tal forma que os bits, agregados em vários pacotes de dados, pode fornecer aos remetentes as informações de taxa em tempo real necessárias. O esquema rastreia cada pacote de dados em um loop de ida e volta, do emissor para a estação base e para o receptor. A estação base marca o bit em cada pacote com "acelerar" ou "frear, "com base na largura de banda da rede atual. Quando o pacote é recebido, o bit marcado diz ao remetente para aumentar ou diminuir os pacotes "em vôo" - pacotes enviados, mas não recebidos - que podem estar na rede.
Se receber um comando de aceleração, isso significa que o pacote chegou a tempo e que a rede tem capacidade sobressalente. O remetente então envia dois pacotes:um para substituir o pacote que foi recebido e outro para utilizar a capacidade sobressalente. Quando mandado frear, o remetente diminui seus pacotes em vôo em um - o que significa que não substitui o pacote que foi recebido.
Usado em todos os pacotes da rede, aquele bit de informação torna-se uma ferramenta de feedback poderosa que informa aos remetentes suas taxas de envio com alta precisão. Dentro de algumas centenas de milissegundos, pode variar a taxa do remetente entre zero e o dobro. "Você pensaria que um bit não transportaria informações suficientes, "Alizadeh diz." Mas, agregando feedback de bit único em um fluxo de pacotes, podemos obter o mesmo efeito de um sinal multibit. "
Ficando um passo à frente
No núcleo do ABC está um algoritmo que prevê a taxa agregada dos remetentes uma viagem de ida e volta à frente para calcular melhor o feedback de aceleração / frenagem.
A ideia é que uma estação base equipada com ABC saiba como os remetentes se comportarão - mantendo, aumentando, ou diminuindo seus pacotes em vôo - com base em como marcou o pacote enviado a um receptor. No momento em que a estação base envia um pacote, ele sabe quantos pacotes receberá do remetente em exatamente um tempo de ida e volta no futuro. Ele usa essas informações para marcar os pacotes para corresponder com mais precisão a taxa do remetente à capacidade atual da rede.
Em simulações de redes celulares, em comparação com os esquemas tradicionais de controle de congestionamento, O ABC atinge um rendimento de 30 a 40 por cento maior para aproximadamente os mesmos atrasos. Alternativamente, pode reduzir atrasos em cerca de 200 a 400 por cento, mantendo o mesmo rendimento dos esquemas tradicionais. Em comparação com os esquemas explícitos existentes que não foram projetados para links variáveis no tempo, ABC reduz os atrasos pela metade para a mesma taxa de transferência. "Basicamente, os esquemas existentes obtêm baixa taxa de transferência e atrasos baixos, ou alto rendimento e grandes atrasos, enquanto o ABC alcança alto rendimento com baixos atrasos, "Goyal diz.
Próximo, os pesquisadores estão tentando ver se aplicativos e serviços da web podem usar ABC para controlar melhor a qualidade do conteúdo. Por exemplo, "um provedor de conteúdo de vídeo poderia usar as informações da ABC sobre congestionamento e taxas de dados para escolher a resolução do streaming de vídeo de forma mais inteligente, "Alizadeh diz." Se não tiver capacidade suficiente, o servidor de vídeo pode diminuir a resolução temporariamente, para que o vídeo continue a ser reproduzido na melhor qualidade possível, sem congelar. "
Esta história foi republicada por cortesia do MIT News (web.mit.edu/newsoffice/), um site popular que cobre notícias sobre pesquisas do MIT, inovação e ensino.