Updated May 2015
For a more general article on QoS, see our article here. This article seeks to provide some more specific examples of QoS implemented on Cisco routers.
By default, Polycom implements QoS by marking the DSCP value as EF in the IP header in packets from their phone. In this example, we wanted to preference VoIP packets to have priority over the other traffic leaving the LAN for the Internet. This was particularly important in this case because the Internet connection was ADSL, which had 3 MB of downstream, but only 1 MB of upstream bandwidth.
Step 1: Set up a class map to identify the packets that should be matched. This could be done in other ways, but we chose to match the DSCP value in the IP header on packets sent from the phones. On this network, presuming these packets to come strictly from the phones was a safe assumption.
class-map match-all VOICE
description "Prioritize VoIP packets"
match ip dscp ef
Step 2: Set up a policy map to do something with the packets identified in the class map.
set precedence 1
Step 3: Apply it to the outbound interface in the outbound direction.
ip address 18.104.22.168 255.255.255.0
ip nat outside
service-policy output VOICE-OUT
Step 4: Verify that the match is working:
Router# show policy-map interface FastEthernet0
Service-policy output: VOICE-OUT
Class-map: VOICE (match-all)
29448101 packets, 6325546691 bytes
5 minute offered rate 77000 bps, drop rate 0 bps
Match: ip dscp ef (46)
Packets marked 29448101
Class-map: class-default (match-any)
79873679 packets, 9623152335 bytes
5 minute offered rate 17000 bps, drop rate 0 bps
Optimize your network for business VoIP with the right router