To practice QoS I build a trivial topology (attached image) to simulate a link bottleneck:
- A WAN connection 1.544 mbps between two LAN, both r1 and r2 are performing static NAT for the internal PC1 ,r1(inside local=172.16.1.1, inside global =10.10.10.11), r2(inside local=10.10.10.11, inside global=192.168.42.1), so PC1 appears to both PC2 and IPPBX as 192.168.42.1.
To simulate concurrent traffic in the network, PC1 is performing the following activities:
- Calling PC2 through IP PBX.
- read streaming audio from the media server rtsp traffic.
- http browsing.
- ftp downloading.
As you guess the goal is to guarantee an acceptable voice quality call between PC1 and PC2, so I applied QoS policy on router r2 as follow:
class-map match-all http-set
match protocol http
class-map match-all rtspplayer-set
match protocol rtspplayer
class-map match-all sip-voice-set
match protocol rtp
class-map match-all ftp-set
match protocol ftp
class-map match-all sip-voice-policy
match ip dscp ef
class-map match-all http-policy
match ip dscp af11
class-map match-all rtspplayer-policy
match ip dscp default
class-map match-all ftp-policy
match ip dscp af21
set ip dscp ef
set ip dscp af21
set ip dscp af11
set ip dscp default
service-policy input myset
service-policy output mypolicy
The result is a breaking voice quality (more comprehensible than without any QoS) and r2 e0/0 interface is continuously oscillating between up and down.
Even though I assigned a strict priority queue (LLQ) to the voice traffic (rtp) and allocated a bandwidth of 500kbps (theorically 2 calls need just 168kbps with overhead), the sniffer at PC1 is showing a variable jitter between (0-14ms) and a packet loss up to 43.74%, average audio throughput of 33.28kbps and an average packet delay of 13.72ms.
Any idea about this issue?
Thank you inadvance.