QoS em roteadores Cisco Alberto S. Matties 1, André Moraes 2 1 Curso Superior de Tecnologia em Redes de Computadores Rua Gonçalves Chaves 602 96.015-000 Pelotas RS Brasil 2 FACULDADE DE TECNOLOGIA SENAC PELOTAS (FATEC PELOTAS) albertomatties@yahoo.com.br Abstract. This article aims to document and demonstrate the importance of QoS in data network and the application of this technique on Cisco routers. Resumo. Esse artigo tem como objetivo documentar e mostrar a importância de QoS em uma rede de dados e a aplicação desta técnica em roteadores Cisco. 1. Introdução Hoje em dia muitos serviços demandam cada vez mais de uma maior banda na rede, eles podem ter a suaperformance prejudicada por outros seviços e aplicações que também fazem uso da rede, neste artigo será mostrado como contornar este problema utilizando técnicas de QoS em roteadores Cisco. 2. Conceitos técnicos Neste capitulo são demonstrados alguns conceitos técnicos que devem ser entendidos para a fundamentação do artigo. 2.1. Roteador Roteador é um equipamento usado para fazer a comutação de dados entre diferentes redes de computadores. A principal característica desses equipamentos é selecionar a rota mais apropriada para encaminhar os pacotes recebidos. Ou seja, escolher o melhor caminho disponível na rede para um determinado destino. 2.2. Cisco A Cisco Systems é uma companhia multinacional e sua atividade principal é o oferecimento de soluções para redes e comunicações, fabricando diversos dispositivos de rede como roteadores e switchs. 2.3. ACL Uma lista de controle de acesso ( ACL ) é uma lista de regras ordenadas que permitem ou bloqueiam o tráfego de pacotes baseado em certas informações presentes nestes. 2.4. Campo DSCP No cabeçalho do pacote IP existe um campo chamado ToS (Type of Service) que possui um sub-campo chamado DS Filed que acopla o DSCP (DiffServ Code Point) formado por seis bits, a marcação padrão deste campo tem valor igual a 0 (zero),neste campo fica a informação necessária para se destituir o tipo de trafego.
2.5. Wireshark O Wireshark é uma ferramenta que analisa o tráfego de rede, e o organiza por protocolos endereços de origem ou destino e muitos outros tipos de filtros. 2.6. Jperf Jperf é uma ferramenta de teste que pode criar fluxos de dados TCP e UDP, ela é muito util para medir o desempenho de uma rede. 2.7. VoIP A Voz sobre IP, também chamada de VoIP (Voice over Internet Protocol), telefonia IP, telefonia Internet, telefonia em banda larga ou voz sobre banda larga é o roteamento de conversação humana usando a Internet ou qualquer outra rede de computadores baseada no Protocolo de Internet, tornando a transmissão de voz mais um dos serviços suportados pela rede de dados. 2.8. SSH Secure Shell ou SSH é, simultaneamente, um programa de computador e um protocolo de rede que permite a conexão com outro computador na rede, de forma a executar comandos de uma unidade remota. Possui as mesmas funcionalidades do TELNET, com a vantagem da conexão entre o cliente e o servidor ser criptografada. 3. QoS QoS é o acrônimo de Quality of Service, ou seja, Qualidade de Serviço. Trata-se de uma nomenclatura genérica para designar um conjunto de algoritmos capazes de fornecer vários níveis de tratamentos para diferentes tipos de tráfego na rede. O propósito dessa tecnologia é otimizar o uso da banda passante provendo um tráfego fim-a-fim eficaz e econômico. O QoS resolve até um certo limite a necessidade da aquisição de mais banda para a rede, pois supre a demanda de tráfego das LANs/WANs de forma inteligente e organizacional através dos mais diversos mecanismos que ele dispõe. O QoS é muito importante para as redes convergentes, pois as tornam capazes de transportar de maneira bem próximo ao ideal os mais diversos tráfegos, como vídeo, voz e dados, de modo simultâneo sem que um interfira no outro. Cada um desses tráfegos merece um tratamento especial conforme suas características. QoS tornou-se indispensável em alguns casos, como por exemplo, ficaria impraticável o tráfego pela WAN de vídeo e voz se não houvesse QoS.
3.1. Classificação Como cada tipo de trafego merece um tratamento diferenciado e essa classificação deve ser baseada em algum critério, por exemplo, endereços IP e/ou porta da aplicação, que identifique os dados que deverão ser atendidos pelas classes de serviços. Estas serão posteriormente referenciadas na marcação dos pacotes através da configuração do valor de DSCP que tem valores definidos na RFC4594[2]. Figura 1. Tabela de valores RFC4594
Abaixo uma tabela de conversão de valores do campo DSCP. Figura 2. Tabela de conversão 3.2. Tipos de QoS Neste capitulo são demonstrados alguns tipos de Qos e suas diferenças. 3.2.1. IntServ Serviços Integrados, usa um conceito baseado em fluxo unido com uma sinalização do protocolo ao longo do caminho que o pacote percorrer. Subdividido em: Serviços Garantidos para fornecer o fim-a-fim e Carga Controlada para carregar e descarregar tráfegos na rede. Vantagens: conceito simples, como exemplo de uso desse serviço temos o CAC (Controle de Admissão de Chamadas) e descreve para o fluxo de QoS, marcando arquitetura chamada. Desvantagens: todos os pontos são implementados pelo RSVP (Protocolo de Reserva de Recursos), é pouco escalável, apresenta periódica atualização de mensagens que são usadas durante o transporte fim-a-fim e todos os elementos da rede obrigam principalmente o estado do câmbio sinalizar as mensagens.
3.2.2. DiffServ Serviços Diferenciados, usa a marcação para classificar e tratar cada pacote independentemente. Vantagens: escalável, performance devido à decisão de QoS ser realizado no valor fixo, flexível, como todos os fabricantes usam IPv4 ou IPv6 o DiffServ torna-se inter-operante e apresenta baixo consumo de CPU para os equipamentos. Desvantagens: sem fim-a-fim de reserva de banda, garantia de serviços pode ser prejudica pela rede, não é capaz de implementar o mecanismo com atuação do RSVP. 3.2.3. BestEffort Serviço de Melhor Esforço. Na realidade, não é definido como um tipo de QoS, pois ele trata todos os pacotes como de igual importância. Portanto, nele o pacote que chegar primeiro é o que sairá primeiro. Um exemplo clássico é o tráfego pela Internet, pois não há como propagar diferenciação de pacote por esse meio. 3.2.4. MPLS Multi-layer Protocol Label Switching, normalmente, é implementado somente pelos switches modulares de camada 3 ou roteadores de alto porte. Ele é o protocolo que engloba todas funcionalidades de QoS, incluindo InterServ+DiffServ e integrando de forma inteligência um pré-roteamento, feito pelo LabelSwitching.
4. Trabalho proposto O objetivo deste trabalho é demonstrar a importância de QoS em uma rede de dados e a aplicação desta técnica em roteadores Cisco utilizando a técnica DiffServ. 4.1. Cenário proposto O cenário que foi proposto tem trafego de diferentes serviços que normalmente concorreriam pela banda na rede, mas com técnicas de Qos aplicadas cada serviço terá uma prioridade desejada. Figura 3. Cenário proposto
5. Testes realizados Neste capitulo são demonstrados todos os cenários e testes que foram realizados. 5.1. Teste de marcação de pacotes Foi utilizado um roteador Cisco 1841 e dois hosts para testes, abaixo um exemplo do cenário. Neste teste nos hosts foram utilizadas as ferramentas Wireshark e jperf onde foram Figura 4. Cenário do teste de marcação de pacotes gerados dois fluxos de dados de uma maquina para a outra onde um tinha como destino a porta 5001 e outro a porta 5002, a marcação de pacotes foi verificada com a ferramenta Wireshark analisando o campo DSCP no cabeçalho IP, como anteriormente havia sido priorizado o trafego na porta 5001 este fluxo teve maior reserva de banda assim diminuindo o fluxo de dados na porta 5002 que não tinha marcação alguma. 5.1.1. Configuração do roteador Primeiramente foi criada uma ACL para associar para identificar trafego que se deseja priorizar. ip access-list extended jperf permit tcp any any eq 5001 Depois foram criadas duas classes uma que associa a política há ACL e a outra que vai associar a marcação dos pacotes. - Associa política há ACL. class-map match-any marca match access-group name jperf - Associa a marcação dos pacotes. class-map match-all identifica match ip dscp 46
Criada a classe foram criadas duas políticas um que vai marcar o trafego previamente classificado e a outra vai aplicar a priorização de trafego escolhida. - Marca o pacote com o valor 46 que corresponde ao valor EF como pode ser observado na tabela 2. policy-map qos_marca class marca set ip dscp 46 - Prioriza o trafego identificado na classe em 70 Mbp/s policy-map qos_prio class identifica priority 70000 (Em Kbp/s) Na interface local do roteador, por onde entra o tráfego a ser priorizado, aplica-se a política de marcação dos pacotes. service-policy input qos_marca Na interface de saída, aplicam-se as políticas de priorização do tráfego. service-policy output qos_prio 5.2. Reduzindo a banda de um host especifico Foi utilizado um roteador Cisco 1841 e dois hosts para o teste, neste cenário não foi priorizado o trafego de nenhum serviço, neste caso foi limitado todo o trafego de um host. Figura 5. Cenário do teste Neste teste foi transferido um arquivo de um host para o outro para se verificar o funcionamento do QoS.
5.2.1. Configuração do roteador Foi criada uma ACL para marcar todo trafego que será limitado, no caso o ip 192.168.0.10 é do host PC0. ip access-list extended teste permit ip host 192.168.0.10 any permit ip any host 192.168.0.10 Criando uma classe para ligar a marcação com a ACL. class-map match-any User match access-group name teste Também foi criada uma política para limitar a banda em 256 Kbp/s. policy-map qos class User police rate 256000 Depois foi aplicada a política na interface. Interface FastEthernet0/0 ip address 192.168.0.1 255.255.255.0 no shutdown service-policy output qos 5.3. Priorizando o trafego de serviços Foi utilizado neste cenário dois roteadores Cisco 1841 onde o Router1 apenas faz a marcação dos pacotes e o Router0 aplica as políticas de QoS, mais três hosts foram utilizados como clientes de serviços disponibilizados pelo servidor Sever0 para verificar o funcionamento do QoS nos roteadores. Figura 6. Cenário do teste com serviços Neste teste foi iniciada uma transferência de arquivos entre Server0 e PC1, enquanto ocorria a transferência foi feita uma ligação (VOIP) entre o PC2 e PC0 que também estabelecia uma conexão por SSH no Servidor.
Inicialmente não havia nenhuma configuração em relação a QoS nos roteadores, então pode se verificar que a ligação VOIP ficou péssima com falhas e cortes na voz e o terminal do SSH no PC2 ficou com a resposta lenta, um simples comando para listar diretórios demorou a retornar resultados. Depois de aplicadas as configurações referentes a QoS nos roteadores pode se observar que a velocidade da transferência de arquivos ficou com o valor bem próximo a velocidade que foi definida na configuração, a ligação VoIP teve uma boa qualidade na conversação e o acesso via SSH não estava mais lento como antes. 5.3.1. Configuração dos roteadores - Router 0 Este roteador ficou encarregado de fazer apenas fazer a marcação dos pacotes. - Router 1 Este roteador aplica apenas as regras estabelecidas em sua configuração dividindo cada porção de banda para seu determinado Serviço. 6. Conclusão Este trabalho que teve como objetivo demonstrar a importância da utilização de QoS em uma rede e a implantação desta técnica em roteadores Cisco, foram feitos testes em laboratório onde o cenário simulado tinha a necessidade de que fosse priorizado o trafego de VOIP e SSH, com a aplicação de QoS foi resolvido os problemas com estes serviços. Conclui-se que com isso foi possível verificar a necessidade da aplicação de QoS e que essa técnica resolve em muitos casos a necessidade da aquisição de mais banda apenas classificando o trafego rede. 7. Referências [1]Considerações acerca do estabelecimento de QoS no RNP2. Disponível em: http://www.rnp.br [2]RFC 4594 (Configuration Guidelines for DiffServ Service Classes). Disponível em: http://tools.ietf.org [3]QoS (Qualidade de Serviço) - parte I. Disponível em: http://blog.ccna.com.br [4]QoS (Qualidade de Serviço) - parte II. Disponível em: http://blog.ccna.com.br [5]Cisco(Comparing the bandwidth and priority Commands of a QoS Service Policy) Disponível em: http://www.cisco.com