Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Quality of Service (QoS)

SUMMARY Read this topic to learn about the quality of service (QoS) feature of the Juniper Cloud-Native Router when deployed in L2 mode.

Starting in Juniper Cloud-Native Router Release 22.4, you can configure quality of service (QoS) parameters including classification, marking, and queuing. The cloud-native router performs classification and marking operations in vRouter and queing (scheduling) operations in the physical network interface card (NIC). Scheduling is only supported on the E810 NIC.

QoS Overview

You enable QoS prior to the deploy time by editing the values.yaml file in Juniper-Cloud-Native-Router-version-number/helmchart directory and changing the qosEnable value to true. The default value for the QoS feature is false (disabled). For example:

Note:

You can only enable the QoS feature if the host server on which you install your cloud-native router contains an Intel E810 NIC that is running lldp.

You enable lldp on the NIC using the lldptool which runs on the host server as a CLI application. Issue the following command to enable lldp on the E810 NIC. For example, you could use the following command:

The details of the above command are:

  • ETS–Enhanced Transmission Selection

  • willing–The willing attribute determines whether the system uses locally configured packet forwarding classification (PFC) or not. If you set willing to no(the default setting), the cloud-native router applies local PFC configuration. If you set willing to yes, and the cloud-native router receives TLV from the peer router, the cloud-native router applies the received values.

  • tsa–The transmission selection algorithm is a comma seperated list of traffic class to selection algorithm maps. You can choose ets, strict, or vendor as selection algorithms.

  • up2tc–Comma-separated list that maps user priorities to traffic classes

The list below provides an overview of the classification, marking, and queueing operations performed by cloud-native router.

  • Classification:

    • vRouter classifies packets by examining the priority bits in the packet

    • vRouter derives traffic class and loss priority

    • vRouter can apply traffic classifiers to fabric, traffic, and workload interface types

    • vRouter maintains 16 entries in its classifier map

  • Marking (Re-write):

    • vRouter performs marking operations

    • vRouter performs rewriting of p-bits in the egress path

    • vRouter derives new traffic priority based on traffic class and drop priority at egress

    • vRouter can apply marking to packets only on fabric interfaces

    • vRouter maintains 8 entries in its marking map

  • Queueing (Scheduling):

    • Cloud-native router performs strict priority scheduling in hardware (E810 NIC)

    • Cloud-native router maps each traffic class to one queue

    • Cloud-native router limits the maximum number of traffic queue to 4

    • Cloud-native router maps 8 possible priorities to 4 traffic classes; It also maps each traffic class 1 hardware queue

    • Cloud-native router can apply scheduling to fabric interface only

    • Virtual functions (VFs) leverage the queues that you configure in the physical functions (interfaces)

    • vRouter maintains 8 entries in its scheduler map

Configuration Example

You configure QoS classifiers, rewrite rules, and schedulers in the cRPD using Junos set commands or remotely using NETCONF. We display a Junos-based example configuration below:

You view the QoS configuration by accessing the cRPD CLI. Use the show commands in Junos operation mode. The show commands reveal the configuration of classifiers, rewrite rules, or scheduler maps individually. For example:

Show Classifier

Show Rewrite-Rule

Show Scheduler-Map

Show Interface

Troubleshooting

You can troubleshooting the QoS configuration by accessing the vRouter shell. Use the purel2cli command and by viewing the interface mapping.

Display Classifier Config

Display Re-write ConfigDisplay Scheduler Output