!
! Mark packets on ingress of lan interfaces
!
ip access-list extended 151
remark === QoS Bulk Traffic
ip access-list extended 161
remart === Qos Mission Critical Traffic
class-map match-any MARK-BULK
match protocol ftp
match access-group 151
class-map match-any MARK-CRITICAL
match protocol citrix
match access-group 161
match protocol snmp
match protocol telnet
match protocol ssh
match protocol tftp
match protocol dhcp
match protocol dns
match protocol exchange
class-map match-any MARK-SCAVENGER
match protocol napster
match protocol gnutella
match protocol fasttrack
match protocol winmx
match protocol kazaa2
match protocol edonkey
!
policy-map LAN-IN
class MARK-BULK
set ip dscp af11
class MARK-CRITICAL
set ip dscp af21
class MARK-SCAVENGER
set ip dscp cs1
interface <lan interface(s)>
service-policy out BACKBONE-OUT
service-policy in LAN-IN
!
! Remapping values for use on the IP backbone
!
class-map match-any DSCP-CS3
match ip dscp cs3 af31
class-map match-all DSCP-CS5
match ip dscp cs5
!
policy-map BACKBONE-REMAP-OUT
class DSCP-CS3
set ip dscp cs5
policy-map BACKBONE-OUT
class class-default
fair-queue
random-detect dscp-based
service-policy BACKBONE-REMAP-OUT
!
policy-map BACKBONE-IN
class DSCP-CS5
set ip dscp cs3
!
interface <backbone interface>
service-policy out BACKBONE-OUT
service-policy in BACKBONE-IN
!
! Point to Point Interfaces
!
class-map match-any BULK-DATA
match ip dscp af11 af12 af13
class-map match-any CRITICAL-DATA
match ip dscp af31 af32 af33 cs6
class-map match-any SCAVENGER
match ip dscp cs1
class-map match-any VIDEO
match ip dscp af41
class-map match-any VOICE
match ip dscp ef cs3
!
policy-map P2P-OUT
class VOICE
priority percent 25
class VIDEO
priority percent 29
class CRITICAL-DATA
bandwidth percent 20
random-detect dscp-based
class BULK-DATA
bandwidth percent 10
random-detect dscp-based
class SCAVENGER
bandwidth 1
random-detect dscp-based
class class-default
bandwidth percent 15
random-detect dscp-based
interface <wan interface>
max-reserved-bandwidth 100
service-policy out P2P-OUT