Scenario:
You are the VoIP specialist at the ISP you are working for. To ensure all VoIP traffic has enough bandwidth and low delay you have to implement some Quality of Service settings. It’s time to classify and mark some traffic!
Goal:
- All IP addresses have been preconfigured for you.
- Configure an inbound policy on router Line with the following configuration:
- ICMP traffic from router Frank should get a DSCP value of AF33.
- RTP traffic from router Frank should get a DSCP value of EF.
- HTTP traffic from router Frank should get a IP precedence value of 7 (priority).
- All other traffic should get a DSCP value of AF43.
IOS:
c3640-jk9s-mz.124-16.bin
Topology:
You need to register to download the GNS3 Topology File. (Registration is Free!)
Configuration Files
You need to register to download the GNS3 topology file. (Registration is free!)Once you are logged in you will find the configuration files right here.
Do you want your CCNA or CCNP Certificate?
The How to Master series helps you to understand complex topics like spanning-tree, VLANs, trunks, OSPF, EIGRP, BGP and more.
Written by René Molenaar - CCIE #41726
The easy way to do the final part of this lab and marking all other traffic would be configure the class-default, which catches everything not matched specified by other class-maps in a policy-map
http://www.cisco.com/en/US/docs/ios/12_0t/12_0t5/feature/guide/cbwfq.html#wp25297
Thanks for the direction on the final part Steve.
I originally got it to work as well with an ACL:
Extended IP access list OTHER
10 permit tcp any any (9 matches)
20 permit udp any any
, but this appears to be far too general and could end up causing some false readings.
hello!!
which is the version of gns3?
practice would not open in my version
Please can someone verify the config below if correct..?
class-map match-all RTPfromFrank
match access-group 1
match protocol rtp
class-map match-all ICMPfromFrank
match protocol icmp
match access-group 1
class-map match-all HTTPfromFrank
match access-group 1
match protocol http
!
!
policy-map MQCClassificationAndMarking
class ICMPfromFrank
set dscp af33
class RTPfromFrank
set dscp ef
class HTTPfromFrank
set ip precedence 7
class class-default
set dscp af43
!
access-list 1 permit 192.168.12.1
!
Thanks
instead of access-list u cud use input-int as below
class-map match-all ICMP
match protocol icmp
match input-interface FastEthernet0/0
Hi Rene,
do you have Final Configuration for this lab. I want to compare it with my configuration.
Thanks
I really enjoyed this lab and it was a refresher for me for quite a few things I had let slip since my days studying for CCNP.
Can anyone please check this as well:
interface Serial0/0
ip address 192.168.23.3 255.255.255.0
serial restart-delay 0
service-policy input ALL
end
Policy Map ALL
Class ICMP
set dscp af33
Class RTP
set dscp ef
Class HTTP
set precedence 7
Class TELNET
set precedence 1
Class class-default
set dscp af43
Extended IP access list 100
10 permit icmp 192.168.12.0 0.0.0.255 any (435 matches)
Extended IP access list 101
10 permit tcp 192.168.12.0 0.0.0.255 eq www any
Extended IP access list 102
10 permit udp 192.168.12.0 0.0.0.255 range 16384 32767 any
Extended IP access list 104
10 permit tcp 192.168.12.0 0.0.0.255 any eq telnet (33 matches)
Class Map match-all TELNET (id 4)
Match protocol telnet
Match access-group 104
Class Map match-all ICMP (id 1)
Match access-group 100
Match protocol icmp
Class Map match-all HTTP (id 3)
Match access-group 101
Match protocol http
Class Map match-any class-default (id 0)
Match any
Class Map match-all RTP (id 2)
Match access-group 102
Match protocol rtp
I had to add priority with % to the HTTP class. When I don’t put this, I can’t set priority to this class. Also tried RTP with access-list and ip nbar, but some how generating traffic from the downlink router is not matching to the ACL or ip nbar. Rest of the traffic matches fine.
R1#show policy-map
Policy Map SHAPE
Class HTTP
set precedence 7
Strict Priority
Bandwidth 10 (%)
Class ICMP
set dscp af33
Class RTP
set dscp ef
Class class-default
set dscp af43
R1#show class-map
Class Map match-all ICMP (id 1)
Match access-group name ICMP
Class Map match-all HTTP (id 3)
Match access-group name HTTP
Class Map match-any class-default (id 0)
Match any
Class Map match-all RTP (id 2)
Match protocol rtp
R1#show policy-map int f0/0
FastEthernet0/0
Service-policy output: SHAPE
Class-map: HTTP (match-all)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: access-group name HTTP
QoS Set
precedence 7
Packets marked 0
Queueing
Strict Priority
Output Queue: Conversation 264
Bandwidth 10 (%)
Bandwidth 1000 (kbps) Burst 25000 (Bytes)
(pkts matched/bytes matched) 0/0
(total drops/bytes drops) 0/0
Class-map: ICMP (match-all)
15 packets, 1710 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: access-group name ICMP
QoS Set
dscp af33
Packets marked 15
Class-map: RTP (match-all)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: protocol rtp
QoS Set
dscp ef
Packets marked 0
Class-map: class-default (match-any)
274 packets, 22748 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: any
QoS Set
dscp af43
Packets marked 171