Cisco Support Community
Showing results for 
Search instead for 
Did you mean: 

Welcome to Cisco Support Community. We would love to have your feedback.

For an introduction to the new site, click here. And see here for current known issues.

IP ToS/DS byte format under DSCP QoS

Hi folks. I'm glancing thru my BCMSN textbook as a way to in fact relax between BSCI cram sessions.

Cisco DiffServ QoS takes the standard IP ToS byte and formats it into a three-bit Class Selector value and a three-bit Drop Precendence value.

The chart I'm looking at compares these values with their counterparts in the old IP Precedence (non-DSCP) QoS model. If the chart is correct, there are 7 Class Selector values under IP Precedence, but only 4 under DSCP.

It's not superclear to me why they allocate three bits if there's only four possible values (all of which can fit into a two-bit space), but I'm assuming they're leaving the third bit for future growth.

But are there in fact only four Class Selector values? The text goes on to discuss Classes 5-7 without expressly saying that they exist only under IP precedence. Clarification would be most welcome.

Also, a diagram showing the format of the ToS/DS byte labels the final two bits as "ECN1" and "ECN0." What's that all about; what does ECN mean?


Re: IP ToS/DS byte format under DSCP QoS

Class Selectors are considered PHBs (per hop behaviors) of DSCP.

There are 7 Class Selectors for DSCP. (CS1 - CS7)

Before DSCP, there was IP Precedence. This uses the first three bites of the 2nd byte (aka Type of Service Byte) of an IPv4 Packet. (it is also known as ToS; which can be directly correlated to CoS)

Since 8 classifications (if you include 0) soon proved to be too limited for fine granularity of QoS on packets, DSCP was defined.

DSCP uses the first six bits of the 2nd byte of an IPv4 packet for DSCP to be able to assign 64 different classifications to the packet. This allowed for much more granularity in classification.

The last two bits in the 2nd byte are bits 7 & 8 which are now, in alot of cases, used for what is call IP ECN (ip explicit congestion notification).

IP ECN is used by WRED (weighted random early detection) which is used to prevent congestion of a link. (available in specific switches and port types)

The 'default' correlation of ToS to CoS to DSCP to ClassSelectors is as follows:

ToS 0 = CoS 0 = DSCP 0-7 = 0

ToS 1 = CoS 1 = DSCP 8-15 = CS1

ToS 2 = CoS 2 = DSCP 16-23 = CS2

ToS 3 = CoS 3 = DSCP 24-31 = CS3

ToS 4 = CoS 4 = DSCP 32-39 = CS4

ToS 5 = CoS 5 = DSCP 40-47 = CS5

ToS 6 = CoS 6 = DSCP 48-53 = CS6

ToS 7 = CoS 7 = DSCP 54-61 = CS7

Excellent reading/information on all of this is in the RFCs:

RFC 2474 is Differentiated Services Description

RFC 2475 is Differentited Services Architecture

RFC 791 is IP Precedence

RFC 2597 is Assured Forwarding PHB

RFC 3246 is Expedited Forwarding PHB

RFC 3168 is IP ECN

There's much more too it than I can write in a single page here so use the following link to the QoS SRND for more information on QoS, DSCP and IP Precedence:

Re: IP ToS/DS byte format under DSCP QoS

Thank you!

That was a smorgasbord.