Qualidade de Serviço em Redes IP Mecanismos de QoS Edgard Jamhour QoS sobre Redes IP O protocolo IP, conforme definido originalmente: Não suporta QoS (Qualidade de Serviço). Adota o modelo de serviço BEST EFFORT: o primeiro pacote a chegar será o primeiro a ser atendido. QoS sobre Redes IP Atualmente o protocolo IP está sendo modificado e novos padrões estão sendo definidos para suportar duas estratégias de QoS: Serviços integrados Serviços diferenciados Objetivos do QoS Controle sobre recursos Privilegiar aplicações mais importantes (rentáveis) na rede. Garantir o funcionamento de aplicações sensíveis a atraso Evitar que o tráfego Web introduza atraso para aplicações de VoIP. Objetivos de QoS SLA (Service Level Agreements) Diferenciar usuários e serviços de acordo com contratos pré-estabelecidos. Redes Convergentes. Permitir que uma única tecnologia de rede possa ser utilizada para prover todos os tipos de serviços. Qualidade de Serviço - QoS QoS é uma garantia oferecida pela rede que certos parâmetros serão mantidos entre níveis pré-acordados. Os principais parâmetros de QoS são: Atraso Jitter: Variação no Atraso Taxa de transmissão Taxa de Perda de Pacotes Qualidade de Serviço - QoS QoS na Camada de Aplicação QoS na Camada de Transporte QoS na Camada de Rede QoS em Enlace Internet QoS refere-se a capacidade de criar um caminho com banda e tempo de atraso garantidos entre dois pontos da rede. QoS: Rede ou Enlace? Na camada de Enlace: Redes Síncronas: SDH (combinação de canais de banda constante) Redes Assíncronas: ATM: Permite Reservar Recursos Frame-Relay: Apenas Limita a Banda QoS: Rede ou Enlace? Na camada de rede: IP: Permite implementar a qualidade de serviço fim a fim independente da tecnologia de enlace. Implementado com ou sem sinalização. Atraso O atraso é uma das principais medidas de QoS. Em aplicações tempo-real o atraso provoca perda de QoS. Exemplo: eco e sobreposição de conversação em VOIP. Fatores que Influenciam o Atraso Capacidade do Terminal Velocidade do Link Congestionamento na rede local Bufferização nos Roteadores Congestionamento nos links Tempo de propagação Curva de QoS em Função do Atraso ATRASO VARIÁVEL ACEITÁVEL densidade de probabilidade ATRASO INACEITÁVEL (Dados Perdidos) 1- Atraso Fixo Variação de Atraso (Jitter) Máximo Atraso Aceitável ATRASO Tempo de Propagação Atrasos de Propagação - Fibras Ópticas – Exemplos Trecho (Round Trip Delay) Atraso de Propagação Miami a São Paulo 100 mseg New York a Los Angeles 50 mseg Los Angeles a Hong Kong 170 mseg Fontes de Atraso Atraso introduzido por equipamentos: Roteadores, Switches, Firewalls, etc. Atraso introduzido pelos hosts Velocidade da CPU e Acesso a Memória Eficiência do Sistema Operacional e da Pilha de Protocolos Paginação de Memória Perda de Pacotes Pacotes são perdidos devido aos seguintes fatores: Erros no pacote: Cabeçalho do pacote: Descartados pelos roteadores Campo de dados: Descartados pelo computador IP Checksum apenas do cabeçalho TCP DADOS Checksum inclui os dados Perda de Pacotes Falta de Banda Estouro de buffer dos roteadores . Descarte preventivo (controle de atraso) Pacotes menos prioritários são descartados. Os buffers são associados a cada interface Tipos de Controle de QoS Aplicações tempo-real Aplicações sensíveis ao atraso Tolerantes a perda de pacotes Intolerantes a perda de pacotes OBJETIVO: DISPONIBILIDADE CONSTANTE DE BANDA Aplicações elásticas Aplicações que não são afetadas pelo atraso. Exemplo: Email, FTP, Compartilhamento P2P OBJETIVO: BANDA MÉDIA EM PERÍODOS MÉDIOS OU LONGOS Requisitos de QoS Requisitos de QoS Voz Interativa FTP E-mail Vídeo Broadcast Vídeo Interativo Exigência de largura de banda Média Baixa Baixa Alta Alta Sensibilidade a perda (aleatória) de pacotes Média Média Média Média Média Sensibilidade ao atraso Alta Baixa Baixa Baixa Alta Sensibilidade ao jitter Alta Baixa Baixa Média Alta Arquiteturas para QoS As arquiteturas de QoS envolvem 3 elementos: 1. Técnicas para implementar QoS em um nó da rede. 2. Técnicas de sinalização de QoS, para informar aos vários nós da rede como proceder na passagem de um fluxo. 3. Funções para gerenciamento, política e contabilização do QoS de uma rede como um todo. Arquiteturas para QoS nó 2. sinalização nó 1. Mecanismo de QoS Priorização Descarte Etc. sinalização sinalização nó 3. Ferramenta de Gerenciamento sinalização nó nó Políticas de QoS (SLA, Controle de Admissão) Mecanismos de QoS no Nó Classificação Enfileiramento Priorização (com ou ser garantia de banda) Adequação do Perfil de Tráfego Antecipação de Congestionamento Policiamento Classificação A classificação dos pacotes é feita de acordo com regras para descriminação de fluxo. As regras comumente utilizadas são: Interface do dispositivo IP origem IP destino Tipo de Protocolo TOS Flow Label (IPv6) Porta origem Porta destino Enlace Rede Transporte Campo TOS: Tipo de Serviço TOS IP Header PayLoad Bit Prioridade Bit 000 Muito Baixa 1 Minimizar retardo 001 Baixa 2 Maximizar vazão Maximizar confiabilidade 3 Maximizar confiabilidade Muito Alta 4 Minimizar custo .. 111 Requisição Enfileiramento FIFO Trata as variações de tráfego através de uma fila, mas não utiliza nenhum tipo de prioridade. Modelo Best-Effort LINK B (rede WAN: 1 Mbps) LINK A (rede local: 100 Mbps) LINK A > LINK B FILA INTERNA NO ROTEADOR Enfileiramento com Prioridade Enfileiramento com Banda Garantida Escalonamento round-robin. A quantidade de pacotes transmitidos de cada fila é ponderada. Fila de baixa prioridade (1 pacotes de cada vez) 1/10 2/10 3/10 4/10 Fila de alta prioridade (4 pacotes de cada vez) CQ: Guaranteeing Bandwidth Weighted fair queuing (WFQ) Efetua classificação do tráfego por fluxo: Endereço IP de origem e destino Portas de origem e destino Tipo de protocolo Os fluxos são armazenados num número configurável de filas. Fluxos de baixo volume, que são a grande maioria do tráfego, recebem um serviço preferencial. Fluxos de alto volume, dividem o restante da banda de maneira proporcional entre eles. Weighted fair queuing (WFQ) Weighted fair queuing (WFQ) Dando prioridade para os fluxos mais curtos, o WFQ reduz significativamente o atraso médio de entrega dos pacotes. Adequação do Perfil de Tráfego Modelo Token Bucket Permite adequar o tráfego em torno de uma taxa média, com rajadas de intensidade controlada. saída (bytes/s) d <= b/p r bytes/s p r R b bytes t chegada reserva saída R p bytes/s B Serviço Garantido se r <= R Parâmetros r - taxa média em bytes/s b - tamanho do bucket (em bytes) p - taxa de pico m - tamanho mínimo do pacote (pacotes menores que esse valor são contados como m bytes) M - MTU (tamanho máximo do pacote) Regra: seja T o tráfego total pelo fluxo num período T: T < rT + b Traffic Shaping com Token Bucket Técnicas para Evitar Congestionamento Limitam o tamanho da filas através de um descarte preventivo. RED: Randon Early Detection Descarte randômico assim que o tamanho da fila atinge um limiar pré-definido. WRED: RED ponderado Leva em conta as informações de prioridade do campo TOS dos pacotes IP. RED Policiamento Um limite de tráfego é imposto aos fluxos definidos pelo classificador. O descarte de pacotes é feito com base na medição do tráfego antes do armazenamento dos pacotes nas filas do roteador. Pode utilizar o modelo token bucket. Conclusão Muitos dispositivos de rede possuem mecanismos para QoS. A disponibilidade de mecanismos variam de dispositivo para dispositivo. Vários algoritmos estão disponíveis para priorização, policiamento, descarte e adequação do perfil de tráfego.