Você está na página 1de 47

Application Notes:

Quality of Service - QoS


Application Notes:
Quality of Service - QoS
Documento de Uso Público. Data 25/03/2010, Revisão 1.1

Introdução
Parecer
Métodos de Classificação
Weighted Round Robin (WRR)
Round Robin (RR)
Weighted Fair Queueing (WFQ)
Strict Priority (SP)
Differentiated Services (DiffServ)
Differentiated Services Code Point (DSCP)
IP Precedence
Weighted random early detection (WRED)
CoS-map
Meter
Counter
Filter
Action
Match
QoS & Port-channel
Desenvolvimento
Dm4001 - ETHGX
Weighted Round Robin (WRR)
Weighted Fair Queueing (WFQ)
Round Robin (RR)
Differentiated Services Code Point (DSCP)
WEIGHTED RANDOM EARLY DETECTION (WRED)
Referências

Introdução
Normalmente a Internet trabalha com a filosofia do melhor esforço: cada usuário compartilha largura de
banda com outros e, portanto, a transmissão de seus dados concorre com as transmissões dos demais
usuários. Os dados são encaminhados da melhor forma possível, conforme as rotas e banda disponíveis.
Quando ocorre um congestionamento, os pacotes são descartados sem distinção. Não há garantia de que o
serviço será concluído com sucesso. Entretanto, algumas aplicações necessitam de tais garantias.

DATACOM 1 Documento de Uso Público


Com a utilização de qualidade de serviço (quality of service QoS), é possível oferecer maior garantia e
segurança para aplicações avançadas, uma vez que o tráfego destas aplicações passa a ter prioridade em
relação a outras.

Com uso de QoS os pacotes são marcados para distiguir os tipos de serviços e os switches são
configurados para criar filas distintas para cada aplicação, de acordo com as prioridades das mesmas.
Assim, uma fatia da largura de banda, dentro do canal de comunicação, é reservada para que, no caso de
congestionamento, determinados tipos de fluxos de dados ou aplicações tenham prioridade na entrega.

Associado a cada porta de saída do DmSwitch, existe um conjunto de 8 filas CoS. Para prover um serviço
diferenciado, através destas 8 filas de CoS, existe o escalonamento, que utiliza alguns métodos de
classificação. Cada método é responsável por averiguar o pacote segundo algum critério. O maior aspecto
dos mecanismos arbitrados, é a capacidade de garantir uma banda mínima ou máxima.

Parecer
Este documento tem a finalidade de demonstrar a utilização das técnicas de QoS nos switches Datacom.
Faremos uma breve explicação sobre os modos de escalonamento/enfileiramento e controle de fluxo,
como: WRR, RR, WFQ, SP, DiffServ, WRED, CoS, Meter, Counter e Filtros. Também
demonstraremos os resultados de testes realizados utilizando estas aplicações. Para realização dos testes,
utilizamos um gerador de tráfego de alta confiabilidade e flexibilidade. Com este gerador podemos gerar
tráfego de até 1G por porta, demosntrando os resultados como pacotes perdidos, latência, pacotes enviados
e pacotes recebidos.

Métodos de Classificação
Weighted Round Robin (WRR)
Neste modo, o escalonamento é configurado para associar um peso a cada fila. O escalonamento serve
cada fila despachando os pacotes proporcionalmente ao peso associado as mesmas, o peso corresponde a
quantidade de pacotes que serão servidos a cada ciclo. A desvantagem na utilização do algoritmo WRR, é
que ele não faz uso adequado da banda, pois o mesmo não considera o tamanho do pacote no processo de
escalonamento.O WRR é utilizado como configuração default dos switches.

Feature Dm3000 ETHGX ETHGT


WRR disponível disponível disponível

Comandos no CLI:
Dm4001(config-if-eth-1/2)#queue sched-mode wrr queue-weights
1-15 Weight for queue 0
sp Queue 0 in strict priority
Dm4001(config-if-eth-1/2)#queue sched-mode wrr queue-weights 1 2 4 6 8 10 12 14
<enter> no further known parameters
Dm4001(config-if-eth-1/2)#

DATACOM 2 Documento de Uso Público


Dm4001(config-if-eth-1/2)#show queue config ethernet 1/9
---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 9 0 WRR unlimit ------- 1 NO
1/ 9 1 WRR unlimit ------- 2 NO
1/ 9 2 WRR unlimit ------- 4 NO
1/ 9 3 WRR unlimit ------- 6 NO
1/ 9 4 WRR unlimit ------- 8 NO
1/ 9 5 WRR unlimit ------- 10 NO
1/ 9 6 WRR unlimit ------- 12 NO
1/ 9 7 WRR unlimit ------- 14 NO

Round Robin (RR)


Neste modo, o escalonamento é configurado para suportar um simples "Round Robin" disciplinado atráves
das 8 filas CoS. Somente o mecanismo de medição da banda máxima é utilizado para limitar a banda
utilizada por uma específica fila CoS. O mecanismo de medição da banda mínima, não é utilizada neste
modo.

Feature Dm3000 ETHGX ETHGT


RR disponível disponível disponível

Comandos no CLI:
Dm4001(config-if-eth-1/2)#queue sched-mode rr <?>
<enter> no further known parameters
Dm4001(config-if-eth-1/2)#
Dm4001(config-if-eth-1/2)#show queue config ethernet 1/2
---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 9 0 RR unlimit ------- 1 NO
1/ 9 1 RR unlimit ------- 1 NO
1/ 9 2 RR unlimit ------- 1 NO
1/ 9 3 RR unlimit ------- 1 NO
1/ 9 4 RR unlimit ------- 1 NO
1/ 9 5 RR unlimit ------- 1 NO
1/ 9 6 RR unlimit ------- 1 NO
1/ 9 7 RR unlimit ------- 1 NO

Weighted Fair Queueing (WFQ)


Neste modo, o escalonamento é configurado para assegurar uma banda mínima para cada uma das filas em
condições de congestionamento com priorização. O restante a banda é distribuído numa fração
round-robin. Quando da banda máxima é ajustada, o tráfego da fila é modelado(shapping) conforme a
banda máxima configurada. O WFQ garante justiça no tratamento das filas, assegurando que as filas de
menor prioridade não sejam negligenciadas em condições de congestionamento.

DATACOM 3 Documento de Uso Público


Feature Dm3000 ETHGX ETHGT
WFQ disponível disponível não

Comandos no CLI:
Dm4001(config-if-eth-1/2)#queue sched-mode wfq min-bw <?>
0-10000000 Min bw for queue 0 in kbit/s (64 kbit/s granularity)
sp Queue 0 in strict priority

Dm4001(config-if-eth-1/2)#queue sched-mode wfq min-bw 50048 0 0 190016 400000 sp 10048 100032


Dm4001(config-if-eth-1/2)#
Dm4001(config-if-eth-1/2)#show queue config ethernet 1/2
---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 9 0 WFQ unlimit 50048 -- NO
1/ 9 1 WFQ unlimit 0 -- NO
1/ 9 2 WFQ unlimit 0 -- NO
1/ 9 3 WFQ unlimit 190016 -- NO
1/ 9 4 WFQ unlimit 400000 -- NO
1/ 9 5 WFQ unlimit ------- -- YES
1/ 9 6 WFQ unlimit 10048 -- NO
1/ 9 7 WFQ unlimit 100032 -- NO

Strict Priority (SP)


No SP, filas de maior prioridade são sempre servidas primeiro. Somente quando a fila de maior prioridade
estiver vazia é as próximas filas serão servidas, de acordo com o método de WRR. A desvantagem do
algorítmo SP, é que quando utilizado juntamente com aplicações de alta prioridade, cujo fluxo é contínuo
e ininterrupto, pode negligenciar outras aplicações de menor prioridade.

Feature Dm3000 ETHGX ETHGT


SP disponível disponível disponível

Comandos no CLI:
o SP pode ser utilizado tanto no modo WRR, quanto no WFQ.
Dm4001(config-if-eth-1/2)#queue sched-mode wfq min-bw <?>
0-10000000 Min bw for queue 0 in kbit/s (64 kbit/s granularity)
sp Queue 0 in strict priority
Dm4001(config-if-eth-1/2)#queue sched-mode wrr queue-weights
1-15 Weight for queue 0
sp Queue 0 in strict priority

Differentiated Services (DiffServ)


DiffServ é uma arquitetura de rede que específica escalabilidade e mecânismos para classificar, gerenciar
tráfego e garantir qualidade de serviço nas topologias de redes modernas. O Diffserv utiliza o campo Type
of Service (TOS) do cabeçalho IPv4 para marcar os pacotes com algum grau de importância. Este campo é
composto por oito bits, onde os seis primeiros bits dão origem ao Differentiated Services Code Point

DATACOM 4 Documento de Uso Público


(DSCP), e os outros dois não são utilizados, e estão fora do escopo deste documento. Dentro do campo
TOS, também encontramos o IP precedence, que utiliza os três primeiros bits do DSCP.

O Diffserv opera com o princípio de classificação de tráfego, onde em cada pacote é colocado um número
limitado de classificação de serviços. Cada roteador da rede é configurado para diferenciar o tráfego,
baseado na sua classe. Cada classe pode ser gerenciada de forma diferente, assegurando tratamento
preferencial para o tráfego com alta prioridade na rede.

Differentiated Services Code Point (DSCP)


O DSCP, serve para tomar decisões sobre classificação de pacotes e tráfego por salto, mais conhecido
como per-hop behavior (PHB). Os routers devem selecionar um PHB utilizando os seis bits do campo
DSCP, tratando o valor do campo como uma tabela, que é usada para selecionar um mecanismo particular
para o tratamento dos pacotes. Uma rede pode ter até 64 (2^6) tipos de tráfego diferentes, utilizando
diferentes marcações de DSCP. Isto permite uma grande flexibilidade na definição da classificação do
tráfego. Na prática, os seguintes per-hop behaviors são utilizados:

Feature Dm3000 ETHGX ETHGT


DSCP disponível disponível disponível

DATACOM 5 Documento de Uso Público


Default PHB - Tipicamente o tráfego best-effort.

Qualquer tráfego que não se enquadrar em nenhuma das condições de qualquer classe definida, é
encaminhado para default PHB.

Expedited Forwarding (EF) - Provê o maior nível de qualidade de serviço.

O EF tem característica de baixo delay, poucas perdas e baixo jitter. Tais características, são
adequadas para serviços como voz, vídeo e outros serviços em tempo real. O tráfego EF muitas vezes
é configurado com strict priority sobre todas as outras classes de tráfego. o EF utiliza somente o
DSCP 46.

Assured Forwarding (AF) - Garantia de entrega.

O AF permite ao operador oferecer segurança na entrega dos pacotes, contanto que o tráfego não
exceda as taxas definidas. O tráfego que exceder os limites pré-definidos, terá uma grande
probabilidade de ser dropado, caso ocorra um congestionamento. O comportamento do AF, define
quatro classes distintas. Em cada classe o pacote recebe um drop precedence, que irá indicar a
probabilidade de descarte.

Probabilidade de
Class 1 Class 2 Class 3 Class 4
Descarte
AF11 (DSCP AF21 (DSCP AF31 (DSCP AF41 (DSCP
Baixa
10) 18) 26) 34)
AF12 (DSCP AF22 (DSCP AF32 (DSCP AF42 (DSCP
Média
12) 20) 28) 36)
AF13 (DSCP AF23 (DSCP AF33 (DSCP AF43 (DSCP
Alta
14) 22) 30) 38)

Algumas medidas de prioridade e favorecimento, são definidas entre o tráfego das diferentes classes. Pode
ocorrer um congestionamento entre as classes, então o tráfego que estiver na maior classe, receberá maior
prioridade. Se ocorrer congestionamento entre as classes, os pacotes com a maior probabilidade de
descarte serão descartados primeiro.

Class Selector (CS) - Definido para manter a compatibilidade com o campo IP Precedence.

Como o IP Precedence somente utiliza os três primeiros bits do campo TOS, o IETF definiu o Class
Selector PHB, que utiliza os outros três bits, mantendo a compatibilidade com o IP Precedence.

Por default, as configurações de DSCP vem desabilitadas no DmSwitch. O usuário deverá habilitar, e
configurar da forma que achar melhor. O DSCP deve ser configurado de forma global, porém é habilitado
individualmente por porta.

DATACOM 6 Documento de Uso Público


Configurações no CLI:
Dm4001(config)#show dscp <?>
ethernet Select Ethernet port to enable DSCP mapping
dscp-table Configures the DSCP table

Dm4001(config)#show dscp dscp-table


|--------------------------- DSCP TABLE - Ethernet ----------------------------|
| 0 => 0 prio=0 | 16 => 16 prio=0 | 32 => 32 prio=0 | 48 => 48 prio=0 |
| 1 => 1 prio=0 | 17 => 17 prio=0 | 33 => 33 prio=0 | 49 => 49 prio=0 |
| 2 => 2 prio=0 | 18 => 18 prio=0 | 34 => 34 prio=0 | 50 => 50 prio=0 |
| 3 => 3 prio=0 | 19 => 19 prio=0 | 35 => 35 prio=0 | 51 => 51 prio=0 |
| 4 => 4 prio=0 | 20 => 20 prio=0 | 36 => 36 prio=0 | 52 => 52 prio=0 |
| 5 => 5 prio=0 | 21 => 21 prio=0 | 37 => 37 prio=0 | 53 => 53 prio=0 |
| 6 => 6 prio=0 | 22 => 22 prio=0 | 38 => 38 prio=0 | 54 => 54 prio=0 |
| 7 => 7 prio=0 | 23 => 23 prio=0 | 39 => 39 prio=0 | 55 => 55 prio=0 |
| 8 => 8 prio=0 | 24 => 24 prio=0 | 40 => 40 prio=0 | 56 => 56 prio=0 |
| 9 => 9 prio=0 | 25 => 25 prio=0 | 41 => 41 prio=0 | 57 => 57 prio=0 |
| 10 => 10 prio=0 | 26 => 26 prio=0 | 42 => 42 prio=0 | 58 => 58 prio=0 |
| 11 => 11 prio=0 | 27 => 27 prio=0 | 43 => 43 prio=0 | 59 => 59 prio=0 |
| 12 => 12 prio=0 | 28 => 28 prio=0 | 44 => 44 prio=0 | 60 => 60 prio=0 |
| 13 => 13 prio=0 | 29 => 29 prio=0 | 45 => 45 prio=0 | 61 => 61 prio=0 |
| 14 => 14 prio=0 | 30 => 30 prio=0 | 46 => 46 prio=0 | 62 => 62 prio=0 |
| 15 => 15 prio=0 | 31 => 31 prio=0 | 47 => 47 prio=0 | 63 => 63 prio=0 |
|------------------------------------------------------------------------------|
Dm4001(config)#show dscp ethernet 1/1
DSCP: Ethernet 1/1 is disable

Dm4001(config-if-eth-1/1)#dscp-mapping <?>
<enter> no further known parameters

Dm4001(config)#dscp-table <?>
all-dscp Set configuration to all incoming DSCP
range DSCP range configuration
0-63 DSCP from incoming packet

Dm4001(config)#dscp-table range <?>


0-63 First DSCP in range

Dm4001(config)#dscp-table range 0 8 <?>


same Use incoming DSCP as mapped DSCP
0-63 DSCP to be mapped

Dm4001(config)#dscp-table range 0 8 same <?>


0-7 New 802.1p priority according to incoming DSCP

Dm4001(config)#dscp-table range 0 8 same 0 <?>


<enter> no further known parameters

Observação: Quando o comando "dscp-mapping" for habilitado em uma porta, caso o tráfego não
venha marcado com DSCP (isto significa que DSCP é igual a 0), o switch irá encaminhar o tráfego de
acordo com a configuração dada para o DSCP 0 na dscp-table. Então não fará diferença se o tráfego
vier marcado com alguma prioridade 802.1p, o que irá ser considerado é o DSCP.

DATACOM 7 Documento de Uso Público


IP Precedence
O IP Precedence utiliza os três primeiros bits do campo TOS, para possibilitar oito tipos de classificação
dos pacotes, onde o zero tem a menor prioridade e o sete a maior:

Decimal Descrição binário


0 Routine 000
1 Priority 001
2 Immediate 010
3 Flash 011
4 Flash Override 100
5 Critical 101
6 Internetwork Control 110
7 Network Control 111

Pacote :

No DmSwitch, o IP Precedence deve ser utilizado segundo as configurações de DSCP.

Tabela com valores de DSCP em decimal e binário, e também correlação entre IP Precedence e
DSCP.

DATACOM 8 Documento de Uso Público


DSCP Decimal Binário IP Precedence
Default 0 000000 0
CS1 8 001000 1
AF11 10 001010 -
AF12 12 001100 -
AF13 14 001110 -
CS2 16 010000 2
AF21 18 010010 -
AF22 20 010100 -
AF23 22 010110 -
CS3 24 011000 3
AF31 26 011010 -
AF32 28 011100 -
AF33 30 011110 -
CS4 32 100000 4
AF41 34 100010 -
AF42 36 100100 -
AF43 38 100110 -
CS5 40 101000 5
EF 46 101110 -
CS6 48 110000 6
CS7 56 111000 7

Weighted random early detection (WRED)


O WRED tem a função de evitar congestionamentos no buffer, descartando aleatoriamente pacotes
recebidos baseando-se em alguns fatores. Cada fila deve ter um nível mínimo e um máximo. Quando
abaixo do nível mínimo, a fila aceita todos os pacotes recebidos, e acima a fila rejeita todos os pacotes.
Entre os dois níveis, a decisão de receber os pacotes é baseada em uma probabilidade pré-designada de
descarte, associada com a ocupação de cada fila. O WRED suporta dois níveis de descarte, para um
controle adicional de congestionamentos. Os filtros podem classificar os pacotes com high drop
precedence, baseando-se em uma combinação inclusiva ou exclusiva.

DATACOM 9 Documento de Uso Público


O buffer do Dm3000, tem 32 MB, dividido entre as portas.

Feature Dm3000 ETHGX ETHGT


WRED disponível disponível não

Configurações no CLI:

O WRED deve ser habilitado globalmente, mas as portas podem ser configuradas de forma
individual.

DATACOM 10 Documento de Uso Público


Dm4001(config)#wred <?>
<enter> no further known parameters
Dm4001(config-if-eth-1/2)#wred <?>
averaging-time Queue size averaging time
cng-drop-start-point Queue size where WRED can start the drop on CNG marked packets
cng-slope Slope of drop probability function for CNG marked packets
drop-start-point Queue size where WRED can start the drop
slope Slope of drop probability function

Dm4001#show wred

WRED settings:
Global: WRED enabled

DSP: Drop start point value / Slope angle


CNG: Congestion threshold drop start point value / Slope angle

Queue
Port Item 1 2 3 4 5 6 7 8
--------------- ---- ------ ------ ------ ------ ------ ------ ------ ------
1/ 1 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/ 2 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/ 3 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/ 4 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/ 5 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/ 6 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/ 7 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/ 8 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/ 9 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/10 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/11 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15
1/12 DSP 75/15 75/15 75/15 75/15 75/15 75/15 75/15 75/15
CNG 100/15 100/15 100/15 100/15 100/15 100/15 100/15 100/15

averaging-time:

slope e drop-start-point: O slope, definirá o ângulo de inclinação da reta, ou seja, a probabilidade


com que os pacotes serão descartados. O drop-start-point definirá em que ponto do buffer os pacotes
passarão a ser descartados. Estas configurações são válidas para qualquer tipo de pacote.

cng-slope e cng-drop-start-point: Estes tem a mesma função de slope e drop-start-point,


respectivamente, porém para pacotes específiCoS. Estas configurações são aplicáveis aos chamados
pacotes "vermelhos", marcados internamente pelo switch, com a utilização de filtros.

DATACOM 11 Documento de Uso Público


Exemplo de marcação do pacotes:
Dm4001(config)#meter new rate-limit 5056 burst 512
Dm4001(config)#filter new action permit ingress ethernet 1/2 meter 1 out-action drop-precedence

O filtro fará com que todo tráfego, que exceda o meter 1 (no caso 5Mb), seja marcado com
drop-precedence (pacotes vermelhos).

Conforme utilização do buffer

CoS-map
A configuração de CoS-map irá definir a que fila cada prioridade estará associada. No switch existem oito
filas e oito prioridades, associadas de forma crescente pela configuração default.
Dm4001(config)#queue CoS-map <?>
0-7 Queue ID
Dm4001(config)#queue CoS-map 0
priority Select CoS priorities mapped to this queue
Dm4001(config)#queue CoS-map 0 priority <?>
0-7 1st CoS Priority of 8 possible
Dm4001_103_4(config)#queue CoS-map 0 priority 0 <?>
0-7 2nd CoS Priority of 8 possible
<enter> Finish CoS mapping
Dm4001(config)#queue CoS-map 0 priority 0 1 2 3 4 5 6 7
<enter> no further known parameters
Dm4001(config)#
Dm4001(config-if-eth-1/2)#show queue CoS-map
-------+-----------------+
Queue | 802.1P Priority |
-------+-----------------+
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
-------+-----------------+

DATACOM 12 Documento de Uso Público


Meter
O meter é um mecânismo usado para monitorar e controlar a largura de banda do tráfego entrante, onde
um perfil de tráfego é associado a cada fluxo. Os pacotes são considerados dentro do perfil, se
corresponderem a largura de banda, e fora do perfil caso não correspondam. A granularidade é de 64
(kbit/s), e os meters suportam até mesmo jumbo frames. Um meter só terá utilidade se associado a um
filtro, que irá determinar a ação a ser tomada. É aconselhado que se utilize um meter para cada ação
desejada.

Capacidade :

Hardware meters
Dm3000 64
ETHGT 1024
ETHGX 2048

Features disponível em cada hardware:

Feature Dm3000 ETHGX ETHGT


flow disponível disponível disponível
srtcm color-blind não disponível disponível
srtcm color-aware não não não
trtcm color-blind não não não
trtcm color-blind não não não

Observação: O trtcm estará disponível para o hardware ETHGX, a partir da versão de firmware 8.0.

Flow: Para serem considerados verdes, todos os pacotes devem estar dentro do perfil, senão serão
vermelhos.

Configurações no CLI:
Dm4001(config)#meter new mode flow <?>
burst Specify the maximum burst size
rate-limit Specify the rate-limit
remark Add a remark text
<enter>

Dm4001(config)#meter new mode flow rate-limit <?>


0-10000000 Rate in kbit/s (64 kbit/s granularity)

Dm4001(config)#meter new mode flow rate-limit 120000 burst 256 remark VOIP

DATACOM 13 Documento de Uso Público


srTCM: O Single Rate Three Color Marker marca os pacotes como verde, amarelo ou vermelho. A
marcação é baseada no Committed Information Rate (CIR) e seus dois bursts, Committed Burst Size
(CBS) e Excess Burst Size (EBS). Um pacote é considerado verde senão ultrapassar o CBS, amarelo
se ultrapassar o CBS, mas não o EBS, e vermelho caso ultrapasse o EBS.

Dois meters são necessários para suportar srtcm, cada meter é implementado como um token buckte
counter, Tc e Te. Os token buckets inicialmente estão cheios (no tempo 0), Tc(0)=CBS e Te(0)=EBS.
Então os contadores de Tc e Te são atualizados CIR vezes por segundo, como mostrado:

Se Tc for menor do que CBS, Tc é incrementado de 1, senão


Se Te for menor do que EBS, Te é incrementado de 1, senão
Nem Tc nem Te são incrementados.

Quando um pacote de tamanho B bytes chega ao tempo t, acontece o seguinte:

Se Tc(t)-B >= 0, os pacotes são verdes, e Tc é decrementado por B até alcançar o menor valor, igual a
zero, senão
Se Te(t)-B >= 0, os pacotes são amarelos, e Te é decrementado por B até alcançar o menor valor,
igual a zero, senão
Os pacotes são vermelhos e nem Tc nem Te são decrementados.

Color-blind: (Insensível a cor) Neste modo, se o pacote estiver marcado com alguma cor, a cor será
ignorada. A saída é determinada pelo estado dos 2 meters.

Configurações no CLI:
Dm4001(config)#meter new mode srtcm color-blind <?>
committed Committed Information Rate (CIR) and Burst Size (CBS) <?>
remark Add a remark text
Dm4001(config)#meter new mode srtcm color-blind committed 12000 <?>
32-131072 CBS in kbit (power of 2)
Dm4001(config)#meter new mode srtcm color-blind committed 12000 64 excess <?>
32-131072 EBS in kbit (power of 2)
Dm4001(config)#meter new mode srtcm color-blind committed 120000 64 excess 256 remark VOZ

Color-aware: (Sensível a cor) Neste modo, a saída é determinada pela cor de entrada e pelo estado
dos 2 meters. A cor de entrada é determinada indexando o DSCP, usando o número da porta source e
o valor DSCP no pacote.

Um pacote vermelho continua vermelho.


Um pacote amarelo pode continuar amarelo ou se tornar vermelho.

Mais informações podem ser encontradas na RFC2697.

trTCM: O Two Rate Three Color Marker pode marcar os pacotes como verde, amarelo e vermelho.
A marcação é baseada em quatro parâmetros, Peak Information Rate (PIR), Peak Burst Size (PBS),
Committed Information Rate (CIR) e Committed Burst Size (CBS). Um pacote é considerado verde
senão ultrapassar o CBS, amarelo se ultrapassar senão ultrapassar o CIR e vermelho caso ultrapasse
as condições de pico PIR e PBS. Este modo também comporta duas condições, color-blind e
color-aware, já explicados anteriormente.

DATACOM 14 Documento de Uso Público


Mais informações podem ser encontradas na RFC2698.

A figura abaixo, ilustra esta questão da banda com relação ao tempo.

Se o tráfego estiver fora do perfil, será marcado, ou descartado, de acordo com a configuração do
filtro associado ao meter.

Counter
No Dm4000, para cada tipo de configuração de meter, um counter pode ser atualizado. Os counters são
organizados em pares lógiCoS, upper e lower. Existem oito tipos de combinações que podem ser
configuradas:

DATACOM 15 Documento de Uso Público


upper_counter lower_counter
no no
no yes
yes no
if red if no ret
if green if not green
if green if red
if green if yellow
if red if yellow

Os cinco primeiros são relevantes quando os meters flow e srTCM são utilizados. Os counters seis e sete
somente são relevantes utilizando o modo srTCM. Somente um counter em um par de counters, upper ou
lower, pode ser atualizado por pacote. Se um pacote tiver combinações em paralelo com outros counters,
então multiplos counters podem ser atualizados.

Configurações no CLI:
Dm4001(config)#counter new <?>
mode Counter Upper and Lower mode
remark Add a remark text
type Counter type
<enter>

Dm4001(config)#counter new mode upper <?>


all green none red

Dm4001(config)#counter new mode upper green lower <?>


not-green Lower count not green packets
yellow Lower count yellow packets
red Lower count red packets

Dm4001(config)#counter new mode upper green lower yellow <?>


mode Counter Upper and Lower mode
remark Add a remark text
type Counter type
<enter>

No Dm3000 é diferente, apenas 1 counter é criado. Esse counter então deve ser associado a um filtro.

Configurações no CLI:

DATACOM 16 Documento de Uso Público


Dm3000(config)#counter <?>
new Create a new counter
1-32 Select a counter to edit by ID
Dm3000(config)#counter new <?>
remark Add a remark text
<enter>

Capacidade :

Hardware counters
Dm3000 32
ETHGT 1024
ETHGX 2048

Filter
Action
Meter & Counters:

Tanto meters quanto counters, dependem das ações de filtros para serem utilizados. Sem a utilização de
filtros, ambos são ignorados pelo hardware.

Dm4000:

Existem quatro tipo de ações que podem ser relacionadas:

Profile Independet (PID)


Red Profile (RP)
Yellow Profile (YP)
Green Profile

Quando um meter é associado a um filtro, o respectivo meter é conferido, e a cor do tráfego é usada
para determinar que ação, verde, amerelo ou vermelho deve ser tomada. Se o meter estiver
desabilitado, então todos os frames são considerados verdes. Utilizando as quatro ações citadas,
pode-se então definir se os frames out-of-profile serão dropados, marcados ou irão alterar o valor de
DSCP. O counter também deve ser associado utilizando uma ação.

Configurações no CLI:
Dm4001(config)#filter new action <?>
permit Cause the packet to be switched
deny Discard the packet
counter Associate a counter
drop-precedence Internally set the drop-precedence of the packet
dscp Change Differentiated Services Code Point
int-802.1p Change internal 802.1p priority value

DATACOM 17 Documento de Uso Público


int-802.1p-from-inner-vlan Change internal 802.1p priority from inner VLAN tag
int-802.1p-from-tos Change internal 802.1p priority from IP ToS Precedence
pkt-802.1p Change packet 802.1p priority value
pkt-802.1p-from-inner-vlan Change packet 802.1p priority from inner VLAN tag
pkt-802.1p-from-tos Change packet 802.1p priority from IP ToS Precedence
red-deny Discard red packet
red-drop-precedence Internally change the drop precedence of red packet
red-dscp Change Differentiated Services Code Point of red packet
tos Change IP ToS Precedence value
tos-from-802.1p Change IP ToS Precedence from 802.1p priority
yellow-deny Discard yellow packet
yellow-drop-precedence Internally change the drop precedence of yellow packet
yellow-dscp Change Differentiated Services Code Point of yellow packet

Dm3000:

No Dm3000 é um pouco diferente, não estão disponíveis as mesmas quantidades de features. E no


Dm3000 existe o comando out-action, que irá definir uma ação para o tráfego que exceder o valor
configurado para o meter.
Dm3000_104.10(config)#filter new <?>
action Add an action to the filter
meter Set a meter to be associated to this filter
out-action Action when the packet is out-of-profile (meter)
<enter>

Dm3000(config)#filter new action <?>


permit Cause the packet to be switched
deny Discard the packet
802.1p-from-tos Insert 802.1p priority from IP ToS Precedence
counter Counts packets of a flow
drop-precedence Internally set packet to drop-precedence
dscp Insert Differentiated Services Code Point
tos Insert IP ToS Precedence value
tos-from-802.1p Insert IP ToS Precedence from 802.1p priority

Dm3000(config)#filter new out-action <?>


deny Discard the packet
drop-precedence Internally set packet to drop-precedence
dscp Insert Differentiated Services Code Point
permit Cause the packet to be switched

DSCP & IP Precedence:

Existem algumas ações dos filtros que podem ser tomadas com relação ao DSCP e ao IP Precedence.
Dm4001(config)#filter new action <?>
802.1p-from-tos Change packet and internal 802.1p priority from IP ToS Precedence
dscp Change Differentiated Services Code Point
int-802.1p-from-tos Change internal 802.1p priority from IP ToS Precedence
pkt-802.1p-from-tos Change packet 802.1p priority from IP ToS Precedence
red-dscp Change Differentiated Services Code Point of red packet
tos Change IP ToS Precedence value
tos-from-802.1p Change IP ToS Precedence from 802.1p priority
yellow-dscp Change Differentiated Services Code Point of yellow packet

DATACOM 18 Documento de Uso Público


Match
Escolhida a ação a ser tomada, deve-se decidir baseado em que a ação será tomada. A ação pode se
tomada conforme as portas de entrada, ou utilizando um match. As opções de match serão sempre as
mesmas, idependete da ação escolhida.

Configurações no CLI:
Dm4001(config)#filter new action drop-precedence red ingress ethernet <?>
all All Ethernet interfaces
range Range of Ethernet interfaces
1-1/1-12 Unit number/Ethernet interface number

Dm4001(config)#filter new action drop-precedence red match <?>


802.1p Specify 802.1p priority (outer/single tag)
all Match all packets
destination-ip Specify destination IP address
destination-mac Specify destination MAC address
destination-port Specify destination L4 port
dscp Specify IP DSCP field
ethertype Specify EtherType field
protocol Specify L4 protocol
source-ip Specify source IP address
source-mac Specify source MAC address
source-port Specify source L4 port
tos-bits Specify IP ToS lower bits
tos-precedence Specify IP ToS Precedence
vlan Specify VLAN ID (outer/single tag)

TecnoPUC-NOC(config)#filter new action drop-precedence match


802.1p Specify 802.1p priority (outer/single tag)
802.1p-inner Specify 802.1p priority (inner tag)
all Match all packets
destination-ip Specify destination IP address
destination-mac Specify destination MAC address
destination-port Specify destination L4 port
dscp Specify IP DSCP field
ethertype Specify EtherType field
generic Specify a generic match
protocol Specify L4 protocol
source-ip Specify source IP address
source-mac Specify source MAC address
source-port Specify source L4 port
tos-bits Specify IP ToS lower bits
tos-precedence Specify IP ToS Precedence
vlan Specify VLAN ID (outer/single tag)
vlan-inner Specify VLAN ID (inner tag)

QoS & Port-channel


As features configuradas em um port-channel, são aplicadas individualmente a cada porta membro deste
port-channel. Isto significa que, ao configurar um wfq min-bw de 250000 kbits para o CoS 5, em um
port-channel com 2 portas membro, será garantindo um mínimo de 500000 kbits para esta fila. Porém não

DATACOM 19 Documento de Uso Público


é possível garantir estes 500000 kbits, pois devemos lembrar que no port-channel o balanceamento do
tráfego é feito segundo um hash. Este hash pode ser baseado em mac-address de origem e/ou destino e ip
de origem e/ou destino, por default mac-address de origem e destino. Então caso um tráfego de 300000
kbits esteja passando pelo CoS 5, e por uma casualidade o balanceamento do tráfego seja todo destinado
para uma única porta, haverá o descarte de 50000 kbits. É claro que em uma rede onde existem vários
clientes, ou seja, diversos mac-address e IPs, a chande que isto ocorra é mínima.

Configurações no CLI:
Dm4001(config-if-port-ch-1)#load-balance
dst-ip Destination IP address
dst-mac Destination MAC address
src-dst-ip Source and destination IP addresses
src-dst-mac Source and destination MAC addresses
src-ip Source IP address
src-mac Source MAC address

Desenvolvimento
Dm4001 - ETHGX
Utilizando um Dm4001, com uma placa ETHGX

Setup de teste:

Configuração utilizada para realização do teste:


configure
!
interface vlan range 100 107
set-member tagged ethernet range 1/1 1/2
!
interface ethernet 1/1
no spanning-tree 1
!
interface ethernet 1/2

DATACOM 20 Documento de Uso Público


no spanning-tree 1
!
interface vlan 1
no set-member

Weighted Round Robin (WRR)


Teste realizado utilizando a configuração default do DmSwitch.
Dm4001_103_4#show queue config ethernet 1/8
---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 8 0 WRR unlimit ------- 1 NO
1/ 8 1 WRR unlimit ------- 2 NO
1/ 8 2 WRR unlimit ------- 4 NO
1/ 8 3 WRR unlimit ------- 6 NO
1/ 8 4 WRR unlimit ------- 8 NO
1/ 8 5 WRR unlimit ------- 10 NO
1/ 8 6 WRR unlimit ------- 12 NO
1/ 8 7 WRR unlimit ------- 14 NO

Dm4001_103_4#show queue CoS-map


<enter> no further known parameters

Dm4001_103_4#show queue CoS-map


-------+-----------------+
Queue | 802.1P Priority |
-------+-----------------+
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
-------+-----------------+

Tráfego dentro da capacidade da porta


O 1° teste será realizado enviando 1000(Mb/s) de tráfego, dividido igualmente entre as 8 filas de
CoS.

Tráfego enviado pelas portas (104/1 e 104/2) do gerador:

DATACOM 21 Documento de Uso Público


Resultado:
Pacotes com tamanho de 64 bytes.
Tráfego mostrado em sentido bidirecional.

DATACOM 22 Documento de Uso Público


Hardware Latência (ms)
ETHGX 11,85
ETHGT 4,65
Dm3000 4,89

Pacotes com tamanho de 800 bytes.

DATACOM 23 Documento de Uso Público


Hardware Latência (ms)
ETHGX 13,01
ETHGT 11,02
Dm3000 10,29

Pacotes com tamanho de 1500 bytes.

DATACOM 24 Documento de Uso Público


Hardware Latência (ms)
ETHGX 18,03
ETHGT 16,33
Dm3000 16,02

Pacotes com tamanho de 9000 bytes.

DATACOM 25 Documento de Uso Público


Hardware Latência (ms)
ETHGX 78,37
ETHGT 76,41
Dm3000 76,14

Tráfego excedendo a capacidade da porta


Inserindo uma 3° porta do N2X, iremos gerar um tráfego que irá exceder a capacidade da porta,
demonstrando assim as funcionalidades do QoS.

DATACOM 26 Documento de Uso Público


Configuração:
!
interface vlan range 100 107
set-member tagged ethernet 1/3

Tráfego enviado pela porta adicional (102/1) do gerador:


O tráfego total é sempre dividido igualmente entre as 8 filas.

Resultado:

DATACOM 27 Documento de Uso Público


Pacotes com tamanho de 64 bytes.
Enviando um tráfego de 100(Mb/s).

Enviando um tráfego de 500(Mb/s).

DATACOM 28 Documento de Uso Público


Enviando um tráfego de 1000(Mb/s).

DATACOM 29 Documento de Uso Público


Podemos observar que, conforme aumenta o tráfego desta 3° porta, vai ocorrendo o escalonamento
das filas, de 0 a 7.

Alterando os pesos das filas


Configuração:
configure
!
interface ethernet 1/2
queue sched-mode wrr queue-weights 14 12 10 8 6 4 2 1
!

Dm4001_103_4(config-if-eth-1/2)#show queue config ethernet 1/2


---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 2 0 WRR unlimit ------- 14 NO
1/ 2 1 WRR unlimit ------- 12 NO
1/ 2 2 WRR unlimit ------- 10 NO
1/ 2 3 WRR unlimit ------- 8 NO

DATACOM 30 Documento de Uso Público


1/ 2 4 WRR unlimit ------- 6 NO
1/ 2 5 WRR unlimit ------- 4 NO
1/ 2 6 WRR unlimit ------- 2 NO
1/ 2 7 WRR unlimit ------- 1 NO

Resultado:

WRR - Strict Priority (SP):


Configuração:
configure
!
interface ethernet 1/2
queue sched-mode wrr queue-weights 1 2 4 6 sp sp 12 14
!

Dm4001_103_4(config-if-eth-1/2)#show queue config ethernet 1/2


---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 2 0 WRR unlimit ------- 1 NO
1/ 2 1 WRR unlimit ------- 2 NO
1/ 2 2 WRR unlimit ------- 4 NO
1/ 2 3 WRR unlimit ------- 6 NO
1/ 2 4 WRR unlimit ------- -- YES
1/ 2 5 WRR unlimit ------- -- YES
1/ 2 6 WRR unlimit ------- 12 NO
1/ 2 7 WRR unlimit ------- 14 NO

DATACOM 31 Documento de Uso Público


Enviando o mesmo tráfego de 1000M, do teste anterior.

WRR - Maximum bandwidth (max-bw)


Configuração:
configure
!
interface ethernet 1/2
queue max-bw unlimited unlimited 960 unlimited unlimited 10048 unlimited unlimited

Dm4001_103_4(config-if-eth-1/2)#show queue config ethernet 1/2


---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 2 0 WRR unlimit ------- 1 NO
1/ 2 1 WRR unlimit ------- 2 NO

DATACOM 32 Documento de Uso Público


1/ 2 2 WRR 960 ------- 4 NO
1/ 2 3 WRR unlimit ------- 6 NO
1/ 2 4 WRR unlimit ------- 8 NO
1/ 2 5 WRR 10048 ------- 10 NO
1/ 2 6 WRR unlimit ------- 12 NO
1/ 2 7 WRR unlimit ------- 14 NO

Resultado:

Enviando tráfego de 1000(Mb/s)

Weighted Fair Queueing (WFQ)


Configuração:
configure
!
interface ethernet 1/2
queue sched-mode wfq min-bw 50048 0 0 190016 400000 sp 10048 100032

Dm4001_103_4(config-if-eth-1/2)#show queue config ethernet 2


---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 2 0 WFQ unlimit 50048 -- NO
1/ 2 1 WFQ unlimit 0 -- NO
1/ 2 2 WFQ unlimit 0 -- NO
1/ 2 3 WFQ unlimit 190016 -- NO
1/ 2 4 WFQ unlimit 400000 -- NO
1/ 2 5 WFQ unlimit ------- -- YES
1/ 2 6 WFQ unlimit 10048 -- NO
1/ 2 7 WFQ unlimit 100032 -- NO

Resultado:

Enviando tráfego de 2000(Mb/s), portas 102/1 104/1

DATACOM 33 Documento de Uso Público


CoS Banda (Mb/s)
0 100
1 100
2 100
3 250
4 550
5 730
6 20
7 150

Podemos observar que nem todas as filas tiveram sua banda mínima assegurada. Isto ocorreu porque
a fila 5, com strict priority, não tem uma limitação máxima, o que fez com que ela ocupasse o espaço
de outras filas.

WFQ - Maximum bandwidth (max-bw)


Configuração:
configure
!
interface ethernet 1/2
queue max-bw unlimited 0 0 unlimited unlimited 250048 unlimited unlimited
!

Dm4001_103_4(config-if-eth-1/2)#show queue co
config CoS-map
Dm4001_103_4(config-if-eth-1/2)#show queue config ethernet 1/2
---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue

DATACOM 34 Documento de Uso Público


---------------------------------------------------------
1/ 2 0 WFQ unlimit 50048 -- NO
1/ 2 1 WFQ 0 0 -- NO
1/ 2 2 WFQ 0 0 -- NO
1/ 2 3 WFQ unlimit 190016 -- NO
1/ 2 4 WFQ unlimit 400000 -- NO
1/ 2 5 WFQ 250048 ------- -- YES
1/ 2 6 WFQ unlimit 10048 -- NO
1/ 2 7 WFQ unlimit 100032 -- NO

Resultado:

Enviando o mesmo tráfego do exemplo anterior:

Aumentando o tamanho dos pacotes para 1500, deixando mais visível o tráfego que está
passando.

DATACOM 35 Documento de Uso Público


Round Robin (RR)
Configuração:
configure
!
interface ethernet 1/2
queue sched-mode rr
!

Dm4001_103_4(config-if-eth-1/2)#show queue config ethernet 2


---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 2 0 RR unlimit ------- 1 NO
1/ 2 1 RR unlimit ------- 1 NO
1/ 2 2 RR unlimit ------- 1 NO
1/ 2 3 RR unlimit ------- 1 NO
1/ 2 4 RR unlimit ------- 1 NO
1/ 2 5 RR unlimit ------- 1 NO
1/ 2 6 RR unlimit ------- 1 NO
1/ 2 7 RR unlimit ------- 1 NO

Dm4001_103_4(config-if-eth-1/2)#show queue config ethernet 2


---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 2 0 RR unlimit ------- 1 NO
1/ 2 1 RR unlimit ------- 1 NO
1/ 2 2 RR unlimit ------- 1 NO
1/ 2 3 RR unlimit ------- 1 NO
1/ 2 4 RR unlimit ------- 1 NO
1/ 2 5 RR unlimit ------- 1 NO
1/ 2 6 RR unlimit ------- 1 NO
1/ 2 7 RR unlimit ------- 1 NO

Resultado:

Enviado 1G por porta:

DATACOM 36 Documento de Uso Público


Differentiated Services Code Point (DSCP)
Utilizando a configuração default, WRR, mostraremos o encaminhamento dos pacotes para uma fila
CoS, segundo o DSCP.

Configuração:
configure
!
interface ethernet 1/1
dscp-mapping
!
dscp-table range 8 15 same 1
dscp-table range 16 23 same 2
dscp-table range 24 31 same 3
dscp-table range 32 39 same 4
dscp-table range 40 47 same 5
dscp-table range 48 55 same 6
dscp-table range 56 63 same 7

Dm4001_103_4(config)#show dscp dscp-table


|--------------------------- DSCP TABLE - Ethernet ----------------------------|
| 0 => 0 prio=0 | 16 => 16 prio=2 | 32 => 32 prio=4 | 48 => 48 prio=6 |
| 1 => 1 prio=0 | 17 => 17 prio=2 | 33 => 33 prio=4 | 49 => 49 prio=6 |
| 2 => 2 prio=0 | 18 => 18 prio=2 | 34 => 34 prio=4 | 50 => 50 prio=6 |
| 3 => 3 prio=0 | 19 => 19 prio=2 | 35 => 35 prio=4 | 51 => 51 prio=6 |
| 4 => 4 prio=0 | 20 => 20 prio=2 | 36 => 36 prio=4 | 52 => 52 prio=6 |
| 5 => 5 prio=0 | 21 => 21 prio=2 | 37 => 37 prio=4 | 53 => 53 prio=6 |

DATACOM 37 Documento de Uso Público


| 6 => 6 prio=0 | 22 => 22 prio=2 | 38 => 38 prio=4 | 54 => 54 prio=6 |
| 7 => 7 prio=0 | 23 => 23 prio=2 | 39 => 39 prio=4 | 55 => 55 prio=6 |
| 8 => 8 prio=1 | 24 => 24 prio=3 | 40 => 40 prio=5 | 56 => 56 prio=7 |
| 9 => 9 prio=1 | 25 => 25 prio=3 | 41 => 41 prio=5 | 57 => 57 prio=7 |
| 10 => 10 prio=1 | 26 => 26 prio=3 | 42 => 42 prio=5 | 58 => 58 prio=7 |
| 11 => 11 prio=1 | 27 => 27 prio=3 | 43 => 43 prio=5 | 59 => 59 prio=7 |
| 12 => 12 prio=1 | 28 => 28 prio=3 | 44 => 44 prio=5 | 60 => 60 prio=7 |
| 13 => 13 prio=1 | 29 => 29 prio=3 | 45 => 45 prio=5 | 61 => 61 prio=7 |
| 14 => 14 prio=1 | 30 => 30 prio=3 | 46 => 46 prio=5 | 62 => 62 prio=7 |
| 15 => 15 prio=1 | 31 => 31 prio=3 | 47 => 47 prio=5 | 63 => 63 prio=7 |
|------------------------------------------------------------------------------|

Dm4001_103_4#show queue config ethernet 1/2


---------------------------------------------------------
Port Queue Mode Max-Bw Min-Bw Weight SP-Queue
---------------------------------------------------------
1/ 9 0 WRR unlimit ------- 1 NO
1/ 9 1 WRR unlimit ------- 2 NO
1/ 9 2 WRR unlimit ------- 4 NO
1/ 9 3 WRR unlimit ------- 6 NO
1/ 9 4 WRR unlimit ------- 8 NO
1/ 9 5 WRR unlimit ------- 10 NO
1/ 9 6 WRR unlimit ------- 12 NO
1/ 9 7 WRR unlimit ------- 14 NO

Tráfego enviado pelas portas do gerador:

DATACOM 38 Documento de Uso Público


Resultado:

Enviado 1G por porta:

DATACOM 39 Documento de Uso Público


DATACOM 40 Documento de Uso Público
WEIGHTED RANDOM EARLY DETECTION (WRED)
Para demonstração do WRED, as portas foram configuradas com Round Robin, para observarmos a
latência sofrendo influência apenas do WRED.

WRED - Pacotes verdes


Configuração:
Dm4001(config-if-eth-1/1-to-1/3)#show this
interface ethernet range 1/1 1/2
wred drop-start-point 0 1 2 3 4 5 6 7
wred slope 90 90 90 90 90 90 90 90
queue sched-mode rr

DATACOM 41 Documento de Uso Público


Slope igual a noventa, serve para demonstrar a melhor latência de cada drop-start-point. Como já foi
descrito, quanto menor a ocupação do buffer, menor a latência.

Resultado:

Enviando tráfego de 1G, com pacotes de 64KB.

Pacotes com 800KB.

Pacotes com 1500KB.

DATACOM 42 Documento de Uso Público


Pacotes com 9000KB.

Enviando 2G, com pacotes de 64KB.

DATACOM 43 Documento de Uso Público


Configuração:
wred drop-start-point 0 10 20 50 70 80 90 100

Enviando tráfego de 1G, com pacotes de 64KB.

Configuração:

DATACOM 44 Documento de Uso Público


Dm4001(config-if-eth-1/1-to-1/3)#show this
interface ethernet range 1/1 1/3
wred drop-start-point 10 10 10 10 10 10 10 10
wred slope 10 20 30 40 50 60 70 80
queue sched-mode rr

Resultado:

WRED - Pacotes vermelhos


Configurações:
interface ethernet range 1/1 1/3
wred cng-drop-start-point 0 10 20 50 70 80 90 100
wred cng-slope 90 90 90 90 90 90 90 90
queue sched-mode rr

filter 1 action permit action red-drop-precedence red match vlan 100 ingress ethernet range 1/1 1/12 meter 1 priority 8
filter 2 action permit action red-drop-precedence red match vlan 101 ingress ethernet range 1/1 1/12 meter 2 priority 8
filter 3 action permit action red-drop-precedence red match vlan 102 ingress ethernet range 1/1 1/12 meter 3 priority 8
filter 4 action permit action red-drop-precedence red match vlan 103 ingress ethernet range 1/1 1/12 meter 4 priority 8
filter 5 action permit action red-drop-precedence red match vlan 104 ingress ethernet range 1/1 1/12 meter 5 priority 8
filter 6 action permit action red-drop-precedence red match vlan 105 ingress ethernet range 1/1 1/12 meter 6 priority 8
filter 7 action permit action red-drop-precedence red match vlan 106 ingress ethernet range 1/1 1/12 meter 7 priority 8
filter 8 action permit action red-drop-precedence red match vlan 107 ingress ethernet range 1/1 1/12 meter 8 priority 8
!
meter 1 mode flow rate-limit 94016 burst 32
meter 2 mode flow rate-limit 94016 burst 32
meter 3 mode flow rate-limit 94016 burst 32
meter 4 mode flow rate-limit 94016 burst 32
meter 5 mode flow rate-limit 94016 burst 32
meter 6 mode flow rate-limit 94016 burst 32
meter 7 mode flow rate-limit 94016 burst 32
meter 8 mode flow rate-limit 94016 burst 32

Resultado:

DATACOM 45 Documento de Uso Público


Referências
http://en.wikipedia.org/wiki/Differentiated_services
[RFC2474] Definition of the Differentiated Services Field
[RFC4594] Configuration Guidelines for DiffServ Service Classes
[RFC4115] A Differentiated Service Two-Rate, Three-Color Marker with Efficient Handling of
in-Profile Traffic
[RFC2697] A Single Rate Three Color Marker
[RFC2698] A Two Rate Three Color Marker
**[]
**[]

DATACOM 46 Documento de Uso Público

Você também pode gostar