• Like
  • Save
Redes Avançadas - 6.QoS
Upcoming SlideShare
Loading in...5
×
 

Redes Avançadas - 6.QoS

on

  • 2,304 views

 

Statistics

Views

Total Views
2,304
Views on SlideShare
2,304
Embed Views
0

Actions

Likes
1
Downloads
139
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Redes Avançadas - 6.QoS Redes Avançadas - 6.QoS Presentation Transcript

    • Qualidade do Serviço em Redes Prof. Mauro Tapajós
    • Necessidade de QoS
      • A Internet é uma rede baseada no melhor esforço ( best effort ): trata todos os pacotes do mesmo modo
      • Para uma série de novas aplicações, são necessários mecanismos que garantam o tráfego contínuo de pacotes sem alteração
      • Apesar de IPv4 prever campos para indicação de níveis de QoS, as implementações nos roteadores normalmente ignoram esta facilidade
    • Qualidade do Serviço - QoS
      • Um mecanismo QoS traduz um pedido de serviço num conjunto de características de tráfego para aquele serviço (enfileiramento adequado, roteamento, disponibilização de recursos – capacidade, buffers, etc)
      • Grupos de trabalho demonstraram que é possível se oferecer este tipo de suporte sobre uma rede assíncrona de datagramas
      • Requer pequenos atrasos com pouca variação nos mesmos
      • Dificuldade em prover este tipo de serviço sobre redes de pacotes
      • Alternativa escolhida foi redes comutadas por circuito
      • Muitas corporações utilizam rede telefônicas mas poucas implementam suas redes privadas de telefonia (custo!)
      Exemplo – Redes de Voz (telefônicas)
    • Alternativas QoS em Camada 2
      • 802.1p – mecanismos de priorização de quadros em MAN’s
      • ATM – pronta para QoS
      • Redes determinísticas: Token Ring, FDDI, TDM
      • Outras tecnologias sobre Fibra Ótica – velocidade bastante para garantir demandas
      • Redes públicas (como X.25)
      • Redes privadas
      • Linhas dedicadas entre sites
      • Redes comutadas por circuitos públicas e privadas (interconexão de PABX digitais)
      • ISDN (integração dados e comutação por circuito tradicional)
      Redes de Dados - Modalidades
    • Tipos de Tráfego
      • Elástico
        • Se ajusta bem dentro de determinada faixa de variação de atraso e banda
        • Normalmente roda sobre UDP e TCP (aplicações básicas da Internet)
        • Ex: FTP (sensível a throughput), SMTP (não é tão afetado por atrasos), TELNET e HTTP (razoavelmente sensível a atraso), todas com pequenas variações na exigência de QoS – necessidade modesta de suporte QoS
      • Inelástico
        • Não se adapta bem a mudanças da qualidade da rede
        • Melhor exemplo: Tráfego real-time
        • Em caso de congestionamento, continua a enviar a mesma carga na rede (não recua)
        • Requisitos (throughput, atraso, jitter , perda de pacotes)
    • Tráfego Inelástico
      • Uma rede terá dificuldade em atender este tipo de tráfego com atrasos variáveis e ocorrência de congestionamentos
      • Existe, assim, a exigência então de tratamento preferencial
      • Aplicações que geram este tipo de tráfego devem sinalizar requisitos
      • A rede deve ainda suportar tráfego elástico podendo priorizar recursos para atendimento de tráfego preferencial
    • Requisitos de Aplicação
      • Existe a necessidade de se permitir que as aplicações apresentem seus requisitos de QoS
      • Duas maneiras de se fazer isto:
        • Criação de um mecanismo para requerimento de QoS (melhor em caso de congetionamento da rede – caso a rede esteja congestionada, novos pedidos são negados)
        • Indicação do QoS desejado no cabeçalho IP
    • Requisitos de Aplicação - Exemplos
    • Algumas Técnicas para se Implementar QoS em Redes
      • Superprovisionamento
      • Bufferização ( jitter )
      • Enfileiramento diferenciado
      • Traffic Shaping (SLA)
      • Algoritmo de Leaky Bucket (balde vazante)
      • Algoritmo de Token Bucket (balde de fichas)
      • Reserva de recursos
      • Controle de admissão
      • Agendamento de pacotes ( packet scheduli ng )
    • QoS sobre IP - Aspectos
      • IP, na verdade, é um conjunto de protocolos que viabilizam o serviço IP tornando uma rede de várias tecnologias numa única rede para a aplicação
      • Muitos dos protocolos de camada dois originalmente usados com IP foram desenvolvidos apenas para o escopo das redes de dados antigas: envio de mails e arquivos
      • Estes protocolos não implementavam mecanismos para lidarem com tráfego real-time sensível à atrasos na rede
      • Transmitem os dados em quadros de tamanho variável e mecanismos de controle de erros geram retransmissões de um número incerto de quadros, não há garantia de tempo de entrega de um quadro (redes estatísticas)
    • QoS sobre IP
      • Como compartilhar recursos em situação de escassez dos mesmos?
      • Mecanismos existentes disponíveis:
        • Descarte de Pacotes - opção não pode ser levada em conta para se garantir qualidade de serviço
        • Algoritmo de Roteamento - podem adapta r suas rotas às linhas menos congestionadas, mas reagem lentamente demais às mudanças nos perfis de tráfego
      • Será necessária uma forma de se poder indicar os serviços de QoS para IP, isto significa adicionar funcionalidades nos roteadores IP
    • QoS sobre IP
      • Novas características do tráfego Internet:
        • Alto volume de aplicações cliente-servidor
        • Uso cada vez maior de multimídia no conteúdo WEB
        • Tráfego de tempo-real (por exemplo: transmissões de eventos em tempo real)
      • Padrões propostos para QoS pelo IETF (podem ser complementares)
        • Integrated services - Intserv
        • Differentiated services - Diffserv
    • ISA – Integrated Services
      • Descrito na RFC 1633
      • Conceito de Fluxo : sequência distinta de pacotes resultantes da mesma atividade e sujeitos aos mesmos parâmetros de QoS (se difere de uma conexão TCP por ser unidirecional e poder ter mais de um destino – caso multicast)
      • Desta forma, cada pacote pode então ser associado a um fluxo
      • Limitado às redes que suportam a arquitetura (como uma Intranet)
    • Fluxos
    • Arquitetura ISA - Intserv
      • A principal funcionalidade do roteador é encaminhar pacotes
      • Existem componentes na arquitetura ISA que auxilia m esta tarefa, implementando os mecanismos Intserv :
        • Protocolos de reserva de recursos
        • Controle de admissão
        • Agente de gerenciamento
        • Protocolos de roteamento
    • Intserv – Funções de Encaminhamento
      • Dentro da arquitetura o encaminhamento de pacotes é baseado nos seguintes mecanismos :
        • Classificador de pacotes : mapeia os pacotes entrantes em classes de serviço
        • Selecionador de rota : define o próximo destino do pacote
        • Agendador de pacotes : define e gerencia as várias filas de pacotes baseado nas características de cada fluxo, na situação da interface de saída e das informações de tráfego
    • Funções ISA - Intserv
      • Controle de admissão – para o estabelecimento de QoS para um fluxo deve-se alocar previamente os recursos da rede, caso algum dos roteadores no percurso não tenha recursos no momento, o pedido é negado
      • Algoritmo de roteamento – gera várias rotas podendo oferecer melhores caminhos baseados em várias métricas
      • Algoritmo de enfileiramento – define regras para tratar os pacotes que chegam nas filas dos roteadores
      • Política de descarte – em situação de congestionamento, decidirá quais pacotes tem prioridade e quais são escolhidos primeiro para o descarte
    • Arquitetura ISA - Intserv
    • Arquitetura ISA - Serviços
      • Serviços ( t raffic specification - TSpec) são definidos por fluxo em dois níveis:
      • Categorias gerais de serviços
        • Garantido
        • Carga Controlada
        • Melhor Esforço
      • Parâmetros específicos para um determinado fluxo – parâmetros específicos do fluxo
    • Serviços ISA Serviço Garantido
      • É a categoria de serviço mais exigente (aplicações real-time com rígidas premissas de entrega sem atraso ou perdas)
      • Prevê um nível de recursos ou taxa de dados garantida
      • Define um limite superior para o atr a so através do percurso do pacote
      • Não tolera perdas de pacotes por buffer overflow
    • Serviços ISA Carga Controlada
      • Apresenta um serviço semelhante à melhor esforço sob condições sem congestionamento
      • Não define um limite superior para o atraso, mas impede que um porcentagem razoável do tráfego não experimente atrasos muito maiores que o normal
      • Poucas perdas de pacotes
      • Adequado às chamadas a plicações de tempo real adaptativas (vídeo pode experimentar atraso ou perder um frame, voz pode ajustar períodos de silêncio)
    • RSVP (Resource Re S er V ation Protocol)
      • Protocolo desenvolvido para realizar a prévia reserva de recursos na rede para uma transmissão
      • É a escolha atual para a função de protocolo de reserva de recursos prevista em IntServ
      • Pretende ser adotado de maneira gradual
      • Descrito na RFC 2205
      • Baseado em fluxos ( streams ) ao invés de pacotes individuais
      • É um protocolo simplex que trabalha antes de qualquer informação ser enviada
      • Suporta IPv4 (ToS) e IPv6 (campo flow label )
    • RSVP
      • Suporta reservas multicast mas também reservas específicas individuais dentro de um mesmo grupo multicast, acompanhando as mudanças dos membros do grupo
      • Pode trabalhar com as mudanças nos grupos multicast
      • Receptores podem escolher dentre várias fontes de informação
      • Comunicação Unicast – pode usar reserva de recursos como alterativa para evitar ou sanar congestionamentos
      • Comunicação Multicast – redução de carga é possível quando determinados membros do grupo não querem a transmissão ou não suportam determinado nível de detalhes (exemplo: canais de vídeo de melhor ou pior resolução)
    • RSVP
      • Prevê que reservas com mesmos requisitos mas feitas separadamente devem poder ser agregadas de forma a minimizar os recursos disponibilizados e otimizar tráfego em função de caminhos semelhantes
      • O receptor da transmissão inicia a reserva e a mantém
      • Uma reserva (sessão) é alocada num roteador para uma sessão definida por:
        • Endereço IP de destino
        • Identificador de protocolo (campo protocol )
        • Porta de destino
    • RSVP e Roteamento
      • Baseado em roteamento multicast com “spanning trees”, mas o roteamento não é parte do protocolo – usa as rotas definidas pelo protocolo de roteamento existente
      • Opera independentemente do protocolo de roteamento utilizado mas deve interagir com o mesmo
      • O host previamente se inclui no grupo multicast relacionado através de IGMP (se unicast o roteamento é automático) e depois emite seu pedido de reserva
      • Acompanha as mudanças nas rotas usadas de forma transparente para a transmissão
      • Soft state – um conjunto de informações de estado num roteador que pode expirar se não for atualizada constantemente pelos usuários através de mensagens
    • Mensagens RSVP
      • O protocolo possui quatro mensagens básicas:
        • Mensagens de reserva ( RESV) : enviadas pelos destinos (unicast ou multicast) em direção aos hosts originadores das transmissões ( upstream ) para criar as reservas
        • Mensagens de caminho ( PATH) : enviada pelo originador da transmissão para divulgar e manter as rotas possíveis num determinado fluxo para os destinos multicast
        • Mensagens de erro e confirmação: sinalizam erro e confirmam reservas ( path-error, reservation-request-error e reservation-request-acknoledgement )
        • Mensagens de teardown : removem informação de caminho (path) e reservas. São enviadas por aplicações ou roteadores
      • Várias mensagens RESV enviadas podem ser agregadas numa única e devem ser periodicamente reenviadas para manter os soft states
    • Operação RSVP
    • Operação RSVP
      • Deve ser implementado em todos os roteadores que estejam no caminho das reservas feitas
      • Pode operar de forma transparente através de nós não-RSVP através de tunelamento
      • Cada receptor enviar á uma mensagem RESV reservando recursos para determinada origem dentro de uma sessão
      • Uma sessão é identificada pelo endereço de destino e um identificador de reserva (32 bits)
      • No caminho, os roteadores irão reservando os recursos necessários
      • Caso seja impossível em algum deles, será enviada uma mensagem de erro
    • RSVP
    • Especificação da Reserva
      • Pode-se oferecer diferentes estilos de reserva onde usuários especificam como as reservas de grupos são agregadas
      • Um pedido de reserva (chamado flowdescriptor ) é feito pela destino
      • Um flowdescriptor é composto por um flowspec (define parâmetros no agendador de pacotes – Rspec e Tspec) e um filterspec (define os pacotes a aplicar a reserva)
      • Alguns parâmetros:
      • Atributo de reserva
        • Reserva compartilhada ( shared ) – shared-explicit (SE)
        • Distinta ( distinct ) – fixed filter (FF)
      • Seleção de originadores ( senders )
        • Lista explícita de fontes
        • wild card
      Tipos de Reservas de Recursos
      • Não se espera o uso de RSVP em toda a Internet
      • Se prevê comunicação de roteadores que suportam RSVP através de tunelamento para criar a malha de roteadores RSVP
      • As nuvens não-RSVP devem ter capacidade em excesso para garantirem o serviço
      Reservas
    • Serviços Diferenciados - DS
      • Arquitetura ISA pode significar grande complexidade a ser incorporada na rede
      • Para grandes quantidades de tráfego a sinalização prevista pode ser onerosa
      • A informação de estados nos roteadores pode tomar grandes proporções em redes maiores
      • Esta arquitetura é descrito na RFC 2475
      • Prevê uma forma de oferecer serviços QoS simples, fácil e com pouca geração de overhead
      • Não exige que as aplicações suportem a arquitetura – o provedor do serviço irá definir os níveis contratados
    • DiffServ - Premissas
      • Os pacotes carregarão a informação de tratamento QoS usando o ca m po ToS do cabeçalho IP v4 ou o campo Traffic Class do IPv6
      • Pode agregar vários pacotes pertencentes à vários fluxos diferentes - mesmos campos DS são tratados da mesma maneira facilitando a escalabilidade no caso de grandes redes
      • DS prevê implementação nos roteadores encaminhando e enfileirando os pacotes se baseando unicamente no campo ToS
      • Não exige que se armazene nos roteadores informação de estado dos fluxos existentes
    • Campo Tipo do Serviço no padrão IPv4 – ToS
      • Precedence – nível de urgência ou prioridade
      • TOS – a seleção do próximo salto
    • Campo DS – IPv4
      • O campo Codepoint DS define a classe de serviço sendo aplicada ao pacote IP
      • Categorias possíveis (2^6 = 64 classes):
      • Xxxxx0 – usado correntemente para definir classes previstas no padrões em uso (000000 significa serviço comum – melhor esforço)
      • Xxxx11 – reservado para testes e uso local
      • Xxxx01 – reservado para testes e uso local e futuros padrões
    • DiffServ - Serviços
      • Um domínio DS é uma porção contígua da rede sujeita a um conjunto de políticas de DS administrada por uma única organização
      • Se um pacote é endereçado para dentro do domínio, o provedor deve garantir o serviço tal qual foi acertado no SLA – serviço uniforme e consistente
      • Se o pacote é endereçado para fora do domínio, o provedor o encaminha por outros domínios requerendo o serviço que mais se assemelha ao pedido no campo DS
    • SLA – Service Level Agreement
      • O serviço IP oferecido por um provedor é definido em acordos onde se detalha o que será oferecido em termos de serviços e capacidades
      • O SLA é um contrato firmado entre um provedor de serviço e um cliente (usuário) detalhando os parâmetros de performance da rede em operação
      • Documentos SLA podem conter parâmetros como:
        • Throughput, probabilidade de descarte e latência média da rede
        • Restrições nos pontos de entrada e saída da rede do provedor, definindo o escopo do serviço
        • Perfis de tráfego consistentes com o serviço que será oferecido (ex. Parâmetros token bucket )
        • A resposta da rede ao tráfego em excesso do cliente
    • Operação DiffServ
    • Diffserv - Operação
      • Interna
        • A interpretação das classes de serviço deve ser consistente dentro de um domínio
        • Roteadores internos tem mecanismos para manipular os pacotes de acordo com as classes definidas
          • Enfileiramento preferencial – PHB ( Per Hop Behaviour )
          • Descarte seletivo
      • Externa
        • Inclui as regras PHB
        • Condicionamento de tráfego para o serviço desejado
        • Maior complexidade nos roteadores
    • Destination Domain Providers Diffserv Domain Source Domain *Pre-marking *SLA *TCA Providers Diffserv Domain Non-DS Capable Domain *Pre-marking *SLA *TCA Diffserv Routers Non Diffserv Routers Ingress Router Egress Router Egress Router Ingress Router Interior Router *SLA *TCA *SLA *TCA Interior Router
      • TCA - Traffic Conditioning Agreements
      • SLA - Service Level Agreements
      Host Egress Router PHB Conditioning and PHB Conditioningand PHB Host Egress Router PHB Conditioning and PHB Conditioningand PHB Host DS Unaware Router Arquitetura DiffServ
      • Classificador de pacotes – separa o tráfego em classes baseado no Codepoint ou em campos do pacote
      • Medidor ( meter ) – medidor de tráfego para verificar concordância com o perfil definido para o mesmo
      • Marcador ( marker ) – remarca codepoints se necessário de acordo com a política em vigor
      • Delineador ( shaper ) – formata o fluxo de pacotes para o perfil
      • Descartador ( dropper )
      Função de Condicionamento de Tráfego Diffserv
    • Multiprotocol Label Switching (MPLS)
      • Estratégia do IETF para oferecer recursos de encaminhamento que faltam ao protocolo IP (ou outros) nativamente
      • Pode ter vários propósitos: garantir certo nível de performance, rotear adequadamente em situações de congestionamento ou criar túneis VPN
      • Suporta IP, IPX, Apletalk, ATM e FR e pode trabalhar com protocolos como RSVP e OSPF
      • Define a necessidade de um protocolo para distribuição de labels: por exemplo: Label Distribution Protocol (LDP) entre LSR´s
      • Pode estabelecer rotas com base em critérios como:
        • Endereços IP
        • Classe de serviço
        • Políticas
      • Viabiliza de maneira fácil engenharia de tráfego (camada 3)
    • MPLS
    • MPLS
      • Permite a comutação de pacotes de camada 3 rapidamente através da pesquisa de uma etiqueta ( label ) de 20 bits numa tabela de entradas de tamanho fixo (ao contrário do IP padrão que pesquisa em tabelas de roteamento com base em prefixos)
      • Cada fluxo (FEC – Forward Equivalence Class ) tem um caminho específico através de LSR’s definido com base nos seus requisitos de QoS
      • O encaminhamento é feito somente com base no label (o cabeçalho IP não é analisado) identificado em cada pacote e que pode ainda ser substituído
      • O protocolo de roteamento determina a topologia e as condições das rotas para que um caminho seja definido para a FEC
      • Os demais LSR’s são avisados de um novo caminho criado para uma FEC
      • Base de dados de encaminhamento ( Forwarding Information Base – FIB) : possui as entradas de cada label conhecido e seu encaminhamento
    • MPLS
      • Idéia: roteadores rápidos como switches ATM (não seria mais necessário ter ambas as tecnologias na mesma rede)
      • Cria uma estrutura de suporte QoS semelhante à usada em ATM (mais rápida que o encaminhamento IP)
      • Suporte QoS multiprotocolo orientado à conexão (mesmo sobre redes IP)
      • Cria uma camada de controle e provisionamento de rede independente dos nós da rede (NE – Networks Elements ) e do encaminhamento (roteamento IP)
      • Engenharia de tráfego – permite a definição de rotas dinamicamente, alocação de recursos baseados em demandas conhecidas, balanceamento de tráfego dinâmico e otimização da utilização de rede
      • Suporte a VPN – garantias de performance e segurança
      • Provê níveis SLA específicos e garantidos, diferenciando clientes
    • MPLS - Arquitetura LER de entrada LER de saída LSR
    • MPLS
      • Cada pacote está associado a uma FEC ( Forwarding Equivalence Class ) através de um label
      • Um LSP ( Label Switched Path ) é definido através de um protocolo de distribuição de labels com LDP, RSVP-TE ou CR-LDP
      • MPLS permite roteamento explícito
      • Integração com Diffserv
        • MPLS apresenta um campo QoS de 3 bits somente
        • Diffserv tem um campo de 6 bits podendo ter 64 classes de serviço
      • Empilhamento de labels - hierarquia de caminhos
    • MPLS
    • Header MPLS
      • Label de 20 bits
      • Exp - Informações DS ou PHB ( Class-of-Service - CoS)
      • S – bit stack
      • TTL
    • Cabeçalhos MPLS em Várias Tecnologias de Redes
    • Engenharia de Tráfego
      • Baseada no conceito de encontrar rotas adequadas de acordo com exigências de serviço adequadas
      • Exige um protocolo de troca de informações de rotas
      • Protocolos de roteamento com extensões apropriadas para divulgação de rotas e recursos disponíveis na rede
      • Constraint-based routing - CBR - capacidade de encontrar caminhos com base em mecanismos de otimização e critérios de restrição
      • Suporta critérios relacionados com recursos disponíveis (por exemplo: banda disponível) e também relacionados com aspectos administrativos (por exemplo: clientes VIP)
      • Suporte a rotas hot stand-by
      • RSVP pode estabelecer caminhos sobre uma rede MPLS com base em critérios CBR
      • Pode-se ainda estabelecer rotas manualmente
    • Redes Multiserviços Data-Optimized Optical Advanced Services QoS Engine Packet Multiplexing to the Transport Layer