Resumen del contenido incluido en la página 1
TM
AlliedWare Plus OS
Overview of | Quality of Service Features on x900-12,
x900-24, and SwitchBlade x908 Switches
Introduction
This How To Note describes the main features of QoS on switches running the
AlliedWare Plus OS. The main features include:
Prioritisation and marking
Right at the point of ingress into the QoS process, packets classified to particular class
maps can have values written to one or more of their associated “markers”. The markers
can be externally visible fields (DSCP
Resumen del contenido incluido en la página 2
Ability to see the current state of egress queues There are commands that enable you to see statistics relating to every egress queue on every port. Each of these features is discussed in much more detail later on in this document. Contents Introduction .............................................................................................................................................. 1 Which products and software version does this Note apply to? ......................................
Resumen del contenido incluido en la página 3
Which products and software version does this Note apply to? Products: SwitchBlade x908, x900-12XT/S, and x900-24 series switches Software versions: AlliedWare Plus version 5.2.1-0.1 and above The process flow and methodology of the QoS system Before discussing the details of the various processes that comprise the QoS system, it is desirable to first get a picture of what the processes are, and the order in which they are applied to the packets passing through the system. Therefore, this
Resumen del contenido incluido en la página 4
Packet markers There are four items that are used to mark packets as they pass through the QoS system. Two markers that are carried within fields of the packet itself: 802.1p: The 802.1p or User Priority field in the VLAN tag of an Ethernet frame. This is a 3-bit number, so it can have a value in the range 0-7. DSCP: The Differentiated Services Code Point within the TOS field of an IP packet header. This is a 6-bit number, so it can have a value in the range 0-63. Two items that are just u
Resumen del contenido incluido en la página 5
Outline of the QoS processing flow Let's look at each QoS process in the order that they are applied to a packet. The following figure gives a quick view of the QoS features we are about to discuss. Packet Ingress port Tagged: priority mapped to queue Untagged: mapped to default queue Ingress Classification using ACLs Premarking Policing Remarking Limiting (dropping non-conformant) Egress Queue shaping Queue emptying and egress QoS4.eps Initial mapping to an egress queue, based on 802.1p valu
Resumen del contenido incluido en la página 6
Classification Classification is simply a method of dividing the incoming traffic into traffic flows so that packets of one type can be treated differently to packets of another type. To do this, you create class maps and if desired ACLs. Incoming packets are inspected and may be classified on a very broad range of criteria. The classification process does not update any of the four marker values on the packet, but does dictate the path that the packet will subsequently take through the QoS
Resumen del contenido incluido en la página 7
Policing Policing involves measuring the bandwidth used by a policer and comparing the measurement to the bandwidth limits that have been set for the policer. The policing process allocates a temporary bandwidth class value to packets. It is important to note that the policing process does not overwrite the bandwidth class value that the packet is already carrying around with it. Instead, an extra, temporary, bandwidth class marker is attached to the packets. When traffic first enters the s
Resumen del contenido incluido en la página 8
Queue shaping Each egress port has eight egress queues, which are numbered 0-7 with 7 being the highest priority queue. Unfortunately, the queues are of a limited length, so packets cannot be added to them indefinitely; if the switch is congested, the queues may fill up and no more packets can be added. In this case, packets will inevitably be dropped from the end of the queues, even if they are high-priority packets. Queue shaping is a general term to describe how the egress queues can be
Resumen del contenido incluido en la página 9
Scheduling In addition to managing the way in which packets can be dropped when the egress queues for a given port start to fill up, you can also configure the method that is used to allocate bandwidth to each of the queues to transmit packets onto the line. There are two ways that the queues can be scheduled for transmission: Strict Priority Scheduling Higher-priority queues are emptied before any packets are transmitted from lower- priority queues. This means that queue 7 must be totally e
Resumen del contenido incluido en la página 10
Details of the component processes, and how to configure them QoS elements: policy maps, class maps, policers, matches Some aspects of QoS are configured globally, such as default mapping of CoS to egress queue. However, most aspects are configured on a per-port basis, mostly as part of the port’s policy map. The policy map contains QoS settings for a port, and is made of class maps—one class map for each type of traffic you want to control on the port. Class maps have match commands to sp
Resumen del contenido incluido en la página 11
none Diagram of the overall QoS process flow The following figure summarises the QoS process flow and the commands to configure each stage. The following sections describe the configuration in detail. From L2 switch Tagged packets: set egress queue based on 802.1p, using mls qos map cos-queue Marker updated: Egress Queue Untagged packets: set egress queue based on mls qos queue and CoS based on mls qos cos Markers updated: Egress Queue, CoS When using trust dscp alone, packets must have a DSCP
Resumen del contenido incluido en la página 12
Enabling QoS globally Before configuring QoS, you need to enable it by entering the following command in global configuration mode: awplus(config)#mls qos enable Initial mapping to queue based on tag When packets arrive at a port, they are assigned to an egress queue. This is done by the switch associating an egress queue marker with the packet. For tagged packets, the switch decides the initial queue setting by looking at the packet’s CoS value (802.1p User Priority field). For untagged pac
Resumen del contenido incluido en la página 13
awplus(config)#interface awplus(config-if)#mls qos cos <0-7> The value you change the CoS to is not used to look up the initial egress queue setting; the mls qos queue command still determines the queue for untagged packets. Classification The process of assigning packets to class maps requires a two stage configuration. First, create a class map by entering the following command: awplus(config)#class-map Then, specify the parameters for classifying traffic, by using the ma
Resumen del contenido incluido en la página 14
Setting new values explicitly To explicitly set new values for a particular class map, first create the class map (if necessary), by entering the following command: awplus(config)#class-map Then simply enter the following commands: awplus(config)#policy-map awplus(config-pmap)#class awplus(config-pmap-c)#set cos <0-7> awplus(config-pmap-c)#set queue <0-7> awplus(config-pmap-c)#set bandwidth-class {green|yellow|red} awplus(config-pmap-c)#set dscp <0-63> You can set one or mo
Resumen del contenido incluido en la página 15
Note that there is just a single mark-dscp map for the whole switch—separate class maps do not have separate mark-dscp maps. The configuration required to use the mark-dscp map is a little more complex than the configuration for setting the values explicitly. 1. First, write entries into the mark-dscp map table. This is a matter of specifying the DSCP, CoS, queue, and/or bandwidth class to associate with the given pair of DSCP and bandwidth class values. To do this, enter the command: awplus(
Resumen del contenido incluido en la página 16
Example For the class map called “example”, if you want to take all traffic with a DSCP of 34, 36 or 38 and premark it to CoS 4, queue 4; CoS 5, queue 5; and CoS 6, queue 6 respectively, then enter the following commands: awplus(config)#mls qos map mark-dscp 34 to new-cos 4 new-queue 4 awplus(config)#mls qos map mark-dscp 36 to new-cos 5 new-queue 5 awplus(config)#mls qos map mark-dscp 38 to new-cos 6 new-queue 6 awplus(config)#policy-map example awplus(config-pmap)#class example awplus(config
Resumen del contenido incluido en la página 17
Applying ordinary policers to class maps Ordinary policers are used when policing traffic in a single class map in a single policy map on a single port. You create them in policy map class configuration mode, which means they are attached to that policy map and class map at the time they are created. They do not have a name, because they are identified by the policy map and class map. The following commands give an example of a single-rate policer that monitors VLAN 2 traffic in the class ma
Resumen del contenido incluido en la página 18
Single-rate policing Both ordinary and aggregate policers can be single-rate. Single-rate policing uses three parameters: average bandwidth (in kbps) minimum burst size (in bytes) maximum burst size (in bytes) With this combination, the algorithm used to determine the temporary bandwidth class to assign to a packet is: If the data rate for the policer is below the average bandwidth, or is slightly above the average bandwidth, but the accumulation of total bits that have exceeded the ave
Resumen del contenido incluido en la página 19
Twin-rate policing Both ordinary and aggregate policers can be twin-rate. Twin-rate policing uses four parameters: minimum bandwidth (in kbps) maximum bandwidth (in kbps) maximum burst size (in bytes) minimum burst size (in bytes) With this combination, the algorithm used to determine the temporary bandwidth class to assign to a packet is: If the data rate for the policer is below the minimum bandwidth, or is slightly above the minimum bandwidth, but the accumulation of total bits that
Resumen del contenido incluido en la página 20
Counting policed packets To see the count of policed packets: 1. Turn on the QoS counters enhanced mode by entering global configuration mode and using the command: awplus(config)#platform enhancedmode qoscounters 2. Restart the switch 3. Return to privileged exec mode and use the command: awplus#show mls qos interface policer-counters Counting packets for ordinary policers For each class map, the output shows the total (aggregate) number of bytes, and the number of bytes of each colour