Universidade Federal do Paraná Setor de Tecnologia Departamento de Engenharia Elétrica Comunicação de Dados – TE723 Prof. Eduardo Parente Especificações de serviços com Carga Controlada (RFC2211) e Qualidade Garantida (RFC2212) Lúcio Mauro M. Tonon 1 Introdução • O serviço de transferência clássico oferecido pela internet é um serviço ponto a ponto de melhor esforço (best effort service) • Não há controle de admissão e a rede não oferece nenhuma segurança na entrega dos pacotes • A maioria das aplicações na internet eram elásticas por natureza, as quais toleravam perdas e atrasos de pacotes e podiam ser bem servidas pelo modelo de melhor esforço • Mas, as novas aplicações como vídeo e voz requerem um limite pequeno de atraso. • O Serviço de melhor esforço não garante Qualidade de Serviço para aplicações em tempo real • Muitas aplicações em tempo real são aplicações pontomultiponto ou multiponto-multiponto (ex.: Video broadcasting, conferências de áudio ou vídeo) 2 Motivação • • • A fim de encontrar os objetivos mencionados acima, um modelo de Serviços Integrados foi proposto O modelo de serviços integrados está embutido dentro do serviço de rede e é invocado pelas aplicações A arquitetura de serviços Integrados (ISA) propõe-se a resolver estes problemas porque provê: - Suporte a QoS - Suporte a Multicast - Compartilhamento controlado dos links 3 Arquitetura de Serviços Integrados (ISA) • A arquitetura de serviços integrados é uma extensão da arquitetura da internet clássica (RFC1633), criada para suportar facilidades de QoS, Multicasting e compartilhamento controlados de links • A extensão da arquitetura consiste de dois elementos: Modelo de serviço estendido: – Define o comportamento visível externamente – Provê classes de serviço Quadro de implementação de referência: - Define aspectos relacionados à implementação - Consiste de mecanismos de controle de tráfego e de um protocolo de preparação de reservas (RSVP) 4 Conceitos chaves do IntServ • Fluxo: Uma corrente distinguível de datagramas relacionados que resulta de uma atividade de um único usuário e requer a mesma QoS • Classes de Serviço: Especifica o tipo de serviço experimentado por um fluxo A arquitetura IntServ atual provê três classes de serviços: - Entrega pelo melhor esforço - Serviço garantido (RFC2212) - Serviço de carga controlada (RFC2211) 5 IntServ - Serviço Garantido • O serviço garantido é intencionado à aplicações em tempo real, com requisitos de atrasos apertados (não tolerantes ou tolerantes não adaptativos) • QoS com serviço garantido implica em: - Nível garantido de banda - Atraso fim a fim limitado matematicamente - Nenhuma perda em filas para pacotes adaptados - As aplicações envolvidas especificam tanto as características do tráfego (Tspec) como as características das reservas (Rspec) 6 IntServ - Serviço Garantido • O tráfego do serviço garantido está sujeito a: - Policiamento do tráfego (traffic policing) - Formatação do tráfego (traffic shaping) - Policiamento do Tráfego: - O tráfego de entrada deve se adequar ao Tspec - Tráfego não adequado é tratado como melhor esforço - O policiamento é executado nas bordas da rede - Formatação do Tráfego: - Tráfegos em rajadas são formatados a fim de encaixa-los dentro do Tspec - A formatação pode ser executada dentro da rede 7 IntServ - Serviço de Carga Controlada • O Serviço de Carga Controlada é dedicado a tráfegos em tempo real tolerantes adaptativos (tráfegos com requisitos de atrasos imprecisos) • O serviço de carga controlada garante uma QoS semelhante àquela atingida por um tráfego de melhor esforço em uma rede não sobrecarregada • As aplicações envolvidas especificam somente o Tspec (nenhum Rspec é requerido) • A formatação e o policiamento do tráfego são requeridos. O tráfego não adequado é tratado como melhor esforço. 8 Componentes do IntServ • Uma arquitetura de serviços integrados requer: Mecanismos de controle de tráfego - Controle de admissão - Classificador de pacotes - Escalonador de pacotes Protocolo de preparação de Reservas 1. Controle de admissão: - Decide se aceita um pedido de QoS baseado nos recursos disponíveis - Requer que os parâmetros de tráfego e de QoS, assim como o estado atual da rede, sejam conhecidos 9 Componentes do IntServ 2. Classificador de Pacotes – Reconhece o fluxo que os datagramas de entrada pertencem – A classe é definida localmente e pode diferir em diferentes nós da rede 3. Escalonador de pacotes Escala datagramas de entrada para transmissão baseado em suas classes de serviço Utiliza gerenciamento de filas e outros mecanismos Pode também aplicar formatação e / ou policiamento de tráfego 4. Protocolo de preparação de Reservas Habilita os roteadores a reservarem recursos com o propósito de prover um QoS específico a um fluxo IP 10 Modelo de Roteador com IntServ 11 Informação de Invocação • A aplicação deve sempre especificar as características do tráfego (Tspec) a fim de permitir que a rede reserve uma quantidade apropriada de recursos • O serviço de Carga Controlada usa o TOKEN_BUCKET_TSPEC para descrever os parâmetros de tráfego do fluxo • Um modelo simples de tráfego que fornece somente um limite superior ao tráfego emitido é o seguinte: O emissor não transmite mais do que: A(T) = b + r.T bytes sobre um dado intervalo de tempo T, onde: r = taxa média a longo prazo (bytes/s) b = tamanho máximo da rajada (burst size) (bytes) 12 Tspec do intServ • O tráfego não adequado ao modelo anterior pode ser forçado a encaixar-se nele por meio de um Token Bucket 13 Policiamento • O token bucket pode ser também utilizado para executar policiamento de tráfego nas bordas da rede • A única diferença com relação ao caso anterior é a falta do buffer: tráfego excedente a M+min[p.T, r.T+b-M] é rejeitado imediatamente 14 Requisitos de manipulação de dados do elemento de rede • Dada uma topologia de rede arbitrária, sob as seguintes suposições: - Fluxo caracterizado e imposto por um Tspec token bucket - Disciplina de filas WFQ (weighted fair queuing) usada em todos os roteadores da rede - Taxa reservada R não menor do que a taxa média do token bucket r (Rr) - Pode ser provado que o máximo atraso de fila ponto a ponto Dmaxq é o limite superior (Parekh e Gallager, 1993) 15 IntServ - Atraso garantido • O máximo atraso ponto a ponto é dado por: Dmax = Dfix + Dmaxq Dfix está relacionado aos atrasos fixos (transmissão, propagação) Dmaxq é o atraso máximo em filas ponto a ponto • No modelo de fluido ideal, o fluxo enxerga um link dedicado de banda R entre a fonte e o destino • A definição de serviço garantido conta com o atraso de um fluxo obedecendo a um token bucket (b,r) e sendo servido por um link com banda R. Neste caso, o máximo atraso em fila ponto a ponto deveria ser: Dmaxq = b / R onde b = profundidade do bucket e R = taxa reservada (Rr) 16 IntServ - Atraso de filas • Para permitir desvios do modelo do fluido dois termos de erros são introduzidos: Onde, C = termo de erro dependente da taxa D = termo de erro independente da taxa • Considerando a limitação da taxa de pico p e o tamanho máximo de pacote M, o atraso máximo ponto a ponto torna-se: 17 IntServ – Classes de Tráfego Componentes do Template Serviço Garantido Serviço de Carga controlada Comportamento ponta a ponta •Atraso máximo garantido •Throughput garantido • Filas sem perdas Aproxima-se do melhor esforço em redes não sobrecarregadas Aplicações típicas Aplicações em tempo real Aplicações sensíveis a congestionamento da rede Elementos de rede envolvidos Modelo de fluido usando R (banda requisitada) e B Controle de admissão Parâmetros requisitados Tspec: r, b, p, M, m Rspec: R, S Tspec: r, b, M, m (p não é requerido) Informação exportada C, D – Valores que medem o desvio do modelo de fluido ideal Nenhuma informação exportada Policiamento M + min[p*T, r*T+b-M] R*T+b 18