A operadora enfrenta um problema semelhante na escala de toda a rede. Em caso de congestionamento nos horários de pico ou em grandes eventos, o núcleo envia perfis atualizados com banda reduzida, diminuindo a velocidade de todos os assinantes de uma só vez. Todos os serviços passam a disputar indistintamente o recurso restante. Vídeos e chamadas, pelos quais o assinante avalia a qualidade da rede, são os primeiros a se degradar, e é difícil para a operadora redistribuir rapidamente a banda entre os serviços.
O problema não está em falhas de equipamento nem nas configurações de uma rede específica. O padrão 3GPP (3rd Generation Partnership Project) descreve mecanismos de limitação de banda por assinante e por serviço, mas não define qual serviço recebe a banda primeiro quando ela não é suficiente para todos. Neste artigo, vamos ver onde está essa lacuna do padrão e como o PCEF da VAS Experts resolve esse problema.
Há um teto, mas não há regras
Para entender de onde vem essa lacuna, é preciso mergulhar na especificação 3GPP TS 23.203 “Policy and charging control architecture” (arquitetura de controle de políticas e tarifação).
A arquitetura de QoS no 3GPP é construída em torno de portadoras: bearers no LTE e QoS Flows no 5G. A portadora é um canal lógico entre o dispositivo do assinante e o gateway de pacotes, com seu próprio conjunto de parâmetros de qualidade.
Dedicated Bearer
Se um fluxo de dados precisa de parâmetros de serviço específicos (taxa garantida, latência aceitável e taxa de perda de pacotes) ou de determinada prioridade, cria-se para ele uma portadora separada (Dedicated Bearer), com seu próprio perfil de QoS (QCI/5QI, ARP).
Pelo padrão, também é possível definir a prioridade por meio do ARP (Allocation and Retention Priority), mas essa é a prioridade da portadora, e não de um serviço individual. Com o SDF (service definition function), os serviços são distribuídos entre portadoras com QCI e ARP definidos. Quando faltam recursos de rádio, uma portadora com ARP baixo não será criada, e uma já existente pode ser removida por completo. Ou seja, a prioridade existe na portadora, mas afeta apenas a criação ou a remoção da portadora inteira, com todos os serviços que estão nela, e não permite distribuir a banda de forma flexível entre os serviços.
Default Bearer
Todo o tráfego dos serviços para os quais não foi criado um canal dedicado (web, mensageiros, YouTube, torrents, atualizações em segundo plano) passa pelo canal básico, a portadora padrão (Default Bearer). Ela é sempre uma portadora non-GBR (Non-Guaranteed Bit Rate) e normalmente recebe a classe de baixa prioridade QCI 9. O tráfego dessa classe é tratado no modo best effort, e sua entrega não é garantida. Para todo o tráfego non-GBR, o padrão prevê um parâmetro comum: o APN-AMBR.
De acordo com a especificação 3GPP, a função do PCEF (Policy and Charging Enforcement Function) é garantir que a velocidade total de todos os fluxos de dados de serviço (SDF) non-GBR dentro de um ponto de acesso à rede (APN) não ultrapasse esse teto. O padrão não descreve como distribuir a banda entre fluxos concorrentes quando a demanda total deles é maior que o teto. Por isso, nas interfaces pelas quais o servidor de políticas (PCRF) envia as regras ao PCEF (por exemplo, Gx pelo protocolo Diameter), não há atributos (AVP) que permitam transmitir essa distribuição.
Imagine que o plano do assinante seja de 50 Mbps, enquanto um torrent ou a atualização de um jogo pode ocupar até 100 Mbps, de modo que o canal fica totalmente saturado. Os pacotes do mensageiro passam pelo mesmo policer que o torrent. Não há regras de balanceamento, então o policer corta o tráfego sem distinguir os serviços. Assim, quase toda a banda fica com quem gera mais tráfego, que, no nosso caso, é o torrent.
O padrão 3GPP regulamenta rigorosamente as interfaces entre os nós, mas deixa intencionalmente a critério dos fabricantes de equipamentos a lógica de agendamento (scheduling) e a concorrência do tráfego dentro de um mesmo APN. Como resultado, o padrão não tem um mecanismo de distribuição de banda entre serviços por prioridade.
QoS hierárquico no PCEF da VAS Experts
Na VAS Experts, esse problema é resolvido com QoS hierárquico (HQoS) no PCEF com perfis locais. A banda do assinante não é ampliada, e sim distribuída entre os serviços por prioridade. Os tipos de tráfego prioritários, como voz e web, recebem a banda primeiro, enquanto P2P e downloads em segundo plano usam o restante.
Dois níveis de policing
O nível superior da hierarquia é a classe raiz HTB (root), ou seja, a banda total do assinante. Ela é definida no perfil de policing (plano tarifário). Aqui entra o valor do APN-AMBR (ou a velocidade do plano de internet residencial), por exemplo, 50 Mbps. No total, o assinante não conseguirá ultrapassar esse teto.
No segundo nível (leaf classes) ficam oito classes, de class0 a class7. Por padrão, a class0 tem a prioridade mais alta, e a class7, a mais baixa. O mecanismo de DPI baseado em assinaturas reconhece o protocolo ou o destino do tráfego (YouTube, BitTorrent, Telegram) e atribui o fluxo à classe correspondente. A distribuição entre as classes é definida por uma marcação global por protocolos e destinos ou por uma marcação individual por protocolos para um assinante específico. As classes são vinculadas aos grupos de tarifação (rating groups) por meio de uma tabela de correspondência.
Figura 1 – Níveis de policiamento
Como a banda é dividida entre as classes
O administrador pode escolher entre dois mecanismos de policing.
O mecanismo principal é o HTB (Hierarchical Token Bucket), que implementa o QoS hierárquico. Quando um novo valor de APN-AMBR chega do PCRF, o sistema o transfere dinamicamente para a classe raiz e distribui essa banda entre as classes. Para cada uma das oito classes, define-se uma velocidade garantida (rate) e uma máxima (ceil).
O que isso traz: o serviço prioritário recebe sua banda assim que seu tráfego aparece, enquanto o de baixa prioridade usa tudo o que sobra. Quando não há tráfego de alta prioridade, o de baixa prioridade pode usar toda a velocidade disponível.
Exemplo de distribuição da banda por classes para um plano de 50 Mbps: # Tráfego de entrada (para o assinante), plano de 50 Mbps htb_inbound_root=rate 50mbit # class0 — chamadas: 5 Mbps garantidos htb_inbound_class0=rate 5mbit ceil 50mbit # class1 — vídeo: 20 Mbps garantidos htb_inbound_class1=rate 20mbit ceil 50mbit htb_inbound_class2=rate 8bit ceil 50mbit htb_inbound_class3=rate 8bit ceil 50mbit htb_inbound_class4=rate 8bit ceil 50mbit htb_inbound_class5=rate 8bit ceil 50mbit htb_inbound_class6=rate 8bit ceil 50mbit # class7 — torrents: 1 Mbps garantido, mas pode ocupar todo o canal quando ele está livre htb_inbound_class7=rate 1mbit ceil 50mbit
O segundo é o TBF (Token Bucket Filter), um policer sem hierarquia. Ele limita cada classe de forma independente: a classe recebe um teto fixo (rate) e não passa dele, mesmo que o restante da banda esteja ocioso. Classes sem limite definido não são restringidas. O TBF não tem um teto geral.
O que isso traz: limitação rígida e previsível ou bloqueio de uma classe de tráfego específica.
Exemplo de limitação rígida de torrents a 3 Mbps:
tbf_inbound_class7=rate 3mbit tbf_class7=rate 3mbit
O que isso traz para assinantes e operadoras
Agora o assinante pode conversar tranquilamente pelo mensageiro e baixar um arquivo grande, porque o torrent vai para a class7, com a prioridade mais baixa, e usa todos os 50 Mbps enquanto os outros serviços não precisam do canal. Assim que o assinante inicia uma chamada ou abre o YouTube, esse tráfego entra na class0 ou class1, e o agendador HTB imediatamente tira banda do torrent em favor do serviço prioritário. A chamada não cai mais, o vídeo roda sem pausas e o torrent continua baixando, só que mais devagar.
A velocidade do plano não mudou. Mudou apenas a distribuição dela entre os serviços.
Além disso, a operadora extrai a máxima qualidade dos recursos que já tem. Mesmo que, em caso de congestionamento, o núcleo reduza o APN-AMBR para 7–10 Mbps, as prioridades dentro do limite são mantidas. A banda reduzida vai primeiro para vídeos e chamadas, por isso o vídeo roda sem rebuffering e as chamadas no mensageiro MAX continuam em Full HD.
Menos trabalho manual para a operadora
Sem prioridades, os rating groups precisam ser balanceados manualmente: ampliar um para que outro não fique estrangulado e ter em mente o volume total de tráfego para que tudo funcione em conjunto.
Com o HQoS, a operadora atribui uma classe de prioridade ao serviço uma única vez. A operadora define as classes e sua ordem de acordo com o modelo de negócio e com os serviços que mais influenciam a experiência do usuário. O perfil de policing é criado uma vez e atribuído aos assinantes. A partir daí, a distribuição da banda é feita automaticamente em cada sessão de assinante, independentemente de como mudem a carga da rede e a banda atribuída ao assinante. As classes não utilizadas podem ser ativadas depois: basta alterar a marcação no DPI, sem precisar mudar o perfil.
Se, na sua rede, os assinantes reclamam de chamadas que caem e vídeos que travam mesmo com o canal de rádio funcionando bem, e em caso de congestionamento você precisa restringir a banda de todos sem distinção, vale a pena ver como o HQoS no Stingray PCEF se comporta com o seu tráfego. Os especialistas da VAS Experts vão ajudar a distribuir os serviços em classes de prioridade de acordo com o seu modelo de negócio e os seus planos. Fale com a gente e vamos conversar sobre por onde começar.