QoS no Cisco ASA 5505 por VLAN / sub-rede

3

Meu ASA 5505 possui três VLANs. Um conectado à Internet chamado outside , um para o nosso escritório chamado office (que se conecta à VPN corporativa) e um para resource-centre acessível publicamente. Cada VLAN está em uma sub-rede separada.

Eu quero garantir que o tráfego de office para a vpn ou internet tenha prioridade sobre o tráfego do resource-centre . Em outras palavras, não quero que o tráfego resource-centre sobrecarregue o tráfego office .

Eu posso criar ACLs para meus dois dentro vlans:

access-list resource-centre-traffic extended permit ip 192.168.0.0 255.255.255.0 any
access-list resource-centre-traffic extended permit ip any 192.168.0.0 255.255.255.0
access-list office-traffic extended permit ip 172.16.0.0 255.255.255.0 any
access-list office-traffic extended permit ip any 172.16.0.0 255.255.255.0 

Eu acho que o que eu preciso fazer é configurar a priorização para o tráfego que corresponde ao tráfego do escritório - isso significaria que o tráfego para / do escritório nunca seria interrompido pelo tráfego para / do centro de recursos certo?

Estou confuso, pois eu também poderia estar configurando o policiamento de tráfego no tráfego do centro de recursos, mas não acho que seja isso que eu quero fazer, já que na verdade não me importo com a largura de banda do centro de recursos. está sendo usado, desde que não atrapalhe o tráfego do escritório.

    
por dunxd 18.10.2011 / 18:18

1 resposta

6

Embora eu seja um grande fã da plataforma ASA, serei o primeiro a admitir que os paradigmas e capacidades de QoS são bastante limitados aos da ASA. A execução padrão do IOS ISR circula em torno do que o ASA é capaz em relação à QoS.

Se você não leu tanto o Guia de configuração de QoS do ASA e o Guia de soluções de QoS do IOS por favor leia-os. Eles são obrigatórios de leitura para entender o que a Cisco (e muitos outros fornecedores) querem dizer com o termo realmente carregado de "qualidade de serviço". Observe que o guia do IOS contém muitos recursos que o ASA não suporta - e fornece exemplos que não funcionarão em um ASA. No entanto, ambos contêm uma riqueza de conceitos, termos e detalhes úteis sobre vários paradigmas e conceitos de QoS.

Com o IOS, seu caso seria bem simples - configure o bandwidth apropriado na interface outside , use a CLI do Modular QoS para criar uma classe e shape de tráfego que corresponda à resource-centre-traffic ACL, fair-queue o resto.

No entanto , com um ASA que não é possível porque o traffic shaping é executado em todo o tráfego em uma interface em um ASA. O tráfego não pode ser moldado em uma classe específica na plataforma ASA.

Com a forma de não ser muito útil no seu caso, você fica com o policiamento e o enfileiramento de prioridades, às vezes chamado de Low Latency Queuing (LLQ).

Você tem as seguintes opções

  • Tráfego policial correspondente à resource-centre-traffic ACL
  • Tráfego da fila prioritária correspondente à office-traffic ACL
  • Faça as duas coisas ao mesmo tempo, isto é, polícia e tráfego de fila de prioridade correspondentes às respectivas ACLs.

Quando se trata de QoS, o princípio KISS ainda se aplica. Quanto mais simples melhor. É por esta razão que aconselho começar de forma mínima e precisa. Comece com o policiamento primeiro.

Policiamento

O seguinte exemplo de policiamento classificará o tráfego de limite (polícia) correspondente à ACL de tráfego do centro de recursos a 1 Mb / s. Saiba que o policiamento derrubará os pacotes que excedem o limite, fazendo com que as pilhas de rede do host retransmitam e diminuam a resolução em torno da taxa policiada. Shaping evita isso introduzindo latência e não caindo, mas o shaper do ASA não pode moldar com base nas classes.

! create class-map

class-map resource-centre-traffic-class
 match access-list resource-centre-traffic

! create policy-map, advise not using a global policy

policy-map outside-policy
 class resource-centre-traffic-class
  police input 1000000   ! rate in bits per second, 1 Mb/s listed
  police output 1000000  ! rate in bits per second, 1 Mb/s listed

! assign policy to interface, in this case outside

service-policy outside-policy interface outside

Fila de prioridade / LLQ

O enfileiramento de prioridade é aplicável apenas na direção de transmissão / saída de uma interface. É importante configurar Limites de Fila e Limite de Toque TX na interface da qual sairá o tráfego na fila de prioridade. Vou assumir uma transmissão de 3 Mb / s e criar uma fila de prioridade de aproximadamente 2 Mb / s com base no tamanho do pacote de 256 bytes. O tamanho a ser usado na fila de prioridades é muito mágico quando se trata de LLQ. Observe que qualquer tráfego especificado que não possa caber na fila de prioridade é suspenso - ou seja, descartado - provavelmente não é o que você deseja para o tráfego do escritório.

É a esse respeito que o enfileiramento de prioridade / LLQ geralmente não é usado em classes de tráfego de alto rendimento, mas usado para baixa latência. No entanto, estou incluindo o exemplo de enfileiramento de prioridade aqui para cobrir o que o ASA pode fazer - não recomendaria o uso de enfileiramento de prioridade para nenhum fluxo / tráfego de alto rendimento aulas.

  • É geralmente aconselhável manter um LLQ o menor possível - sem deixar cair a cauda, já que um LLQ grande pode passar fome pela fila normal da interface se for muito grande.
  • Os pacotes que qualificam para o LLQ, mas não cabem (se estiver cheio) são eliminados da LLQ. Isso é compartilhado em comum com o policiamento - no entanto, um tráfego LLQ sempre "corta a frente da linha", pois o LLQ (uma fila de software como a fila normal da interface) é sempre atendido pelo driver e colocado na interface física. fila de hardware (buffer de anel de hardware) primeiro.

Os números usados para queue-limit e tx-ring-limit foram determinados usando a planilha no guia de configuração e depois massageados.

priority-queue outside
 queue-limit 500   ! based on factors listed earlier, very important number
 tx-ring-limit 20  ! based on factors listed earlier

! create class-map

class-map office-traffic-class
 match access-list office-traffic

! create policy-map, advise not using a global policy

policy-map outside-policy
 class office-traffic-class
  priority

! assign policy to interface, in this case outside

service-policy outside-policy interface outside
  • Ambos os mapas de classe podem ser listados na política externa para o policiamento e o enfileiramento de prioridades ao mesmo tempo.
  • Você ainda pode implementar uma política global e defini-la como global - contanto que não haja ações de QoS em nenhuma das classes listadas na política global - e, em seguida, as outras ações da política global (inspeciona, etc.) permanecerão em vigor na interface externa quando a política externa (com apenas ações de QoS) for colocada na interface externa.

TL; DR

O ASA é realmente limitado na frente de QoS. Tente policiar. Se isso não funcionar, adicione ou tente o LLQ com muito cuidado. Se isso não funcionar, procure por um IOS ISR [G2] com formatação, CBWFQ, etc.

    
por 19.10.2011 / 07:59