The map above indicates a Cos-to-DSCP or Precedence-to-DSCP map. Why do we need a map? Because Catalyst switches uses an internal DSCP to tag all packets when they are inside the switch. This internal DSCP is generated based on
a. trust setting on the ingress port
b. the appropriate map defined by the administrator in the switch (Cos to DSCP or Cos to precedence).
When to use which map?
a. If you trust Cos at the ingress port, use Cos-to-DSCP map to generate internal DSCP
b. If you trust Precedence at the ingress port, use Precedence-to-DSCP map to generate internal DSCP
c. If you trust DSCP at the ingress port, the DSCP is used as such to generate internal DSCP.
d. A user defined (or default) DSCP-to-COS map is used to generate the COS value which is set on the Egress port.
( The DSCP-to-COS map helps only in setting the COS value of frame on the outbound port.)
DSCP-to-DSCP Mutation maps
DSCP-to-DSCP mutation map may be used in situations where DSCP is widely used for QOS in all your network devices. If a phone sets DSCP to 46 (Cos 5 or precedence 5)and if you trust COS or IP precedence at the ingress port, the internal DSCP changes to 40. (as per the first picture). To map this value back to 46 before the packet goes out, use the DSCP mutation map.
Or the easy way to set DSCP back to 46 from ingress to egress is,
a. Set ingress trust to Cos or Precedence
b. Use Cos-to-DSCP or Prec-to-DSCP maps to set the internal DSCP as 46 (instead of 40).
c. Do nothing at egress port, the egress DSCP will be set to 46 automatically