Este post traz uma configuração fácil de ser realizada em switches Cisco, para limitação de banda, em tráfego um switch Cisco Catalyst 3750, através de Policy-Maps.
Através de parâmetros configurados na Modular QoS CLI, selecionamos um determinado tráfego, e lhe aplicamos ações, baseadas nas políticas configuradas para ele. A limitação de banda pode ocorrer de duas formas: shaping ou policing.
Shaping vs. Policing
Antes de qualquer coisa, é importante sabermos a diferença entre estes dois métodos.
– Traffic Shapping retém pacotes que excedem a banda configurada para um buffer (queueing) e gradativamente vai os transmitindo, sem que o mesmo não sejam dropados; porém este buffer demanda de memória, e é sempre aplicada em sentido outbound.
– Traffic Policing propaga bursts (limites) quando o fluxo de pacotes atinge a banda máxima, no qual ações como dropar ou remarcar os pacotes é efetuada. Não há buffer, e a aplicação da política é em sentido inbound.
Mais informações aqui*. Agora, mão na massa!!!
* É necessário CCO para visualizar este documento.
Configurando Traffic Policing
Apenas 4 etapas são necessárias para alcançarmos nosso objetivo:
1. Habilitar QoS
Como esta configuração trata-se de parâmetros QoS, é necessário habilitar este recurso globalmente no switch:
mls qos
2. Classificar o tráfego
Definimos qual tráfego passará pelas políticas de banda. Primeiro criamos uma ACL:
access-list 111 permit ip any any
Depois definimos um class-map, ao qual a ACL será vinculada.
class-map match-all 8MB
match access-group 111
3. Criar o policy-map
O policy-map irá aplicar as políticas ao tráfego classificado anteriormente no class-map. O policy-map será nomeado Policy8MB.
policy-map Policy8MB
Agora entrando no modo de configuração de policy-map, iremos selecionar um class-map, e aplicaremos as respectivas ações. Neste caso, estaremos limitando a banda a 8Mbps o tráfego definido pelo class-map 8MB.
class 8MB
police 8000000 8192 exceed-action drop
Para entendermos melhor, os comandos acima, o parâmetro 8000000 significa a largura de banda medido em bits, e o ‘exceeded-action drop’, significa que os pacotes que ultrapassarem a banda de 8Mbps, serão simplesmente dropados.
4. Ativar a política
Por final, ativamos a política na interface, lembrando que é sempre ao tráfego inbound.
interface FastEthernet1/0/23
service-policy input Policy8MB
Está feito. Agora vou apresentar alguns testes que fiz, com as ferramentas Iperf – gerador de tráfego, NetMeter – medidor de banda de adaptador de rede, e o próprio MS-DOS.
Neste lab, temos duas máquinas windows conectadas a um switch 3750, em portas FastEthernet, somente com as configurações acima aplicadas. O host 10.1.0.11 está conectado à interface Fa1/0/23, e o 10.1.0.12, à Fa1/0/24.
Observe na primeira imagem, o output feito no Iperf do lado client.
Talvez para aqueles que não estão familiarizados com essa ferramenta, fique um pouco confusa a interpretação dos logs acima… mas eu vou tentar deixar o mais claro possível!
No primeiro comando, o Iperf client (10.1.0.11) está configurado para gerar 200Mbps de tráfego para o servidor 10.1.0.12. Como pode-se ver no output acima, a ferramenta consegue gerar 68,1 Mbps, sendo a taxa de transmissão REAL entre os dois foi de 64,4 Mbps.
Após isto, foram aplicados os comandos no switch, e o mesmo teste foi feito entre os dois. O client conseguiu novamente produzir 68,1Mbps, porém, a taxa real entre os dois foi de 6,7Mbps, segundo o reporte do servidor.
Com tráfego normal, o servidor reportou banda de 64Mbps, e após a regra, 6,7Mpbs, conforme o log acima.
Agora, vejamos o gráfico da placa de rede do client, gerado pelo NetMeter.
Bom é isso… espero ter ajudado. Qualquer dúvida mandem comentários!! Abraços e até mais…
André… se quiser te mando novamente as documentações do Cacti (Weathermap) e Radius Server… é só falar..
Outra coisa… uma outra forma de controlar velocidade da porta, por exemplo… setando por ex. em 16Mb, seria com o comando: srr-queue bandwidth limit 16 (se não me engano, essa conf só funciona para tráfego de saida) e caso queira limitar abaixo de 10Mb, basta setar a porta para speed 10 e aplicar o comando com a porcentagem desejada.
Fala Daniel!!
Cara obrigado pelo comentário… vou estar fazendo um lab por aqui sobre isso q vc falou… valeu pela dica!! Abração…
Valeu Daniel. Felizmente conseguimos restaurar todos os posts.
Rafael,
Seu exemplo de access-list (access-list 111 permit ip any any) faz com que seja dado match nos pacotes de ida e volta, limitando tanto upload quanto download em 1Mb (como se o link fosse half duplex). Teste download e upload simultaneamente e veja que o tráfego não passará de 500Kb em cada sentido..
Para contornar isso é necessário fazer a access-list no sentido input como por exemplo access-list 111 permit ip any [rede][mascara]. Ou seja, especificando a rede do host local.
Estou postando aqui pois estava com esse problema e apanhei horrores até descobrir isso. (meu switch é 6500, mas acredito que o conceito seja o mesmo).
Abraços!
Bel, a access-list está amarrada a política (através do class-map) que por sua vez está aplicada no sentido input da interface.
Assim apenas o tráfego “entrante” vai dar match, é o que eu acho.
Vamos ver o que diz o Leão e se possível testar.
Senhores,
Tem como fazer essas configurações em um switch 3850X?
Tentei executar mas percebi que o mesmo não possui MLS QOS.
Tem, mas realmente é bem diferente.
Veja este link com alguns exemplos:
http://www.cisco.com/c/en/us/support/docs/switches/catalyst-3850-series-switches/118629-technote-qos-00.html