SIGN IN YOUR ACCOUNT TO HAVE ACCESS TO DIFFERENT FEATURES

FORGOT YOUR PASSWORD?

FORGOT YOUR DETAILS?

AAH, WAIT, I REMEMBER NOW!
GET SOCIAL
  • BLOG
  • SECURITY ALERTS
  • CONTATO
  • PRIVACIDADE
  • SOBRE
  • LOGIN

Brainwork

  • Certificação
  • Cisco
  • Informação
  • Linux
  • Microsoft
  • Network
  • Security
  • UC
  • Virtualização
  • Wireless
  • Home
  • Cisco
  • QoS–Policing e Shaping (Parte 3)
11/05/2025

QoS–Policing e Shaping (Parte 3)

QoS–Policing e Shaping (Parte 3)

by André Ortega / quarta-feira, 21 dezembro 2016 / Published in Cisco, Configuração, Network

(Ufa)

Para finalizar esta série de posts sobre QoS, vamos falar dos mecanismos usados para controlar a taxa de transmissão em uma interface.

Tanto o Policing quanto o Shaping são configurados através do MQC, e identificam infrações (excessos) da mesma forma. Eles geralmente diferem, no entanto, na resposta as violações. O Policing normalmente descarta o excedente, enquanto que o Shaping atrasa o excesso de tráfego, usando um buffer para armazenar os pacotes e moldar o fluxo quando a taxa de dados é maior do que o esperado.

Para isso o Traffic Shaping monitora o bit rate em que os pacotes são enviados, e se exceder o permitido os pacotes são colocados em uma fila (shaping queue), para posterior transmissão. O Shaping só pode ser configurado na saída da interface.

Importante notar que quando fazemos o Shaping não estamos mudando a velocidade da interface. Ou seja, se configurarmos um shape de 1 Mbps em uma interface de 2 Mbps, a interface continuará trabalhando a 2 Mbps.

O que nos leva a pergunta: Como atingimos a velocidade (Shaping) configurada?

No caso acima o Shaping faria com que a interface transmitisse apenas metade do tempo. Por exemplo, vamos considerar que o roteador dividiu cada segundo em 10 partes (chamadas Tc – Time interval, em milissegundos), ele vai então transmitir nas partes 1, 3, 5, 7 e 9 e nas partes 2, 4, 6, 8 e 10 não haverá transmissão.

O tráfego normal, enviado a cada Tc, é chamado Bc – Committed Burst. E ainda podemos configurar o Shaping para que permita um “bursty” (excedente).

Esta função permite que após um período de transmissão onde a velocidade não atingiu o CIR – Committed Information Rate, mais tráfego (chamado Be – Excess Burst) possa ser enviado por um período de tempo (Tc).

Estes mesmos conceitos aplicam-se ao Traffic Policing, que pode ser configurado tanto na entrada quanto na saída de interfaces e sub-interfaces.

Assim como o Shaping, o Policing monitora o bit rate e então toma ações com base nesta informação. E ai que está a diferença.

Podemos configurar o roteador para transmitir os pacotes que estiverem conformes (dentro da velocidade – que não passou da quantidade de bits – Bc, em um dado Tc), marcar os pacotes que excederem a velocidade mas ainda estão dentro do limite de excesso (Bc + Be em um dado Tc) e descartar os pacotes quando a o tráfego for maior do que Bc + Be em dado Tc (este tipo de política é chamado de Single Rate, 3 Colors).

Outras opções seriam termos apenas duas ações configuradas (transmite e drop), criando assim uma política Single Rate, 2 Color.

Por fim, temos a Policy do tipo Dual Rate, 3 Color, onde além do CIR temos também o PIR – Peak Information Rate.  Neste caso os pacotes que estiverem abaixo do CIR estão conformes, os que estiverem entre o CIR e o PIR são considerados acima do contrato (exceed) e os que estiverem acima do PIR estão violando o contrato.

Configurando Traffic Policing

Voltando a nossa topologia de exemplo, vamos configurar o Policing na entrada da interface E0/0, limitando a velocidade a 2 Mbps.

Topologia QoS - Policing

Nesta interface já tínhamos uma policy-map (MARCA) configurada, responsável por fazer a marcação dos pacotes. Vamos remove-la da interface e aplicá-la em uma outra policy-map (2MBPS), onde definiremos a banda e as ações.

  • Policing: 2 Mbps
  • Conforme-action: Transmite
  • Exceed-action: Marca os pacotes com DSCP CS0 (Default) e transmite
  • Violate-action: Descarta os pacotes
QoS#conf t
QoS(config)#policy-map 2MBPS
QoS(config-pmap)# class class-default
QoS(config-pmap-c)#police cir 2000000 conform-action transmit  exceed-action set-dscp-transmit default violate-action drop
QoS(config-pmap-c-police)#   service-policy MARCA
QoS(config-pmap-c)#exit
QoS(config-pmap)#exit
QoS(config)#interface Ethernet0/0
QoS(config-if)# no service-policy input MARCA
QoS(config-if)# service-policy input 2MBPS
QoS(config-if)#end
QoS#

Vamos executar um ping a partir do roteador Origem, e então ver o resultado da nossa política no roteador QoS.

Origem#ping 2002:CC2E::100 repeat 1000 size 1000
Type escape sequence to abort.
Sending 1000, 1000-byte ICMP Echos to 2002:CC2E::100, timeout is 2 seconds:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!
Success rate is 99 percent (994/1000), round-trip min/avg/max = 1/1/3 ms
Origem#

Note que tivemos algumas perdas no ping, resultado da política (drop). Agora vamos ver as estatísticas no roteador QoS.

QoS#sho policy-map interface et0/0
 Ethernet0/0

  Service-policy input: 2MBPS

    Class-map: class-default (match-any)
      1004 packets, 1014320 bytes
      30 second offered rate 89000 bps, drop rate 0000 bps
      Match: any
      police:
          cir 2000000 bps, bc 62500 bytes, be 62500 bytes
        conformed 632 packets, 637112 bytes; actions:   transmit
        exceeded 366 packets, 371124 bytes; actions:      set-dscp-transmit default
        violated 6 packets, 6084 bytes; actions:                 drop
        conformed 57000 bps, exceeded 31000 bps, violated 0000 bps

Podemos ver que dos 1004 pacotes recebidos na interface E0/0, 632 estavam conformes, 366 excederam o contrato e 6 pacotes foram dropados (justamente a quantidade de “.” no output anterior).

Também podemos verificar outra informação importante: bc 62500 bytes, be 62500 bytes.

É com base nesta configuração que o roteador identifica o que é conform, exceed ou violated. Neste exemplo, se forem enviado até 62500 bytes em um intervalo de tempo, consideramos que o tráfego está conforme. Se enviar até 125000 bytes (Bc + Be) em Tc, consideramos que o tráfego excedeu, e se passar disso o tráfego violou o contrato e por isso será dropado (de acordo com o que foi configurado).

A fórmula para saber Tc é: Tc =Bc/CIR. Usando o exemplo acima temos Tc = (62500 x 8)/2000000. Tc = 0,25. Ou seja, a cada 0,25 segundos podem ser enviados 62.500 bytes (Bc), e eventualmente podem ser enviados 125.000 bytes (Bc + Be) em 0,25 segundos.

Neste caso o roteador fez o cálculo automaticamente, mas podemos fazer esta parametrização manualmente, no comando police, dentro policy-map que define a banda.

Configurando Traffic Shaping
Sabendo que o roteador da operadora está configurado para fazer o Policing (e descartar o tráfego excedente), podemos configurar um Shaping do lado “cliente” para não excedermos a banda (e consequentemente não ter tráfego dropado).

Topologia QoS - Shaping

Vamos configurar um Shaping, também de 2 Mbps no roteador Origem, e aplicar na saída da interface E0/0.

  • Shaping: 2 Mbps
  • Interface: E0/0
  • Sentido: Outbound
Origem#conf t
Origem(config)#policy-map SHAPE
Origem(config-pmap)# class class-default
Origem(config-pmap-c)#  shape average 2000000
Origem(config-pmap-c)#exit
Origem(config-pmap)#exit
Origem(config)#interface et0/0
Origem(config-if)#service-policy output SHAPE
Origem(config-if)#end
Origem#

Vamos repetir o teste (ping) e ver o resultado.

Origem#ping 2002:CC2E::100 repeat 1000 size 1000
Type escape sequence to abort.
Sending 1000, 1000-byte ICMP Echos to 2002:CC2E::100, timeout is 2 seconds:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!
Success rate is 100 percent (1000/1000), round-trip min/avg/max = 1/4/14 ms
Origem#

Note que diferente do que vimos anteriormente, dessa vez não tivemos perda de pacotes. Também podemos usar o comando show policy-map interface et0/0 para ver as estatísticas no roteador Origem.

Origem#sh policy-map interface et0/0
 Ethernet0/0

  Service-policy output: SHAPE

    Class-map: class-default (match-any)
      3055 packets, 3006203 bytes
      30 second offered rate 487000 bps, drop rate 0000 bps
      Match: any
      Queueing
      queue limit 64 packets
      (queue depth/total drops/no-buffer drops) 0/0/0
      (pkts output/bytes output) 3055/3048357
      shape (average) cir 2000000, bc 8000, be 8000
      target shape rate 2000000
Origem#

Bom… por enquanto é isso. Espero que não tenha ficado muito confuso.

Referências:

  • CCIE Routing and Switching v5.0, Volume 2
  • Policing and Shaping Configuration Guide
  • Configuring Traffic Policing

Até a próxima.

Relacionado

Tagged under: Bc, Be, CIR, class-map, PIR, Policing, policy-map, QoS, Shaping, Tc

About André Ortega

Formando em Processamento de Dados e Ciência da Computação. Especialista Cisco (CCNP Enterprise e CCNP Security). Dezenove anos de experiência com redes e segurança.

What you can read next

EIGRP Parte 3: Configuração básica
Módulos 10 Gigabit – Xenpak, X2, XFP e SFP+
Sorteio LAB para CCNA

POSTS RECENTES

  • Campanha de Spam no Brasil Abusa de Ferramentas RMM: Como Proteger Sua Empresa
    Campanha de Spam no Brasil Abusa de Ferramentas RMM: Como Proteger Sua Empresa
    09/05/2025
  • Vulnerabilidade CVE-2025-20188 no Cisco IOS XE Wireless LAN Controller: Como se Proteger
    Vulnerabilidade CVE-2025-20188 no Cisco IOS XE Wireless LAN Controller: Como se Proteger
    09/05/2025
  • LockBit Hackeado: Novo Ataque ao Grupo de Ransomware
    LockBit Hackeado: Novo Ataque ao Grupo de Ransomware
    07/05/2025
  • Protegendo a Tecnologia Operacional: Mitigações Primárias Contra Ameaças Cibernéticas
    Protegendo a Tecnologia Operacional: Mitigações Primárias Contra Ameaças Cibernéticas
    07/05/2025
  • Parâmetro VPN IPSec – Fase 1 e Fase 2
    Parâmetro VPN IPSec – Fase 1 e Fase 2
    06/05/2025

Tags

2024 #Broadcom 2324 #Multicloud 2015 2017 2022 2023 2350 200-301 25 anos 2560C 2960C 2960X 2975 350-050 3560-X 2009 2010 200-125 100-101 #VMwareTransformation 1 ano 1.1.1.100 10 anos 10 Gbps 100 empresas 200-120 100 Gigabit 1905 1921 1925 1941 2.0 200-101 3750-X 1900 2800 2900 2013 2011 1800 2960 3750 2960S

Arquivo

Login

  • Acessar
  • Feed de posts
  • Feed de comentários
  • WordPress.org

Acesse Também

  • Blog LabCisco
  • Café com Redes
  • Cisco IOS hints and tricks
  • Cisco Redes
  • Cisco Support Community
  • Coruja de TI
  • Homelaber Brasil
  • Internetwork Expert´s
  • Netfinders Brasil
  • Rota Default
  • TechRebels
  • The Cisco Learning Network

X

Blog: Verificando MD5 (hash) de um arquivo no Windows e Linux brainwork.com.br/2023/05/11/v… #Checksum #CiscoChampion #Hash

Hahahahah Muito bom twitter.com/TracketPacer/s…

Blog: Trocar ícone (favicon) da página guest no Cisco ISE brainwork.com.br/2023/04/24/t… #Cisco_Champion #Customização #Favicon

Blog: Cisco Champion 2023 brainwork.com.br/2023/04/10/c… #CiscoChampion

Blog: RFC 2324 (HTCPCP), conhece? brainwork.com.br/2023/04/01/r… #2324 #CiscoChampion #HTCPCP

Seguir @brainworkblog
  1. ./fernando em Aprenda Python e ganhe pontos para renovar as certificações CCNA, CCNP e CCIE
  2. André Ortega em Reset Cisco FTD (zerar FTD sem reinstalar)
  3. ALEX LIRA CAMACHO em Reset Cisco FTD (zerar FTD sem reinstalar)
  4. André Ortega em Atualizando Cisco 9300 (Install Mode)
  5. Dominique em Atualizando Cisco 9300 (Install Mode)

Entre em contato:

  • Web: www.brainwork.com.br
  • Facebook: fb.com/brainworkblog
  • Twitter: twitter.com/brainworkblog
  • Youtube: youtube.com/brainworkblog
  • Instagram: instagram.com/brainwork.blog
  • GET SOCIAL
Brainwork

© 2008 - 2022 Brainwork. Todos os direitos reservados.
Customização da página por Brainwork.

TOP