20
Estudo QoS em redes IP baseadas em roteadores Cisco Célio Bitencourt da Silva Especialização em Redes e Segurança de Sistemas Pontifícia Universidade Católica do Paraná Curitiba, Março de 2010 Resumo Este trabalho faz uma breve descrição da qualidade de serviço aplicada sobre uma rede com roteadores Cisco. Ao longo do trabalho são abordados os diferentes mecanismos criados pela Cisco e aplicados as diversas finalidades no intuito de diminuir o jitter, o atraso, a perda de pacotes. Aborda a motivação para o uso de VPN de sua comunicação segura e economicamente viável juntamente com o roteamento por rótulos MPLS. 1 Introdução Até pouco tempo atrás as empresas utilizavam comunicação entre matriz e filial do tipo ponto a ponto, o que de certa forma garantia a segurança no caminho dos dados, mas havia um custo muito elevado na contratação destes serviços de comunicação. Algumas tecnologias orientadas a conexão surgiram como o Frame Relay e o ATM. Estas tecnologias permitiram diminuir as linhas dedicadas através da criação de circuitos virtuais dentro da nuvem frame relay ou ATM e conseqüentemente baixar o custo dos aluguéis. Figura 1: link ponto a ponto o encapsulamento pode ser HDLC. Apesar de estas tecnologias maximizarem a utilização dos recursos da rede do provedor de serviço, os custos na formação de rede de clientes ainda pesavam no bolso. Com o tempo os clientes buscavam alternativas para diminuir seus custos e que ao mesmo tempo priorizassem suas aplicações mais importantes como a utilização de VoIP entre suas filiais, trafego de transações de banco de dados, multiconferência, etc. Estas aplicações foram tomando prioridades estrita de qualidade de serviço a medida que se tornavam criticas para o negócio das empresas. Imagine um rede de lojas em que o VoIP funcione de maneira sofrível devido a falta de recursos do provedor de serviço para garantir a qualidade desejada, isto implica em perda de negócios e aumento do custo em ligações telefônicas interurbanas. Os protocolos FR e ATM são de camada 2, o FR

Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

Embed Size (px)

Citation preview

Page 1: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

Estudo QoS em redes IP baseadas em roteadores Cisco

Célio Bitencourt da Silva

Especialização em Redes e Segurança de Sistemas

Pontifícia Universidade Católica do Paraná

Curitiba, Março de 2010

Resumo

Este trabalho faz uma breve descrição da qualidade de serviço aplicada sobre uma rede comroteadores Cisco. Ao longo do trabalho são abordados os diferentes mecanismos criados pelaCisco e aplicados as diversas finalidades no intuito de diminuir o jitter, o atraso, a perda depacotes. Aborda a motivação para o uso de VPN de sua comunicação segura e economicamenteviável juntamente com o roteamento por rótulos MPLS.

1 Introdução

Até pouco tempo atrás as empresas utilizavam comunicação entre matriz e filial do tipoponto a ponto, o que de certa forma garantia a segurança no caminho dos dados, mas haviaum custo muito elevado na contratação destes serviços de comunicação. Algumas tecnologiasorientadas a conexão surgiram como o Frame Relay e o ATM. Estas tecnologias permitiramdiminuir as linhas dedicadas através da criação de circuitos virtuais dentro da nuvem frame relayou ATM e conseqüentemente baixar o custo dos aluguéis.

Figura 1: link ponto a ponto o encapsulamento pode ser HDLC.Apesar de estas tecnologias maximizarem a utilização dos recursos da rede do provedor

de serviço, os custos na formação de rede de clientes ainda pesavam no bolso. Com o tempo osclientes buscavam alternativas para diminuir seus custos e que ao mesmo tempo priorizassem suasaplicações mais importantes como a utilização de VoIP entre suas filiais, trafego de transaçõesde banco de dados, multiconferência, etc. Estas aplicações foram tomando prioridades estrita dequalidade de serviço a medida que se tornavam criticas para o negócio das empresas. Imagine umrede de lojas em que o VoIP funcione de maneira sofrível devido a falta de recursos do provedorde serviço para garantir a qualidade desejada, isto implica em perda de negócios e aumento docusto em ligações telefônicas interurbanas. Os protocolos FR e ATM são de camada 2, o FR

Page 2: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

não faz nenhum controle de erro e nenhum controle de fluxo o que torna o FR semelhante auma LAN de área extensa [1]. O ATM prometia resolver todos os problemas de redes [1], masapesar de ainda hoje ser muito utilizado na planta interna das operadoras [1]. O tamanho dopayload do ATM para o IP e falta de garantia na entrega de células no destino [1] fizeram comque naturalmente recaísse sobre o protocolo da Internet de camada 3 o protocolo IP a função degarantir serviços com qualidade devida sua função de comunicação fim a fim.

Figura 2: uma rede frame relay, as filiais se comunicam com a matriz ou concentrador através deseu identificador (DLCI).

Figura 3: uma rede FR/ATM. A matriz é um frame relay e filiais rodam sobre ATM.Este trabalho esta estruturado da seguinte maneira:

· Inicialmente problematizamos a questão das VPNs e sua segurança;

Page 3: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

· O capitulo 3 aborda a conceitos e a construção de VPN com a utilização do MPLS;· O capitulo 4 descreve as técnicas da Cisco para alcançar a qualidade de serviço;· O capitulo 5 discute questões sobre a realidade do MPLS suas vantagens edesvantagens (se houver) enquanto o capitulo 5 faz um breve resumo de todo o trabalho.

2 Problematização

Quando os clientes migram seus serviços para a rede pública, mecanismos adicionaisde segurança para o trafego são necessários. As VPNs (Virtual Private Network) por ser ummétodo seguro de comunicação entre dois pontos dentro da rede pública, tornou-se uma tendênciamundial. Segundo o IDC, em 2003, 10% das 500 maiores empresas brasileiras utilizavam VPNs,e previsão para o final de 2004 metade das 500 deveriam adotar, na época o crescimento mundialera em torno de 80%.

Mas que ameaças uma rede pública pode apresentar para o trafego? As ameaças de forada rede se manifestam quando existem dentro da própria rede erros que permitam tais ameaças aagir. Configurações mal feitas ou incompletas em firewalls e servidores deixando portas e serviçosdesnecessários ativos se constituem em vulnerabilidades, a utilização de um portscanner comoo nmap pode facilmente detectar estes furos. A captura de pacotes TCP pelo próprio nmap paraanálise dos flags de cabeçalho para análise e possível utilização de exploits em vulnerabilidadesdetectadas, se as portas do TCP estiverem abertas devem estar bem protegidas assim como asnão utilizadas fechadas. Os compartilhamentos CIFS/SMB se não estiverem bem configuradospodem expor dados por completo da organização e ainda permitir acessos indevidos, um simplescomando no navegador no formato do Windows: \\IP.DA.MAQUINA.DESCOBERTA podemostrar todo o compartilhamento se não houver uma senha forte. Outra maneira é pelo samba-clients com o comando smbcliente –L IP.DA.MAQUINA.DESCOBERTA. Rotas nãopertencentes a rede existentes nos gateways da rede. Senhas fracas de fácil memorização e quebrapor força bruta.

Enfim, a utilização de VPN entre os pontos para o tráfego assegura maior segurançaaos dados, sendo criptografados na origem e descriptografados no destino evitando que terceiros“escutem” a transmissão pela rede pública.

3 Redes Virtuais

Neste capitulo vamos introduzir o conceito de VPN, a tecnologia MPLS e seusmecanismos empregados para a formação de redes privadas existentes atualmente no mundocorporativo.

3.1 VPN – Virtual Private Network

As VPNs foram ocupando lugar de destaque na solução para a interligação de redesa medida que clientes (empresas, fornecedores, parceiros, usuários) necessitavam de um modoseguro na troca de informações entre os pontos envolvidos na comunicação pela rede públicaInternet, dita como insegura. O fato que pesa a seu favor é o custo final e a segurança. Uma

Page 4: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

VPN deve permitir fundamentalmente autenticação, integridade e confidencialidade, requisitosexigidos por políticas de segurança em qualquer contexto sobre segurança de redes.

As VPNs podem ser estabelecidas dinamicamente ou por configurações estáticas atravésde túneis IPSec ou MPLS [9]:

· Por circuitos virtuais: neste modelo a tecnologia empregada é o Frame Relay ou ATMe a configuração e manutenção são executados pelo provedor. A comunicação dentro dobackbone é feita pelo par VP/VC.· Tunelamento: neste modelo são utilizados protocolos de camada 2 (PPTP, L2TP) ecamada 3 o IPSec. A comunicação se dá sobre a Internet.· VPN/IP: neste modelo a comunicação é sobre o backbone do provedor utilizando osprotocolos de tunelamento ou o MPLS.

Em aplicações onde o tempo de transmissão é critico, a utilização de VPN deve sercuidadosamente analisada devido a problemas de desempenho e atraso [8]. As operadoras utilizamVPN IP com MPLS em links principais e normalmente comercializam junto dependendo é claroda necessidade do cliente links backup (utilizando o mecanismo HSRP ou VRPP) utilizando túnelIPSec na rede pública.

3.2 MPLS – Multiprotocol Label Switching

O protocolo MPLS descrito na RFC 3031 é utilizado na criação de caminhos entreroteadores de borda e núcleo, cada enlace de roteadores recebe um rótulo (label) de significadolocal. Este rótulo é utilizado para acelerar dentro da rede o roteamento. Os rótulos são distribuídosentre roteadores através do protocolo de sinalização LDP (Lable Distribution Protocol), mas afunção do LDP não é simplesmente anunciar estas rotas, ele define regras e mensagens paraos LSR estabelecerem um LSP. Conceitualmente o MPLS é considerado um protocolo de nívelintermediário entre a camada 2 (enlace) e 3 (rede). Este fato se deve aos pacotes IP não suportaremcircuitos virtuais (não possui campo no cabeçalho) levando os projetistas a criarem um novocabeçalho entre o protocolo de nível 2 e o cabeçalho IP [1].

Um roteador ou nó dentro do domínio MPLS é chamado LSR (Label Switching Router)[6], o path ou caminho através de um ou mais LSRs comutados por rótulos em nível de hierarquiaseguidos por pacotes de uma FEC são chamados de LSP (Label Switching Path) [6]. Uma FEC éum grupo de fluxos com mesmos requisitos e que terminam normalmente em um mesmo roteadorou LAN [1] sua identificação é feita por meio de rótulo inserido pelo roteador de ingresso (LER).A função do LSR é extrair o label do pacote entrante, verificar em sua tabela qual sua próximainterface e seu novo label, inserir este novo label e encaminhar para a próxima interface. O LSP(Label Switched Path) é o caminho de comutação de labels marcado entre a origem e o destinodentro da nuvem MPLS, muito parecido com os circuitos virtuais do ATM ou Frame Relay [6].Um LSP nada mais é que uma seqüência de labels.

Existem duas famílias de roteadores dentro da nuvem MPLS os LSRs que se conectamentre si dentro da nuvem MPLS e os fazem interface para fora da nuvem chamados de LER (LabelEdge Router).O MPLS é o burro de carga dos pacotes IP no processo de encaminhamento entre roteadores deborda (edge) e núcleo (core). O objetivo é permitir um processo de roteamento de pacotes IP maiságil garantindo a qualidade de serviço. Os pacotes IP quando entram no roteador de borda de

Page 5: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

origem são marcados (etiquetados) por um rótulo de 20 bits (MPLS Label) e são desmarcados noroteador de borda de saída. Durante seu trajeto na nuvem MPLS o cabeçalho não é mais analisado(o pacote está dentro da FEC) ocorrendo apenas trocas de label ao longo do percurso conforme atabela de rótulos que indicam qual o próximo hop e rótulo de cada roteador.

Figura 4: cabeçalho MPLS.Na figura 4 o campo label é a identificação do pacote com significado local. O campo exp indicaa prioridade do pacote (classe). O campo s de stack é utilizado para “empilhar” labels quandoexistir mais de um label no pacote. E, finalmente o campo ttl de time to live conta os hops, casoseu contador atinja 255 o pacote é descartado.

3.3 MPLS VPN

Uma VPN MPLS da Cisco é uma solução escalável implementada em camada 3 econsiste num conjunto de sites clientes (intranet ou extranet) interligados por recursos MPLS deuma rede core de um provedor de serviço [11]. Os roteadores CEs (Customer Edge) instalados nosvários pontos do cliente estão interligados através de vários PEs (Provider Edge) do provedor. Osroteadores PE e P comunicam-se entre si utilizando o protocolo BGP-Multiprotocol (MP-iBGP)para troca de labels e VPN-IPv4 [11]. As trocas de rotas IPV4 entre PE e CE acontecem com umprotocolo IGP (RIP ou OSPF) ou MP-eBGP. A figura 5 mostra as fronteiras entre os elementosde uma VPN MPLS.As principais tecnologias empregadas em VPN baseada em MPLS são descritas a seguir [12]:

· MP-BGP distribui as informações de roteamento dos CEs através dos PEs.· Encaminhamento de pacotes pelo MPLS entre os PEs.· Um PE possui múltiplas VRFs.· Filtragem da rota através de atributos route target do MP-BGP extended community.

Figura 5: fronteiras da VPN MPLS para o roteamento.

Page 6: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

Características da VPN MPLS [11]:· Quando um pacote é transportado dentro do backbone do provedor, dois labels sãoutilizados. O primeiro label direciona o pacote para o PE de egresso correto, ou seja, a suaVRF correta, o segundo informa ao PE de egresso como deverá encaminhar este pacoteatravés dos roteadores P.· MP-BGP extesions é utilizado para codificar endereços IPv4 do cliente num únicovalor IPV4 NLRI (Network Layer Reachability Information).Exemplo 189.74.0.0/16 prefixo = 16 tamanho = 189.74· NLRI é um endereço de destino dentro do MP-BGP, portanto considerado umaunidade de roteamento.· Os atributos do extended MP-BGP community são utilizados para controlar adistribuição de rotas cliente.

3.4 MP-BGP

O multiprotocolo BGP é responsável pela distribuição das informações de roteamentoatravés do MP-BGP extensions e MP-BGP community attribute que definem quem se comunicacom quem [11]. O multiprotocolo efetua a troca de atualizações entre os PE e P, estas atualizaçõescontém o endereço VPN-IPv4, labels, PE origem e o próximo hop da rota [12]. Uma rota do CEpode ser aprendida pelo PE das seguintes maneiras: pelo MP-eBGP, por protocolos IGP (RIP,OSPF, etc.) ou por rota estática. Quando aprendida a rota o PE através de extensions MP-BGPcodifica o endereço IP mais o conjunto de 8 bytes do RD (route distinguisher) em um endereçoVPN-IPv4 [12] e então é anunciado dentro da nuvem, o multiprotocolo deve assegurar que asrotas anunciadas serão aprendidas apenas por membros da própria VPN. A codificação IP + RD édesignada como NLRI.

Figura 6: um site pode pertencer a mais de uma VPN.O RD define a rota default para todos os membros da VPN através de um prefixo de valor

global para a VPN dentro do backbone, acelerando o processo de roteamento entre os sites. No

Page 7: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

quesito segurança o RD é desconhecido dos usuários, o que torna praticamente impossível alguémentrar na VPN por alguma porta e falsificar os dados [11].

Um RT (route target) tem a função de controlar a distribuição de rotas entre sites, omecanismo importa e exporta rotas de e para uma tabela VRF, deve ser utilizado em conjunto como RD.

Um site pode estar em múltiplas VPNs, uma VPN pode estar associada a mais de umaVRF (VPN Routing and Forwarding) [11], as VRF são mantidas apenas nos PEs [11]. A VRFconsiste deuma tabela de roteamento IP derivada de uma tabela CEF (Cisco Express Forwarding) e oconjunto de interfaces que utilizam esta tabela [12], ou seja, o roteamento entre sites é feitoexclusivamente pela tabela da VRF, se dado site não esta contido na tabela VRF este não pertencea VPN e não será acessível . O roteador mantém uma tabela CEF separada para cada VRF,isto previne que as informações sejam distribuídas fora da VPN permitindo que uma mesmasub rede possa ser utilizada em várias VPNs sem conflito [11]. A tabela CEF consiste de doiselementos principais: O primeiro elemento é a FIB (Forward Information Base), uma tabela quemantém informações de roteamento IP [14]. Alterações de roteamento e atualizações ocorridasna rede refletem na FIB [14]. O segundo elemento é a tabela de adjacência utilizada para obterinformações de comutação da camada 2. A configuração abaixo mostra a aplicação dos conceitosacima criando a VRF site_teste:

Criar a VRF:ip vrf site_testerd 100:1route-target export 100:1route-target import 100:1

Aplicar o MP-BGProuter bgp 100address-family ipv4 vrf site_testeredistribute connectedredistribute staticno auto-summaryno synchronizationexit-address-family

4 Técnicas Para Alcançar a Qualidade de Serviço

Neste capitulo vamos estudar como a Cisco implementa em seus roteadores mecanismospara auxiliar na qualidade de serviço. O controle de congestionamento, controle de filas,exigências para um link de comunicação de dados, a moldagem e policiamento do trafego.

4.1 Qualidade de Serviço

Page 8: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

Uma sequencia de pacotes desde sua origem até seu destino é chamado fluxo [1]. Emredes orientadas a conexão, todos os pacotes que pertencem a um fluxo seguem a mesma rota; emcontraste uma rede sem conexões, eles (pacotes) podem seguir rotas diferentes. As necessidadesde cada fluxo podem ser caracterizadas por quatro parâmetros principais: confiabilidade, oretardo, a flutuação e largura de banda. Juntos esses parâmetros definem a qualidade de serviçoque o serviço exige [1].

A Cisco define qualidade de serviço como a habilidade em fornecer um serviço comgarantias a determinados fluxos. Define também uma arquitetura própria para permitir garantiasde serviço, esta implementação ocorre em três etapas fundamentais [2]:

· Identificação e marcação dos pacotes;· Mecanismos únicos nos elementos de rede (filas, escalonamento e traffic shaping);· Funções de política, gerenciamento e contabilidade para administração do tráfego fima fim dentro da rede.A classificação ou a priorização é feita pelas tarefas de identificação e marcação dos

pacotes. Quando um roteador recebe pacotes ele identifica o tráfego a ser priorizado e qual opacote a ser marcado. Se o pacote é identificado e não é marcado, a classificação ocorre apenas noroteador de origem não sendo repassado aos roteadores ao longo do caminho [2]. Nesta situação,apenas estamos evitando congestionamento para o pacote informando aos roteadores do caminhoa prioridade em relação a pacotes normais, neste tipo de abordagem é utilizado a precedencia IPdo campo TOS pertencente ao cabeçalho IP em conjunto com ACLs (Access Lists) e filas do tipoPQ (Priority Queueing) e CQ (Custom Queueing) [2]. Outra abordagem é utilizar o campo TOSmodificado para campo DS (Differentiated Services) usando a reserva de classes através dos bitsDSCP.

Para o provimento de QoS pelos elementos de rede os mesmos devem possuir elementosde gerência de congestionamento, gerência de filas, um link eficiente para suportar o tráfego emoldagem e policiamento do tráfego possíveis de serem aplicados em interfaces LAN ou WAN[2].

4.2 O Protocolo IP

O elemento que mantém a Internet unida é o protocolo da camada de rede, o IP(Internet Protocol) [1]. Desenvolvido para possibilitar interconexão de redes, estabelecendoregras e formatos para endereços e para roteamento de pacotes [9]. O funcionamento dacomunicação na Internet inicia com a camada de transporte recebendo um fluxo de dados que sãodivididos em datagramas. Teoricamente um datagrama possui de 64kbytes até 1500 bytes. Cadadatagrama é transmitido na Internet muito provavelmente fragmentado em unidades menores pelocaminho. Quando chegam (todos) ao destino são remontados pela camada de rede no datagramaoriginal e repassados a camada de transporte [1]. O cabeçalho IP (figura 7) possui uma parte fixa20 bytes e uma opcional de tamanho variável [1]. Analisaremos a seguir apenas um campo docabeçalho IP, o campo TOS (type of service), este é o campo que provê as facilidades para aqualidade de serviço.

O campo TOS do cabeçalho IP teve sua função alterada. Inicialmente determinava certaprioridade ao pacote ao longo de seu caminho. Dividido em dois blocos; a precedência IP (IPprecedence) contendo 3 bits mais significativos e o valor TOS contendo os bits 1 a 4, o bit 0

Page 9: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

não é utilizado [7]. A precedência IP garantia prioridade ao pacote na escala de 0 a 5, sendo 5 amaior prioridade. O valor TOS permitia teoricamente que a aplicação cliente definisse o que eramais importante; retardo, throughput ou confiabilidade, na prática os roteadores atuais ignoram ocampo TOS [1].

O IETF alterou o campo type of service para campo DS (Differentiated Services) alterandopor inteiro seu significado (figura 8). O campo DS foi dividido em 2 campos; o DSCP com6 bits (Differentiated Services Code Point) e ECN (Explicit Congestion Notification) de usoexperimental com 2 bits. O DSCP define 6 classes de serviço, estas classes mostradas na figura 9são manipuladas pelos roteadores core através de regras (policy), este tratamento é conhecido porPHB (Per Hop Behavior) [10].

Figura 7: no cabeçalho IP o campo TOS foi alterado para DS.Uma classe DF (Default Forwarding) não utiliza nenhum mecanismo de QoS e será

encaminhado a fila default. As classes AF1...4 (Assured Forwarding) necessitam de mecanismosque garantam seu trafego fim a fim com pouco descarte e garantias de delay e jitter especificaspara cada tipo de aplicação, a classe AF4 possui prioridade sobre as outras. Por fim, a classe EF(Expedited Forward) é a classe utilizada para o trafego de voz e deve ser tratada prioritariamentesobre todas as outras classes.

Figura 8: divisão do byte no campo DS.

4.3 Controle de Congestionamento

A gestão de congestionamento é responsável por questões sobre tratamento dado aotráfego como o em rajadas para que não exceda a capacidade de transmissão, os instrumentospara se chegar a este objetivo são os diferentes tipos de filas priority queue (PQ) custom queue

Page 10: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

(CQ) weighted fair queue (WFQ) e class-based weighted fair queue (CBWFQ). Cada fila foidesenvolvida com propósitos diferentes na solução de problemas de uma rede, se uma rede nãopossui congestionamento ao longo do tempo de utilização não há motivos para se utilizar filas,vamos analisar as principais.

A fila FIFO (first in first out) é a default em redes IP. Encaminha pacotes por ordemde chegada, determinando a largura de banda e não efetuando nenhuma decisão sobre pacotesprioritários, trafego de aplicações mal comportadas. Quando a rede esta congestionada armazenaos pacotes e descarta quando esta cheia. Encaminha os pacotes por ordem de chegada no esquemastore-and-forward. Para o trafego em rajadas não é uma boa estratégia a utilização de filas FIFO[2].

Figura 9: as PHBs.Outro tipo de fila é a priority queue mostrada na figura 10, os pacotes entrantes são

classificados em quatro níveis de fila: médio, alto, normal e baixo respectivamente médium,high, normal e low, o padrão para pacotes não marcados é normal. Neste tipo de fila o tráfegode maior prioridade é tratado antes de qualquer outro pacote com prioridade mais baixa. O pontoforte deste tipo de fila é a utilização de configuração estática sendo útil em tráfego de missãocritica. O exemplo abaixo define uma fila PQ onde primeiramente habilitamos a priority list e emseguida aplicamos na interface:

Router(config)#access list 101 permit ip any any dscp efRouter(config)#priority-list 1 protocol ip high list 101Router(config)#interface Ethernet0Router(config-if)#priority-group 1

A fila custom queue (figura 11) compartilha o tráfego entre várias aplicações definidas naconfiguração, na figura 11 temos uma fila CQ, nela podemos ter até 16 filas numeradas de 1 a16 que são servidas através do algoritmo de escalonamento round robin [2], a fila 0 é utilizadaé utilizada pelo roteador para sinalização, mensagens de keepalive, etc., cada tráfego pode tersua própria fila, vale lembrar que quanto mais filas, menor é a banda para cada fila o que é umponto negativo, pois mesmo que uma fila não esteja em uso a banda é dividida igualmente entreas filas. Por padrão cada fila pode manter 20 pacotes de 1500 bytes o que pode ser mudado naconfiguração. Para habilitar uma fila CQ no roteador são necessários dois passos: definição do

Page 11: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

tráfego a ser manipulado pela fila e aplicar em uma interface, no exemplo abaixo foi definido queo tráfego crítico será manipulado pela fila 3.

Router(config)#access list 103 permit ip any any precedence 5Router(config)#queue-list 1 protocol ip 3 list 103Router(config)#interface Ethernet0Router(config-if)#custom-queue-list 1

Figura 10: fila PQ.A fila WFQ é de fato o principal método de filas da Cisco [2] (figura 12), sua utilização

é recomendada em links abaixo de 2Mbps (2048Kbps), seu algoritmo é o de enfileiramento justoonde os vários tipos de tráfego são tratados igualmente. Por exemplo: a fila 1 possui pacotes comtamanho de 100 bytes e a fila 2 possui pacotes com tamanho de 50 bytes, o algoritmo WFQ irátransmitir 2 pacotes da fila 2 para cada 1 pacote da fila 1, estabelecendo a justiça entre as filas ereduzindo o tempo de resposta para trafego interativo. Por padrão WFQ é habilitado no roteador,mas pode-se habilitá-lo durante a configuração dentro da interface, para isso basta digitar:

Router(config)#interface Serial0/0Router(config-if)#fair-queue

Uma fila do tipo CBWFQ permite que o tráfego seja moldado em classes com quantidadede largura de banda mínima [2]. CBWFQ difere do WFQ na forma como trata o tráfego, enquantoWFQ cria filas e seleciona por fluxo CBWFQ cria classes e seu tráfego é baseado nestas [2].Para habilitar CBWFQ no roteador são necessários três passos: criar um ou mais class-map quedescreve o tipo de tráfego, criar o policy-map que diz ao roteador o que fazer com este tráfego epor fim aplicar o policy na interface de um ou mais roteadores. Segue um exemplo:

Page 12: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

Criar o policy-mappolicy-map p1class DADOS_URG

bandwidth percent 50policy-map p2

class class-defaultservice-policy p1

Criar a class-mapmap-class class1

service-policy output p2

Aplicar na interfaceInterface serial0/1no fair-queueclass class1

Figura 11: fila CQ.

4.4 Gerencia de Filas

A definição de critérios de descarte de pacotes e assegurar que a fila sempre possuaespaço para os pacotes prioritários são tarefa da gestão de filas implementada pelo mecanismode weighted random early detect (WRED), este mecanismo combina o algoritmo RED com aprecedência IP [2].

O mecanismo RED opera prevendo onde ocorrerá o congestionamento congestionavoidance em diferentes pontos da rede através de funções de controle do TCP, normalmente

Page 13: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

opera em roteadores de backbone (core) [2]. Suas principais ações são selecionar quais pacotesdescartar e solicitar à fonte que diminua a taxa de transmissão.

Para determinar quando começar a descartar pacotes, os roteadores mantêm uma médiaatualizada dos comprimentos de suas filas. Quando o comprimento médio da fila em alguma linhaexcede o limiar, considera-se que a linha está congestionada [2]. O WRED não prioriza trafegosensível ao atraso, mas oferece tratamento preferencial a estes em situações de congestionamento.

Figura 12: fila WFQ.

4.5 Links Eficientes

A eficiência do link é crítica, vários tipos de aplicações atravessam o link, todascompetindo por alguma largura de banda e necessitando de algum tratamento diferenciado.Quando temos um link de baixa velocidade é necessário que os pacotes sensíveis ao atraso (voz,FTP, etc.) sejam fragmentados. A fragmentação é necessária, pois nem todas as redes possuempacotes do mesmo tamanho, ou seja, um pacote grande demais para uma rede que admite pacotesmenores (interworking IP/ATM, FR/ATM, e assim por diante.).

A LFI (Link Fragmentation and Interleaving) foi desenvolvida para evitar que em linksde baixa velocidade (figura 13), normalmente links com bandwith abaixo de 768Kbps ocorramperdas devido a diferença do tamanho dos pacotes de diferentes aplicações. Caso a fragmentaçãonão ocorra irá ocasionar aumento na média do atraso e a variação do jitter, esta técnica deve seraplicada em conjunto com o multilink do protocolo PPP (MLPPP), para o Frame Relay o FRF.12(Frame Relay Fragmentation 12) do Frame Relay Fórum deve ser utilizado [2]. A implementaçãoFRF.12 especifica a fragmentação e intercalação de dados de tempo real com dados comuns emum mesmo link, antes de surgir esta especificação a única maneira de reduzir o tamanho do pacoteera alterando o MTU [10].

A aplicação da configuração MLPPP sobre o ATM com uma velocidade de 256Kbps emuma interface virtual-template deve seguir este modelo:

Page 14: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

Criando a interface virtual template:interface Virtual-Templatenumero_da_interfacebandwidth 256load-interval 30ppp multilinkppp multilink fragment-delay 10ppp multilink interleaveservice-policy output nome_da_policy

Anexando na interface WAN:interface interface.subinterface point-to-pointbandwidth 256protocol ppp Virtual-Templatenumero_da_interface

Figura 13: Fragmentação de pacotes é utilizada em links abaixo de 768Kbps.A cisco recomenda [3] a formula abaixo para calcular o tamanho do fragmento do pacote em umMLPPP, na configuração acima temos um fragmento de 320 bytes, veja:fragment_size = bandwith * fragment_delay / 8256 * 10 / 8 = 320 bytes

4.5.1 Multilink PPP

Multilink PPP é utilizado para reduzir a latência e o jitter em links WAN de baixavelocidade e que transportam tráfego sensível ao atraso [13]. Fornece intercalação, fragmentação eresequenciamento de pacotes através de múltiplos links lógicos [13]. Consideramos link de baixavelocidade um link com bandwith >= 768Kbps. O multilink é utilizado em conjunto com as filasWFQ e CBWFQ [13].

A intercalação é o processo de transmitir em um mesmo link WAN dados com váriosníveis de prioridade como, por exemplo; trafego interativo (telnet), tempo real (voz) e dados

Page 15: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

comuns tratados como processos ou separados. A intercalação é baseada em duas outrasatividades do multilink [13]:

· Fragmentação de pacotes· Multiplexação de pelo menos dois fluxos.

A fragmentação é o processo de quebrar pacotes grandes em fragmentos na transmissão. Duranteo processo de fragmentação de um pacote grande o multilink adiciona seu cabeçalho ao fragmentoe o transmite individualmente. O resequenciamento é o processo inverso na recepção, monta opacote a partir do cabeçalho multilink do fragmento. Antes de transmitir qualquer fragmentoo multilink verifica na fila se há pacotes sensíveis ao atraso, caso exista, estes pacotes sãopriorizados e intercalados entre os pacotes fragmentados (os pacotes de voz não devem serfragmentados), tornando o percurso pela rede muito mais rápido. O tamanho do fragmentodetermina a velocidade do processo de fragmentação, a configuração do tamanho do fragmento éfeita através do comando ppp multilink fragment delay já discutidos no capitulo Eficiência doLink.

Figura 14: processo de fragmentação e intercalação do multilink.Antes de configurar o multilink deve ser criada a policy com os parâmetros específicos

para alcançar a qualidade de serviço e em seguida aplicar ao multilink.

Criar o multilinkinterface multilink M1 //define um nome para o grupo multilinkip address 10.10.10.1 255.255.255.252 //ip da interface de saidaservice-policy output OUT //policy para o trafego sainteservice-policy input IN //policy para o trafego entranteppp multilink fragment delay 10 //define em unidade de tempo o tamanho do fragmentoppp multilink interleave // habilita o entrelaçamento de pacotes grandesfragmentados

Aplicar o multilink na interfaceinterface serial 4/0/1:0no fair-queue // desabilita WFQ

Page 16: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

encapsulation pppppp multilink // ativa o multilinkppp multilink group M1 // restringe o multilink a interface fisica

4.6 Moldagem e Policiamento do Trafego

Traffic Shaping ou moldagem do tráfego é utilizada para controlar o tráfego sainteutilizando o algoritmo de token bucket, muito útil para preservar o trafego prioritário do trafegoguloso por banda como o em rajada. Traffic shaping (figura 15) ou genéric traffic shaping éutilizado em redes Frame Relay, ATM, SMDS e Ethernet para controlar o trafego sainte limitadoa uma taxa, qualquer fluxo acima do limite configurado é enfileirado ou bufferizado. Utiliza oalgoritmo token bucket como filtro para atingir o objetivo. Para utilização do traffic shaping omesmo deve ser ativado na interface em conjunto com listas de acesso. Por exemplo:

Router(config)#access list 101 permit tcp any eq www anyRouter(config)#access list 101 permit tcp any any eq wwwRouter(config)#access list 102 permit tcp any eq ftp anyRouter(config)#access list 102 permit tcp any any eq ftpRouter(config)#interface FastEthernet0/0Router(config-if)#traffic-shape group 101 100000Router(config-if)#traffic-shape group 102 200000

Figura 15No script do exemplo acima restringimos o trafego de pacotes tcp WWW e FTP para uma taxa de100k e 200k respectivamente na interface fast, o restante do trafego utiliza a fila default.O policiador Committed Access Rate (CAR) utiliza as mesmas técnicas da moldagem de tráfego,mas é aplicado em ambos os sentidos, sou seja, no trafego entrante e sainte. A principal diferençaentre o CAR e o traffic shaping é que o policy descarta pacotes ao contrário da moldagem quebufferiza [2].

Page 17: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

O CAR tem duas funções para a qualidade de serviço, a função de classificar os pacotespela precedência IP ou por classes pelo DSCP e controlar o trafego entrante e sainte de umainterface, neste último caso, pacotes que excedam a taxa limite serão descartados oureclassificados para retransmissão com outra prioridade. O CAR não pode ser utilizado eminterfaces que não suportam CEF (Cisco Express Forwarding) [4]. Utiliza um token buketligeiramente diferente do original [4]. O tamanho do balde é igual taxa da rajada (burst size) econfigurável pelo usuário, a taxa para preencher o balde com tokens é o mesmo configurado para olink (CIR). Para transmitir pacotes deve haver o número suficiente de tokens no balde, neste casoo trafego é chamado de pacotes conforme (normal burst), caso o balde já esteja cheio, o trafego éconhecido como pacotes em excesso (extended burst) e podem ser descartados. Como em certassituações há a possibilidade de retransmitir pacotes que excedem a taxa em outra prioridade, aCisco recomenda alguns cálculos para este tipo de tráfego [5].normal_burst = CIR * (1/8)*1,5 CIR = taxa configurada na interfaceextended_burst = normal_burst * 2Suponha que temos um link de 128kbps e queremos priorizar todo trafego de aplicações http,a saída do trafego http é restringida em 50kbps, neste ponto todos os pacotes são transmitidos,quando o trafego filtrado exceder este limite o roteador continuará transmitindo (observe noscript abaixo que instruímos o roteador com o comando continue) até a média extrapolar olimite de 100kbps os pacotes com precedência 3 e descartará todos os pacotes de outro trafegomarcados com prioridade 0 (action drop), note que a rajada é configurada estritamente para4,5KB/s e configurada uma rajada variável nos limites entre 4,5KB/s até um máximo de 9KB/s notrafego excedente, ultrapassando este limite há descartes. Podemos configurar o CAR da seguintemaneira:

Router(config)#access list 101 permit tcp any eq www anyRouter(config)#access list 101 permit tcp any any eq wwwRouter(config)#access list 103 permit ip any anyRouter(config)#interface HSSI0/0Router(config-if)#rate-limit output 50000 4500 4500 conform-action transmitexceed-action continueRouter(config-if)#rate-limit output access-group 101 100000 4500 9000conform-action set-prec-transmit 3 exceed-action continueRouter(config-if)#rate-limit output access-group 103 100000 4500 9000conform-action set-prec-transmit 0 exceed-action drop

Frame Relay Traffic Shaping (FRTS) é utilizado em redes Frame Relay controlandolargura de banda em um PVC ou SVC, isto é, esta facilidade não controla o fluxo por aplicação,foi desenvolvida para controlar o CIR contratado. Para cada PVC criado na WAN terá seu próprioCIR. O FRTS utiliza os campos FECN (Forward Explicit Congestion Notification), BECN(Backward Explicit Congestion Notification) e DE (Discard Eligibility Indicator) do cabeçalho decontrole do Frame Relay para moldar o trafego.

· FECN (setado em 1) informa ao receptor para iniciar seu processo de reduçãodo trafego para eliminar o congestionamento, ou seja, existe congestionamento afrente do equipamento que notificou o evento (veja a figura 6).

Page 18: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

· BECN (setado em 1) informa ao transmissor para iniciar processo de reduçãodo tráfego para evitar congestionamento, ou seja, existe congestionamento paratraz do equipamento notificador do evento (veja a figura 6).· DE (setado em 1) indica se o frame pode ser descartado em situação decongestionamento.

Na configuração abaixo assumimos uma taxa mínima de 10kbps, isto é pode ser necessário,pois em situações em que o congestionamento, quando o roteador recebe o bit BECN setado atendência é reduzir a taxa de transmissão até zero.

Router(config)#interface HSSI0/0Router(config-if)#encapsulation frame-relayRouter(config-if)#exitRouter(config)#interface HSSI0/0.1 point-to-pointRouter(config-subif)#traffic-shape adaptive 10000Router(config-subif)#frame-relay interface-dlci 31Router(config-subif)#end

Figura 16: controle de congestionamento do frame relay FECN e BECN informam o sentido docongestionmento o bit DE descartará o frame.

5 Uma Palavra sobre VPN MPLS

O MPLS surgiu para suprir a deficiência do roteamento IP na engenharia de tráfego. OMPLS tem a seu favor a interoperabilidade com outros protocolos, utilizando um novo paradigmade roteamento, permitiu a criação de redes escaláveis. Permitiu que os provedores de serviçosutilizassem suas redes já existentes (FR/ATM) e roteadores instalados na planta interna(consequentemente baixando os preços dos acessos) e nos clientes e convergissem estastecnologias para rodar em cima do MPLS, ou seja, o MPLS permitiu aos provedores de serviçoreadequar seu parque tecnológico para tal.

Page 19: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

Um fator negativo é que nem todos os CPEs suportam configurações avançadas parapermitir QoS, seja por determinação do hardware ou IOS não suportam tal facilidade. Outrasmarcas de CPE recentes suportam QoS, mas ainda estão em um nível abaixo aos da Cisco dequalidade e confiabilidade e gerência. Como a Cisco é modelo em termos de redes dificilmentedeixara tão cedo o pedestal.

As configurações tanto nos roteadores Cisco como de outros fabricantes são complexasexigindo do pessoal técnico conhecimento, daí surge a necessidade crescente no mercado de bonsprofissionais nesta área.

Apesar da Cisco soprar aos quatro cantos a segurança das VPNs, vale lembrar que assenhas de acesso aos CPEs, PÉS e P são autenticadas pelo TACACs ou algum outro servidor.Isto quer dizer que se um atacante conseguir acesso (seja por engenharia social) poderá facilmenteter acesso a todas as VPNs digitando em uma conexão SSH com um PE por exemplo telnetip_da_vitima /vrf nome_da_vrf_da_vitima.

6 Conclusão

A qualidade de serviço provida por uma rede VPN MPLS com roteadores de bordae clientes configurados adequadamente conferem um alto grau de confiabilidade no serviço,garantindo o atendimento do SLA contratado.

Embora hoje o MPLS supra as deficiências de toda e qualquer tecnologia de comunicaçãona entrega de serviços diferenciados (voz, vídeo, etc.) como a tecnologia anda de trem bala e não acavalo, logo poderá perder força e não mais suprir as necessidades do mercado de forma eficiente,surgindo uma nova tecnologia tão boa quanto é o MPLS.

Bibliografia

[1] Tanenbaum, Andrew S., Redes de Computadores, Rio de Janeiro: Elsevier, 2003

[2] http://www.cisco.com/en/US/docs/internetworking/technology/handbook/QoS.html

[5] http://www.cisco.com/en/US/docs/ios/12_2/qos/configuration/guide/qcfpolsh.html

[4] http://www.cisco.com/en/US/docs/ios/11_1/feature/guide/CAR.html

[3] http://www.cisco.com/en/US/docs/ios/12_2/qos/configuration/guide/qcflfifr.html

[6] http://www.rfc-editor.org/rfc/rfc3031.txt

[7] Kevin Dooley & Ian J. Brown – Cisco Cookbook – O’reilly – 2003

[8] http://www.rnp.br/newsgen/9811/vpn.html

[9] http://www.teleco.com.br/tutoriais/tutorialvpn/Default.asp

[10] http://www.broadband-forum.org/technical/download/FRF.12/frf12.pdf

Page 20: Estudo QoS em redes IP baseadas em roteadores Ciscojamhour/RSS/TCCRSS08B/Celio Bitencour… · através do MP-BGP extensions e MP-BGP community attribute que definem quem se comunica

[11] http://www.cisco.com/en/US/docs/net_mgmt/vpn_solutions_center/1.1/user/guide/VPN_UG1.html

[12]http://www.cisco.com/en/US/tech/tk436/tk428/technologies_configuration_example09186a00800a6c11.shtml

[13] http://www.cisco.com/en/US/docs/ios/ios_xe/qos/configuration/guide/reducing_latency_xe.html

[14] http://www.cisco.com/en/US/docs/ios/12_1/switch/configuration/guide/xcdcef.html