DSCP mapping¶
DSCP mapping allows to steer incoming packets into hardware priority queues based on DSCP. It relies on flow support of the physical NIC. Queues are polled with high priority at first. Mapping between priorities and DSCP are defined by name then attached to the selected physical ports.
Note
The interface must be a physical interface managed by the fast-path with flow support. Support for Intel E810 PF mode has been validated.
Mapping¶
A mapping associates a priority to DSCP values. Unconfigured DSCP values will use the default priority 0.
vsr running config# / qos
vsr running qos# dscp-mapping mymapping priority 4 dscp 22 dscp 28
vsr running qos# dscp-mapping mymapping priority 6 dscp 12 dscp 16
In this example we configure a mapping named mymapping
steering packets with DSCP 22 or 28
to priority 4 queues and DSCP 12 or 16 to priority 6 queues.
Packets matching none of those DSCP will fall to default queue of priority 0.
A given DSCP value must not be present in more than one priority level.
Interface configuration¶
Defined mapping can be applied to physical interfaces managed by the fast-path.
vsr running config# / vrf main interface physical eth1 qos
vsr running vrf main interface physical eth1 qos# dscp-mapping name mymapping
This example configures mymapping on interface ntfp1.
Note
This feature activation is mutually exclusive with hardware CP protection on a given interface.
Memory consideration¶
Queue usage when using dscp-mapping may increase mbuf usage. Configuration may fail to apply if there isn’t sufficient memory for mbuf allocation. In such case, you must manually increase mbuf memory reservation as follows:
vsr> edit running
vsr running config# system fast-path advanced nb-mbuf +256000
Note
Additional number of mbuf must be greater than number of fastpath cores ie: number of cores (system/fast-path/core-mask/fast-path) * rx_queue_size (system/fast-path/advanced/nb-rxd) * number_of_priorities_in_mapping