Cisco ASA QoS til VoIP trafik

En af de nye tilføjelser i Cisco ASA 7.x og 8.x software, er evnen til at konfigurere Quality of Service til VoIP trafik, noget, der blev fundet kun på IOS routere i fortiden. Den ASA støtter nu Low Latency Queuing (LLQ prioritet kø), som lader dig prioritere visse trafikstrømme (såsom Latency-følsomme trafik lignende stemme og video) foran anden trafik.

I sin enkleste form, bare du aktiverer prioriteret kø på et interface, og vælg med et ACL og en policy map, som trafikken skal gå gennem prioritetskøen af interface. Al anden trafik skal passere gennem “best effort” kø. For eksempel hvis vi har FTP datatrafik (som normalt er en lang pakke) sammen med en VoIP-pakke, vil VoIP blive serveret først af interfacet (prioritet kø), mens FTP pakke vil blive serveret i en best effort basis.

I eksempel nedenfor præsenterer jeg et scenario, hvor vi har to (eller flere) steder som kommunikerer gennem en Lan-to-Lan IPSEC VPN via internettet. Mellem de steder, vi kan have både data og VoIP trafik kommunikation. Selv om vi ikke kan håndhæve ægte QoS via internettet, i det mindste vi kan sikre taletrafik prioritering på firewall interface.

Fra vores diagram vi antager, at vi allerede har konfigureret IPSEC VPN som fungerer korrekt (dvs. både subnets 192.168.1.0/24 og 192.168.2.0/24 kan kommunikere via tunnelen). Eksemplet konfiguration nedenfor er for ASA-1 firewall og følgelig bør anvendes til ASA-2 for bedre QoS performance.

 

 

 

! Aktiver en priority queue på ydersiden af interface

ASA-1(config)# priority-queue outside
ASA-1(config-priority-queue)# exit

! Vælg VoIP trafik for prioritering

ASA-1(config)#access-list VoIP-Traffic-OUT extended permit tcp 192.168.1.0 255.255.255.0 192.168.2.0 255.255.255.0 eq h323
ASA-1(config)#access-list VoIP-Traffic-OUT extended permit tcp 192.168.1.0 255.255.255.0 192.168.2.0 255.255.255.0 eq sip
ASA-1(config)#access-list VoIP-Traffic-OUT extended permit tcp 192.168.1.0 255.255.255.0 192.168.2.0 255.255.255.0 eq 2000

ASA-1(config)#access-list VoIP-Traffic-IN extended permit tcp 192.168.2.0 255.255.255.0 192.168.1.0 255.255.255.0 eq h323
ASA-1(config)#access-list VoIP-Traffic-IN extended permit tcp 192.168.2.0 255.255.255.0 192.168.1.0 255.255.255.0 eq sip
ASA-1(config)#access-list VoIP-Traffic-IN extended permit tcp 192.168.2.0 255.255.255.0 192.168.1.0 255.255.255.0 eq 2000

! Match ACL og trafik med Expedited Forwarding (EF)

ASA-1(config)# class-map Voice-OUT
ASA-1(config-cmap)# match dscp ef
ASA-1(config-cmap)# match access-list VoIP-Traffic-OUT
ASA-1(config-cmap)# exit

ASA-1(config)#class-map Voice-IN
ASA-1(config-cmap)# match dscp ef
ASA-1(config-cmap)# match access-list VoIP-Traffic-IN
ASA-1(config-cmap)# exit

! Konfigurer den policy, som vil blive anvendt til interface

ASA-1(config)# policy-map VoicePolicy
ASA-1(config-pmap)# class Voice-OUT
ASA-1(config-pmap-c)# priority
ASA-1(config-pmap-c)# exit

ASA-1(config-pmap)# class Voice-IN
ASA-1(config-pmap-c)# priority
ASA-1(config-pmap-c)# exit
ASA-1(config-pmap)# exit

! Implemnterer policy til ydersiden af interface

ASA-1(config)# service-policy VoicePolicy interface outside

OBS: En lille rettelse her. Prioritetskøen vil kun gælde for et interface i “udgående” retning, så Voice-IN class ovenfor, vil ikke have nogen virkning i den policy map men det er min måde at laver konfiguration hvor jeg sikkrer mig at jeg har lavet tingene fra bund og sparer tid bagefter i andre konfigurations deller. Også, som jeg sagde ovenfor, viste konfiguration i dette indlæg gælder for ASA-1. Den gensidige konfiguration bør også anvendes på ASA-2 med den rette ACL som skal matche trafik fra 192.168.2.0 til 192.168.1.0 netværk.