Os Switches HPN possuem 8 filas (0 a 7) para encaminhamento de pacotes em uma interface, para assim, serem trabalhadas em diferentes modelos de QoS, permitindo configurar uma preferência a determinadas filas de saída em caso de congestionamento na interface.
O encaminhamento de pacotes para as filas de saída é baseado na marcação de pacotes,quadros e labels, sendo efetuado na entrada dos dados (no Switch) ou já marcados por qualquer Aplicação ou Telefone IP.
Para confiar na macação já efetuada em outro dispositivo ou aplicação digite na interface qos trust [ auto | dot1p | dscp | exp ]
[SW1-Ethernet1/0/1]qos trust ? auto Trust auto dot1p Trust 802.1p Precedence dscp Trust DSCP exp Trust EXP
Caso pretenda marcar os pacotes de entrada de uma interface baseado por protocolo/aplicação (HTTP, FTP, SAP, etc) siga os seguintes passos:
- selecione o tráfego com uma ACL (match),
- vincule a ACL no Classifier
- crie o Behavior com a marcação
- vincule o Classifier com o Behavior dentro de uma policy
- Atribua a policy a uma ou mais interfaces de entrada do tráfego ou VLANs.
No exemplo abaixo, mostramos a marcação do trafego HTTP com o valor DSCP 24 e o trafego de Voz com o DSCP 46. Depois, aplicamos a policy na interface de entrada do trafego no Switch.
# Criando as ACL para match no tráfego ! acl number 3001 name MATCH_WWW rule permit tcp destination-port eq www rule deny ip ! Selecionando o tráfego HTTP porta 80 como destino ! acl number 3002 name MATCH_VOZ rule permit ip source 10.248.0.0 0.0.255.255 rule deny ip ! Selecionando a rede de Telefonia IP ! # Classificando o tráfego baseado nas ACL’s ! traffic classifier MATCH_HTTP if-match acl 3001 ! Classificação do tráfego da ACL MATCH_WWW ! traffic classifier MATCH_VOIP if-match acl 3002 ! Classificação do tráfego da ACL MATCH_VOZ ! # Criando os Behavior’s para futura marcação ! traffic behavior HTTP_MARK_CS3 remark dscp 24 ! Criando o behavior para a marcação com o dscp 24 (CS3) ! traffic behavior VOIP_MARK_EF remark dscp 46 ! Criando o behavior para a marcação com o dscp 46 (EF) ! # Criando a policy para o vinculo da classificação (classifier) ! com o comportamento (behavior) ! qos policy QOS_MARK_ONLY classifier MATCH_HTTP behavior HTTP_MARK_CS3 classifier MATCH_VOIP behavior VOIP_MARK_EF ! # Vinculando a policy para a Interface de entrada do tráfego interface Ethernet1/0/1 port link-mode bridge qos apply policy QOS_MARK_ONLY inbound !
Local Precedence e Mapping Table
Com os dados já marcados (pelo Switch, ou não) é possível tratar o encaminhamento de pacotes com diversas técnicas de enfileiramento como Priority Queue, Weight Round –Robin, Weight Fair Queue, etc. Há também a possíbilidade de configurar o descarte de pacotes por amostra ou prioridade para descarte (drop) para evitar o congestionamento de uma interface.
A tabela “Mapping Table” nos Switches 3Com/H3C/HPN com o Sistema Operacional Comware 5 permite a visualização de qual fila (do total de 8 filas do Switch) o Switch encaminhará o pacote marcado. A tabela também demonstra qual será o mapeamento em caso de troca de marcação de um valor para outro, por exemplo, Cos para DSCP.
Já a fila local do Switch para onde serão encaminhados os pacotes marcados é chamada de “Local Precedence”.
Para visualizar o mapeamento digite display qos map-table
<4800G>display qos map-table ! Comando digitado em um Switch 3Com 4800G MAP-TABLE NAME: dot1p-lp TYPE: pre-define IMPORT : EXPORT 0 : 2 1 : 0 2 : 1 3 : 3 4 : 4 5 : 5 6 : 6 7 : 7 < saída omitida>
Caso seja necessário a troca da fila de saída para um determinado tráfego marcado é possível trocar via comando qos map table. No exemplo abaixo é vizualizamos que a marcação DSCP 24 está na fila local-precedence 3 do Switch, então faremos na seguida o mapeamento local no Switch para que a marcação citada faça parte da fila 2.
[Switch]display qos map-table | begin dscp-lp
MAP-TABLE NAME: dscp-lp TYPE: pre-define
IMPORT : EXPORT
0 : 0
1 : 0
2 : 0
3 : 0
4 : 0
5 : 0
6 : 0
7 : 0
8 : 1
9 : 1
10 : 1
11 : 1
12 : 1
13 : 1
14 : 1
15 : 1
16 : 2
17 : 2
18 : 2
19 : 2
20 : 2
21 : 2
22 : 2
23 : 2
24 : 3
<saida omitida>
# Configurando a mudança de fila para o valor DSCP 24
#
qos map-table dscp-lp
import 24 export 2
#
Agora você pode me perguntar: “- Ah, mas após a marcação e também a alteração da fila local do Switch, como podemos usar isso na prática?”
Simples, podemos usar qualquer algoritimo de enfileiramento para determinar as prioridades ou garantia de banda. No exemplo abaixo, faremos a garantia de banda de 10Mb para a fila 2 em caso de congestionamento na interface usando o algoritmo WFQ 😉
interface Ethernet1/0/1 description INTERFACE_OUTBOUND_INTERNET qos wfq qos bandwidth queue 2 min 10240 qos bandwidth queue 5 min 4096 #
O tráfego marcado com EF (DSCP 46) já está mapeado por padrão pelo Switch na fila 5 e terá a garantia de 4Mb de banda. O tráfego não marcado ( geralmente mapeado para a fila zero) utilizará o restante da banda, mas não terá a garantia de reserva.
Apesar de ser apenas um exemplo ilustrativo, outros modelos de enfileiramento poderão ser usados como SP (LLQ) para tráfego de Voz, etc.
Obs: em diversos cenários a marcação poderá ser feito no Switch e o enfileiramento no Roteador, tudo dependerá dos seus equipamentos e a maneira como você deseja aplicar a qualidade de serviço na sua rede.
Até logo!