Após dois anos de desenvolvimento, a versão 2.0 da plataforma LibreQoS está disponível, destinada a organizar a distribuição justa da largura de banda disponível entre os usuários e a reduzir os efeitos negativos causados pelo bufferização intermediária de pacotes (Bufferbloat) nos equipamentos de rede. A plataforma pode ser utilizada por provedores ou administradores de redes privadas para otimizar fluxos de tráfego, manter as latências em níveis mínimos e distribuir a largura de banda considerando prioridades. O código do projeto é escrito nas linguagens C, JavaScript, Python e Rust, e é distribuído sob a licença GPLv2. A plataforma é instalada em servidor, situada entre o roteador de borde do provedor e o roteador principal da rede local.
O LibreQoS permite reduzir latências e aumentar a confiabilidade do funcionamento de sessões interativas, jogos, plataformas de ensino online, tráfego VoIP e chamadas de vídeo em condições de alta carga na rede, como o download de filmes em múltiplos streams por alguns usuários ou a atividade de entusiastas de torrents (o LibreQoS resolve o problema de gagueira nas chamadas de vídeo quando alguém na mesma rede começa a baixar vídeos em 4K). O uso do LibreQoS diminui a largura de banda de pico disponível para um usuário, mas possibilita uma redução significativa das latências e uma distribuição justa dos recursos entre todos os participantes da troca de dados.
O LibreQoS é baseado na aplicação do sistema de gerenciamento de filas de pacotes CAKE (Common Applications Kept Enhanced) e do planejador de pacotes fq_codel (Fair Queuing Controlled Delay), além de utilizar eBPF e XDP (Express Data Path) para executar manipuladores no nível do driver de rede com a possibilidade de acesso direto ao buffer DMA de pacotes. O algoritmo CAKE foi projetado para substituir e simplificar a complexa hierarquia de disciplinas de processamento de filas de pacotes, sendo capaz de extrair a máxima largura de banda possível e fornecer um nível mínimo de latências mesmo em canais de comunicação muito lentos com o provedor e ao operar em dispositivos de baixo desempenho.
O projeto também fornece ferramentas para monitorar a latência entre o envio de uma solicitação e o recebimento da resposta (RTT, round-trip time), relacionada a usuários específicos, pontos de acesso e sites. Para analisar o estado, foi desenvolvido uma interface web que permite avaliar visualmente o tráfego na rede, acompanhar as mudanças na carga e latência, e identificar os usuários mais ativos. É possível criar esquemas hierárquicos flexíveis de limitação de tráfego e integrar com UISP e Splynx para mapeamento de topologias e clientes.
O lançamento do LibreQoS 2.0 é dedicado a Dave Taht, que faleceu repentinamente há um ano aos 59 anos. Dave liderou o desenvolvimento do LibreQoS e foi cofundador do projeto Bufferbloat, criador da distribuição CeroWrt e autor de numerosos RFCs relacionados à gestão de filas de redes.
Mudanças principais na versão LibreQoS 2.0:
- A interface web do operador foi modernizada, ampliando as capacidades de diagnóstico de problemas de rede e adicionando novos relatórios e gráficos.

- No modo de visualização em árvore (Tree view), a estrutura hierárquica da rede é exibida, melhorando o processamento da topologia e detalhando o comportamento dos nós.
- Novas ferramentas de diagnóstico de problemas foram adicionadas, permitindo analisar o estado das filas de rede, rastrear fluxos de tráfego, representar visualmente o tráfego em gráficos de Sankey, monitorar retransmissões de pacotes e visualizar ciclos de transmissão TCP (RTT).

- Novos modos de visualização de mapas e fluxos de tráfego foram adicionados, juntamente com um analisador de sistemas autônomos (ASN Analysis).

- A integração com sistemas de gerenciamento de relacionamento com clientes (CRM) e sistemas de gestão de rede (NMS) foi aprimorada. Agora há suporte para integração com UISP, Splynx, Netzur, VISP, WISPGate, Powercode e Sonar.
- As capacidades de limitação de largura de banda (shaping) foram aprimoradas, relacionadas à gestão de filas e ao uso do TreeGuard e StormGuard para evitar sobrecargas.
- O monitoramento do estado do agendador e a notificação de problemas críticos foram melhorados.
Fonte: opennet.ru



