IntroductionThis document describes how to set the Differentiated Services Code Point (DSCP) values in Quality of Service (QoS) configurations on a Cisco router. Show
PrerequisitesRequirementsYou must be familiar with the fields in the IP header and Cisco IOS®CLI. Components UsedThis document is not restricted to specific software and hardware versions. The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command. ConventionsFor more information on document conventions, refer to Cisco Technical Tips Conventions. Background InformationDifferentiated Services (DiffServ) is a new model in which traffic is treated by intermediate systems with relative priorities based on the type of services (ToS) field. Defined inRFC 2474and RFC 2475, the DiffServ standard supersedes the original specification to define packet priority described in RFC 791. DiffServ increases the number of definable priority levels when it reallocates bits of an IP packet to mark it as a priority. The DiffServ architecture defines the DiffServ (DS) field, which supersedes the ToS field in IPv4 to make per-hop behavior (PHB) decisions about packet classification and traffic The RFCs do not dictate the way to implement PHBs; this is the responsibility of the vendor. Cisco implements Differentiated Services Code PointThe six most significant bits of the DiffServ field is called as the DSCP. The last two Currently Unused (CU) bits in the DiffServ field were not defined within the DiffServ field architecture; these are now used as Explicit Congestion Notification (ECN) bits. Routers at the edge of the network classify packets and mark them with either the IP Precedence or DSCP value in a Diffserv network. Other network devices in the core that support Diffserv use the DSCP value in the IP header to select a PHB behavior for the packet and provide the appropriate QoS treatment. The diagrams in this section show a comparison between the ToS byte defined by RFC 791 and the DiffServ field. ToS Byte
DiffServ Field
The standardized DiffServ field of the packet is marked with a value so that the packet receives a particular forwarding treatment or PHB, at each network node. The default DSCP is 000 000. Class selector DSCPs are values that are backward compatible with IP precedence. When you convert between IP precedence and DSCP, match the three most significant bits. In other words: IP Prec 5 (101) maps to IP DSCP 101 000 ToS Byte
DiffServ Field
The DiffServ standard utilizes the same precedence bits (the most significant bits—DS5, DS4 and DS3) for priority setting, but further clarifies the definitions, which provides finer granularity through the use of the next three bits in the DSCP. DiffServ reorganizes and renames the precedence levels (still defined by the three most significant bits of the DSCP) into these categories (the levels are explained in greater detail in this document):
With this system, a device prioritizes traffic by class first. Then it differentiates and prioritizes same-class traffic, and takes the drop probability into account. The DiffServ standard does not specify a precise definition of "low," "medium," and "high" drop probability. Not all devices recognize the DiffServ (DS2 and DS1) settings; and even when these settings are recognized, they do not necessarily trigger the same PHB forwarding action at each network node. Each node implements its own response based on how it is configured. Assured Forwarding RFC 2597 defines the assured Classes 1 to 4 are referred to as AF classes. This table illustrates the DSCP code that specifies the AF class with the probability. Bits DS5, DS4 and DS3 define the class; bits DS2 and DS1 specify the drop probability; bit DS0 is always zero.
Expedited ForwardingRFC 2598 defines the Expedited Forwarding (EF) PHB: "The EF PHB can be used to build a low loss, low latency, low jitter, assured bandwidth, end-to-end service through DS (Diffserv) domains. Such a service appears to the endpoints like a point-to-point connection or a "virtual leased line." This service has also been described as Premium service. Codepoint 101110 is recommended for the EF PHB, which corresponds to a DSCP value of 46. Again, vendor-specific mechanisms need to be configured to implement these PHBs. Refer to RFC 2598 for more information about EF PHB. Use the DSCP FieldThere are three ways you can use the DSCP field:
Cisco IOS software considers the precedence bits of the ToS field if there is traffic that is queued in Weighted Fair Queuing (WFQ), Weighted Random Early Detection (WRED) or Weighted Round Robin (WRR). The precedence bits are not considered when Policy Routing, Priority Queuing (PQ), Custom Queuing (CQ), or Class Based Weighted Fair Queuing (CBWFQ) are configured. For more information, see Class Based Weighted Fair Queuing (CBWFQ). Packet ClassificationPacket classification involves the use of a traffic descriptor to categorize a packet within a specific group and to make the packet accessible for the QoS that manages in the network. When you use packet classification, you can partition network traffic into multiple priority levels or a class of service (CoS). You can use either access lists (ACLs) or the match command in the modular QoS CLI to match on DSCP values. The Cisco IOS Software Release 12.1(5)T introduced the ability to select a DSCP value in the match command. Router1(config)#access-list 101 permit ip any any ? dscp Match packets with given dscp value fragments Check non-initial fragments log Log matches against this entry log-input Log matches against this entry, including input interface precedence Match packets with given precedence value time-range Specify a time-range tos Match packets with given TOS value When you specify the ip dscp value in the class map command, you have these: Router(config)#class-map match-all VOIP 1751-uut1(config-cmap)#match ip dscp ? <0-63> Differentiated services codepoint value af11 Match packets with AF11 dscp (001010) af12 Match packets with AF12 dscp (001100) af13 Match packets with AF13 dscp (001110) af21 Match packets with AF21 dscp (010010) af22 Match packets with AF22 dscp (010100) af23 Match packets with AF23 dscp (010110) af31 Match packets with AF31 dscp (011010) af32 Match packets with AF32 dscp (011100) af33 Match packets with AF33 dscp (011110) af41 Match packets with AF41 dscp (100010) af42 Match packets with AF42 dscp (100100) af43 Match packets with AF43 dscp (100110) cs1 Match packets with CS1(precedence 1) dscp (001000) cs2 Match packets with CS2(precedence 2) dscp (010000) cs3 Match packets with CS3(precedence 3) dscp (011000) cs4 Match packets with CS4(precedence 4) dscp (100000) cs5 Match packets with CS5(precedence 5) dscp (101000) cs6 Match packets with CS6(precedence 6) dscp (110000) cs7 Match packets with CS7(precedence 7) dscp (111000) default Match packets with default dscp (000000) ef Match packets with EF dscp (101110) Router1(config-cmap)#match ip dscp af31
|