You are on page 1of 45

H3C Access Points Cloud Mode

QoS Configuration Guide

New H3C Technologies Co., Ltd.


http://www.h3c.com

Document version: 5W100-20221028


Product version: E2587P03
Copyright © 2022, New H3C Technologies Co., Ltd. and its licensors

All rights reserved


No part of this manual may be reproduced or transmitted in any form or by any means without prior written
consent of New H3C Technologies Co., Ltd.
Trademarks
Except for the trademarks of New H3C Technologies Co., Ltd., any trademarks that may be mentioned in this
document are the property of their respective owners.
Notice
The information in this document is subject to change without notice. All contents in this document, including
statements, information, and recommendations, are believed to be accurate, but they are presented without
warranty of any kind, express or implied. H3C shall not be liable for technical or editorial errors or omissions
contained herein.
Preface
The H3C Access Points Cloud Mode documentation set describes the software features for the
APs(cloud mode) and guide you through the software configuration procedures. These guides also
provide configuration examples to help you apply software features to different network scenarios.
This preface includes the following topics about the documentation:
• Audience.
• Conventions.
• Documentation feedback.

Audience
This documentation is intended for:
• Network planners.
• Field technical support and servicing engineers.
• Network administrators working with the H3C access points (Cloud mode).

Conventions
The following information describes the conventions used in the documentation.
Command conventions

Convention Description
Boldface Bold text represents commands and keywords that you enter literally as shown.

Italic Italic text represents arguments that you replace with actual values.

[] Square brackets enclose syntax choices (keywords or arguments) that are optional.
Braces enclose a set of required syntax choices separated by vertical bars, from which
{ x | y | ... }
you select one.
Square brackets enclose a set of optional syntax choices separated by vertical bars,
[ x | y | ... ]
from which you select one or none.
Asterisk marked braces enclose a set of required syntax choices separated by vertical
{ x | y | ... } *
bars, from which you select a minimum of one.
Asterisk marked square brackets enclose optional syntax choices separated by vertical
[ x | y | ... ] *
bars, from which you select one choice, multiple choices, or none.
The argument or keyword and argument combination before the ampersand (&) sign
&<1-n>
can be entered 1 to n times.
# A line that starts with a pound (#) sign is comments.

GUI conventions

Convention Description
Window names, button names, field names, and menu items are in Boldface. For
Boldface
example, the New User window opens; click OK.

> Multi-level menus are separated by angle brackets. For example, File > Create >
Convention Description
Folder.

Symbols

Convention Description
An alert that calls attention to important information that if not understood or followed
WARNING! can result in personal injury.

An alert that calls attention to important information that if not understood or followed
CAUTION: can result in data loss, data corruption, or damage to hardware or software.

IMPORTANT: An alert that calls attention to essential information.

NOTE: An alert that contains additional or supplementary information.

TIP: An alert that provides helpful information.

Network topology icons

Convention Description

Represents a generic network device, such as a router, switch, or firewall.

Represents a routing-capable device, such as a router or Layer 3 switch.

Represents a generic switch, such as a Layer 2 or Layer 3 switch, or a router that


supports Layer 2 forwarding and other Layer 2 features.

Represents an access controller, a unified wired-WLAN module, or the access


controller engine on a unified wired-WLAN switch.

Represents an access point.

T Represents a wireless terminator unit.

T Represents a wireless terminator.

Represents a mesh access point.

Represents omnidirectional signals.

Represents directional signals.

Represents a security product, such as a firewall, UTM, multiservice security


gateway, or load balancing device.

Represents a security module, such as a firewall, load balancing, NetStream, SSL


VPN, IPS, or ACG module.
Examples provided in this document
Examples in this document might use devices that differ from your device in hardware model,
configuration, or software version. It is normal that the port numbers, sample output, screenshots,
and other information in the examples differ from what you have on your device.

Documentation feedback
You can e-mail your comments about product documentation to info@h3c.com.
We appreciate your comments.
Contents
QoS overview ································································································ 1
QoS service models ··········································································································································· 1
Best-effort service model ··························································································································· 1
IntServ model ············································································································································· 1
DiffServ model············································································································································ 1
QoS techniques in a network ····························································································································· 1
QoS processing flow in a device ························································································································ 2
Configuring a QoS policy ··············································································· 3
About QoS policies············································································································································· 3
QoS policy tasks at a glance ······························································································································ 3
Defining a traffic class ········································································································································ 3
Defining a traffic behavior ·································································································································· 3
Defining a QoS policy········································································································································· 4
Applying the QoS policy ····································································································································· 4
Application destinations ····························································································································· 4
Restrictions and guidelines for applying a QoS policy ··············································································· 4
Applying the QoS policy to an interface ····································································································· 4
Applying the QoS policy to VLANs ············································································································· 5
Applying the QoS policy to a user profile ··································································································· 5
Setting the QoS policy-based traffic rate statistics collection period for an interface ········································· 6
Display and maintenance commands for QoS policies ······················································································ 6
Configuring priority mapping ·········································································· 8
About priority mapping ······································································································································· 8
About priorities ··········································································································································· 8
Priority maps ·············································································································································· 8
Priority mapping configuration methods ····································································································· 9
Priority mapping process···························································································································· 9
Priority mapping tasks at a glance ··················································································································· 10
Configuring a priority map ································································································································ 10
Configuring a port to trust packet priority for priority mapping ········································································· 11
Changing the port priority of an interface ········································································································· 11
Display and maintenance commands for priority mapping ·············································································· 12
Configuring traffic policing············································································ 13
About traffic policing ········································································································································· 13
Traffic evaluation and token buckets········································································································ 13
Traffic policing ·········································································································································· 14
Configuring traffic policing ································································································································ 15
Configuring CAR-list-based traffic policing······························································································· 15
Configuring ACL-based traffic policing ····································································································· 16
Configuring traffic policing for all traffic ···································································································· 16
Configuring traffic policing for a user profile ····························································································· 17
Display and maintenance commands for traffic policing ·················································································· 17
Configuring global CAR ··············································································· 18
About global CAR············································································································································· 18
Aggregate CAR ········································································································································ 18
Configuring aggregate CAR ····························································································································· 18
Display and maintenance commands for global CAR ······················································································ 18
Appendixes ·································································································· 20
Appendix A Acronyms ······································································································································ 20
Appendix B Default priority maps ····················································································································· 21
Appendix C Introduction to packet precedence ······························································································· 22
IP precedence and DSCP values············································································································· 22

i
802.1p priority ·········································································································································· 24
802.11e priority ········································································································································ 24
EXP values··············································································································································· 25

ii
QoS overview
In data communications, Quality of Service (QoS) provides differentiated service guarantees for
diversified traffic in terms of bandwidth, delay, jitter, and drop rate, all of which can affect QoS.
QoS manages network resources and prioritizes traffic to balance system resources.
The following section describes typical QoS service models and widely used QoS techniques.

QoS service models


This section describes several typical QoS service models.

Best-effort service model


The best-effort model is a single-service model. The best-effort model is not as reliable as other
models and does not guarantee delay-free delivery.
The best-effort service model is the default model for the Internet and applies to most network
applications. It uses the First In First Out (FIFO) queuing mechanism.

IntServ model
The integrated service (IntServ) model is a multiple-service model that can accommodate diverse
QoS requirements. This service model provides the most granularly differentiated QoS by identifying
and guaranteeing definite QoS for each data flow.
In the IntServ model, an application must request service from the network before it sends data.
IntServ signals the service request with the RSVP. All nodes receiving the request reserve resources
as requested and maintain state information for the application flow.
The IntServ model demands high storage and processing capabilities because it requires all nodes
along the transmission path to maintain resource state information for each flow. This model is
suitable for small-sized or edge networks. However, it is not suitable for large-sized networks, for
example, the core layer of the Internet, where billions of flows are present.

DiffServ model
The differentiated service (DiffServ) model is a multiple-service model that can meet diverse QoS
requirements. It is easy to implement and extend. DiffServ does not signal the network to reserve
resources before sending data, as IntServ does.

QoS techniques in a network


The QoS techniques include the following features:
• Traffic classification.
• Traffic policing.
The following section briefly introduces these QoS techniques.
All QoS techniques in this document are based on the DiffServ model.

1
Figure 1 Position of the QoS techniques in a network
Traffic direction

Traffic classification
Traffic policing
Traffic policing

WAN

Traffic policing Traffic policing

As shown in Figure 1, traffic classification and traffic policing mainly implement the following
functions:
• Traffic classification—Uses match criteria to assign packets with the same characteristics to
a traffic class. Based on traffic classes, you can provide differentiated services.
• Traffic policing—Polices flows and imposes penalties to prevent aggressive use of network
resources. You can apply traffic policing to both incoming and outgoing traffic of a port.

QoS processing flow in a device


Figure 2 briefly describes how the QoS module processes traffic.
1. Traffic classifier identifies and classifies traffic for subsequent QoS actions.
2. The QoS module takes various QoS actions on classified traffic as configured, depending on
the traffic processing phase and network status. For example, you can configure traffic policing
for incoming traffic.
Figure 2 QoS processing flow
Tokens
Drop

Classify Other
CAR Mark
packets actions

Token bucket
Packets received
on the interface Classification Traffic policing Priority marking

Tokens
Drop

Classify Other
CAR actions
packets

Packets sent Token bucket Send


out of the Classification
Traffic policing
interface

2
Configuring a QoS policy
About QoS policies
A QoS policy has the following components:
• Traffic class—Defines criteria to match packets.
• Traffic behavior—Defines QoS actions to take on matching packets.
By associating a traffic class with a traffic behavior, a QoS policy can perform the QoS actions on
matching packets.
A QoS policy can have multiple class-behavior associations.

QoS policy tasks at a glance


To configure a QoS policy, perform the following tasks:
1. Defining a traffic class
2. Defining a traffic behavior
3. Defining a QoS policy
4. Applying the QoS policy
 Applying the QoS policy to an interface
 Applying the QoS policy to VLANs
 Applying the QoS policy to a user profile
5. (Optional.) Setting the QoS policy-based traffic rate statistics collection period for an interface

Defining a traffic class


1. Enter system view.
system-view
2. Create a traffic class and enter traffic class view.
traffic classifier classifier-name [ operator { and | or } ]
3. Configure a match criterion.
if-match [ not ] match-criteria
By default, no match criterion is configured.
For more information, see the if-match command in ACL and QoS Command Reference.

Defining a traffic behavior


1. Enter system view.
system-view
2. Create a traffic behavior and enter traffic behavior view.
traffic behavior behavior-name
3. Configure an action in the traffic behavior.
By default, no action is configured for a traffic behavior.

3
For more information about configuring an action, see the subsequent chapters for traffic
policing, traffic filtering, priority marking, class-based accounting, and so on.

Defining a QoS policy


1. Enter system view.
system-view
2. Create a QoS policy and enter QoS policy view.
qos policy policy-name
3. Associate a traffic class with a traffic behavior to create a class-behavior association in the QoS
policy.
classifier classifier-name behavior behavior-name [ insert-before
before-classifier-name ]
By default, a traffic class is not associated with a traffic behavior.
Repeat this step to create more class-behavior associations.

Applying the QoS policy


Application destinations
You can apply a QoS policy to the following destinations:
• Interface—The QoS policy can be applied to the traffic sent or received on an interface.
• VLAN—The QoS policy can be applied to the traffic sent or received on all ports in the VLAN.
• User profile—The QoS policy can be applied to the traffic sent or received by the online users
of the user profile.

Restrictions and guidelines for applying a QoS policy


You can modify traffic classes, traffic behaviors, and class-behavior associations in a QoS policy
even after it is applied (except that it is applied to a user profile). If a traffic class uses an ACL for
traffic classification, you can delete or modify the ACL.
If an action in a traffic behavior cannot take effect, all other actions in the traffic behavior do not take
effect.

Applying the QoS policy to an interface


Restrictions and guidelines
A QoS policy can be applied to multiple interfaces. However, only one QoS policy can be applied to
one direction (inbound or outbound) of an interface.
The QoS policy applied to the outgoing traffic on an interface does not regulate local packets. Local
packets refer to critical protocol packets sent by the local system for operation maintenance. The
most common local packets include link maintenance, RIP, LDP, and SSH packets.
Procedure
1. Enter system view.
system-view
2. Enter interface view.

4
interface interface-type interface-number
3. Apply the QoS policy to the interface.
qos apply policy policy-name { inbound | outbound }
By default, no QoS policy is applied to an interface.

Applying the QoS policy to VLANs


About this task
You can apply a QoS policy to VLANs to regulate the traffic on all ports of the VLANs.
Restrictions and guidelines
QoS policies cannot be applied to dynamic VLANs, including VLANs created by GVRP.
Procedure
1. Enter system view.
system-view
2. Apply the QoS policy to VLANs.
qos vlan-policy policy-name vlan vlan-id-list { inbound | outbound }
By default, no QoS policy is applied to a VLAN.

Applying the QoS policy to a user profile


About this task
When a user profile is configured, you can perform traffic policing based on users. After a user
passes authentication, the authentication server sends the name of the user profile associated with
the user to the device. The QoS policy configured in user profile view takes effect only when users
come online.
Restrictions and guidelines
You can apply a QoS policy to multiple user profiles. In one direction of each user profile, only one
policy can be applied. To modify a QoS policy already applied to a direction, first remove the applied
QoS policy.
Procedure
1. Enter system view.
system-view
2. Enter user profile view.
user-profile profile-name
3. Apply the QoS policy to the user profile.
qos apply policy policy-name { inbound | outbound }
By default, no QoS policy is applied to a user profile.

Parameter Description

Applies a QoS policy to the incoming traffic (traffic received by the


inbound
device from online users).

Applies a QoS policy to the outgoing traffic (traffic sent by the device to
outbound
online users).

5
Setting the QoS policy-based traffic rate statistics
collection period for an interface
About this task
You can enable collection of per-class traffic statistics over a period of time, including the average
forwarding rate and drop rate. For example, if you set the statistics collection period to n minutes, the
system performs the following operations:
• Collects traffic statistics for the most recent n minutes.
• Refreshes the statistics every n/5 minutes.
You can use the display qos policy interface command to view the collected traffic rate
statistics.
Procedure
1. Enter system view.
system-view
2. Enter interface view.
interface interface-type interface-number
3. Set the traffic rate statistics collection period for the interface.
qos flow-interval interval
The default setting is 5 minutes.

Display and maintenance commands for QoS


policies
Execute display commands in any view and reset commands in user view.

Task Command

display qos policy { system-defined |


Display QoS policy configuration. user-defined } [ policy-name [ classifier
classifier-name ] ]
display qos policy interface
Display information about QoS policies
[ interface-type interface-number ]
applied to interfaces.
[ inbound | outbound ]
display qos policy user-profile [ name
Display information about QoS policies
profile-name ] [ user-id user-id ] [ inbound
applied to user profiles.
| outbound ]
Display information about QoS policies display qos vlan-policy { name policy-name
applied to VLANs. | vlan [ vlan-id ] } [ inbound | outbound ]
display traffic behavior { system-defined |
Display traffic behavior configuration.
user-defined } [ behavior-name ]
display traffic classifier
Display traffic class configuration. { system-defined | user-defined }
[ classifier-name ]
Clear the statistics of the QoS policy reset qos vlan-policy [ vlan vlan-id ]

6
Task Command
applied in a certain direction of a VLAN. [ inbound | outbound ]

7
Configuring priority mapping
About priority mapping
When a packet arrives, a device assigns a set of QoS priority parameters to the packet based on
either of the following:
• A priority field carried in the packet.
• The port priority of the incoming port.
This process is called priority mapping. During this process, the device can modify the priority of the
packet according to the priority mapping rules. The set of QoS priority parameters decides the
scheduling priority and forwarding priority of the packet.
Priority mapping is implemented with priority maps and involves the following priorities:
• 802.11e priority.
• 802.1p priority.
• DSCP.
• EXP.
• IP precedence.
• Local precedence.
• Drop priority.

About priorities
Priorities include the following types: priorities carried in packets, and priorities locally assigned for
scheduling only.
Packet-carried priorities include 802.1p priority, DSCP precedence, IP precedence, and EXP. These
priorities have global significance and affect the forwarding priority of packets across the network.
For more information about these priorities, see "Appendix C Introduction to packet precedence."
Locally assigned priorities only have local significance. They are assigned by the device only for
scheduling. These priorities include the local precedence, drop priority, and user priority, as follows:
• Local precedence—Used for queuing. A local precedence value corresponds to an output
queue. A packet with higher local precedence is assigned to a higher priority output queue to be
preferentially scheduled.
• Drop priority—Used for making packet drop decisions. Packets with the highest drop priority
are dropped preferentially.
• User priority—Precedence that the device automatically extracts from a priority field of the
packet according to its forwarding path. It is a parameter for determining the scheduling priority
and forwarding priority of the packet. The user priority represents the following items:
 The 802.1p priority for Layer 2 packets.
 The IP precedence for Layer 3 packets.
 The EXP for MPLS packets.

Priority maps
The device provides various types of priority maps. By looking through a priority map, the device
decides which priority value to assign to a packet for subsequent packet processing.

8
The default priority maps (as shown in Appendix B Default priority maps) are available for priority
mapping. They are adequate in most cases. If a default priority map cannot meet your requirements,
you can modify the priority map as required.

Priority mapping configuration methods


You can configure priority mapping by using any of the following methods:
• Configuring priority trust mode—In this method, you can configure a port to look up a trusted
priority type (802.1p, for example) in incoming packets in the priority maps. Then, the system
maps the trusted priority to the target priority types and values.
• Changing port priority—If no packet priority is trusted, the port priority of the incoming port is
used. By changing the port priority of a port, you change the priority of the incoming packets on
the port.

Priority mapping process


On receiving an Ethernet packet on a port, the switch marks the scheduling priorities (local
precedence and drop precedence) for the Ethernet packet. This procedure is done according to the
priority trust mode of the receiving port and the 802.1Q tagging status of the packet, as shown in
Figure 3.

9
Figure 3 Priority mapping process for an Ethernet packet
Receive a
packet on a port

Should the
packet be marked with Yes
local precedence and
drop priority?
Mark it with local
No precedence and
drop priority

Which priority is
802.1p in packets trusted on the port?
Port priority

Use port priority


Use port priority as as 802.1p priority
No Is the packet DSCP in packets
802.1p priority for for priority
802.1q tagged?
priority mapping mapping

Yes
Look up dscp-dp,
dscp-dot1p, and Look up dot1p-dp
dscp-dscp mapping and dot1p-lp
Look up dot1p-dp Look up dot1p-dp tables mapping tables
and dot1p-lp and dot1p-lp
mapping tables mapping tables
Mark the packet
with 802.1p priority, Mark the packet
drop priority, and with local
new DSCP precedence and
Mark the packet Mark the packet drop priority
precedence
with local with local
precedence precedence and
and drop priority drop priority
Look up dot1p-lp
mapping table

Mark the packet


with local
precedence

Schedule the packet


according to its local
precedence and drop priority

Priority mapping tasks at a glance


To configure priority mapping, perform the following tasks:
1. (Optional.) Configuring a priority map
2. Configuring a priority mapping method:
 Configuring a port to trust packet priority for priority mapping
 Changing the port priority of an interface

Configuring a priority map


1. Enter system view.
system-view

10
2. Enter priority map view.
qos map-table { dot11e-lp | dot1p-lp | dscp-lp | lp-dot11e | lp-dot1p
| lp-dscp }
3. Configure mappings for the priority map.
import import-value-list export export-value
By default, the default priority maps are used. For more information, see "Appendix B Default
priority maps."
If you execute this command multiple times, the most recent configuration takes effect.

Configuring a port to trust packet priority for


priority mapping
About this task
You can configure the device to trust a particular priority field carried in packets for priority mapping
on ports or globally. When you configure the trusted packet priority type on an interface, use the
following available keywords:
• dot1p—Uses the 802.1p priority of received packets for mapping.
• dscp—Uses the DSCP precedence of received IP packets for mapping.
Procedure
1. Enter system view.
system-view
2. Enter interface view.
interface interface-type interface-number
3. Configure the trusted packet priority type.
qos trust { dot1p | dscp } [ override ]
By default, an interface does not trust any packet priority and uses the port priority as the
802.1p priority for mapping.
If the override keyword is configured, the priority derived through priority mapping overwrites
the original priority carried in the packet.
4. Return to system view.
quit

Changing the port priority of an interface


About this task
If an interface does not trust any packet priority, the device uses its port priority to look for priority
parameters for the incoming packets. By changing port priority, you can prioritize traffic received on
different interfaces.
Procedure
1. Enter system view.
system-view
2. Enter interface view.
interface interface-type interface-number
3. Set the port priority of the interface.

11
qos priority priority-value
The default setting is 0.

Display and maintenance commands for priority


mapping
Execute display commands in any view.

Task Command

Display priority map display qos map-table [ dot11e-lp | dot1p-lp |


configuration. dscp-lp | lp-dot11e | lp-dot1p | lp-dscp ]
Display the trusted packet display qos trust interface [ interface-type
priority type on a port. interface-number ]

12
Configuring traffic policing
About traffic policing
Traffic limit helps assign network resources (including bandwidth) and increase network
performance. For example, you can configure a flow to use only the resources committed to it in a
certain time range. This avoids network congestion caused by burst traffic.
Traffic policing, Generic Traffic Shaping (GTS), and rate limit control the traffic rate and resource
usage according to traffic specifications. You can use token buckets for evaluating traffic
specifications.

Traffic evaluation and token buckets


Token bucket features
A token bucket is analogous to a container that holds a certain number of tokens. Each token
represents a certain forwarding capacity. The system puts tokens into the bucket at a constant rate.
When the token bucket is full, the extra tokens cause the token bucket to overflow.
Evaluating traffic with the token bucket
A token bucket mechanism evaluates traffic by looking at the number of tokens in the bucket. If the
number of tokens in the bucket is enough for forwarding the packets:
• The traffic conforms to the specification (called conforming traffic).
• The corresponding tokens are taken away from the bucket.
Otherwise, the traffic does not conform to the specification (called excess traffic).
A token bucket has the following configurable parameters:
• Mean rate at which tokens are put into the bucket, which is the permitted average rate of traffic.
It is usually set to the committed information rate (CIR).
• Burst size or the capacity of the token bucket. It is the maximum traffic size permitted in each
burst. It is usually set to the committed burst size (CBS). The set burst size must be greater than
the maximum packet size.
Each arriving packet is evaluated.
Complicated evaluation
You can set two token buckets, bucket C and bucket E, to evaluate traffic in a more complicated
environment and achieve more policing flexibility. The following are main mechanisms used for
complicated evaluation:
• Single rate two color—Uses one token bucket and the following parameters:
 CIR—Rate at which tokens are put into bucket C. It sets the average packet transmission or
forwarding rate allowed by bucket C.
 CBS—Size of bucket C, which specifies the transient burst of traffic that bucket C can
forward.
When a packet arrives, the following rules apply:
 If bucket C has enough tokens to forward the packet, the packet is colored green.
 Otherwise, the packet is colored red.
• Single rate three color—Uses two token buckets and the following parameters:
 CIR—Rate at which tokens are put into bucket C. It sets the average packet transmission or
forwarding rate allowed by bucket C.

13
 CBS—Size of bucket C, which specifies the transient burst of traffic that bucket C can
forward.
 EBS—Size of bucket E minus size of bucket C, which specifies the transient burst of traffic
that bucket E can forward. The EBS cannot be 0. The size of E bucket is the sum of the CBS
and EBS.
When a packet arrives, the following rules apply:
 If bucket C has enough tokens, the packet is colored green.
 If bucket C does not have enough tokens but bucket E has enough tokens, the packet is
colored yellow.
 If neither bucket C nor bucket E has sufficient tokens, the packet is colored red.
• Two rate three color—Uses two token buckets and the following parameters:
 CIR—Rate at which tokens are put into bucket C. It sets the average packet transmission or
forwarding rate allowed by bucket C.
 CBS—Size of bucket C, which specifies the transient burst of traffic that bucket C can
forward.
 PIR—Rate at which tokens are put into bucket E, which specifies the average packet
transmission or forwarding rate allowed by bucket E.
 EBS—Size of bucket E, which specifies the transient burst of traffic that bucket E can
forward.
When a packet arrives, the following rules apply:
 If bucket C has enough tokens, the packet is colored green.
 If bucket C does not have enough tokens but bucket E has enough tokens, the packet is
colored yellow.
 If neither bucket C nor bucket E has sufficient tokens, the packet is colored red.

Traffic policing
A typical application of traffic policing is to supervise the specification of traffic entering a network and
limit it within a reasonable range. Another application is to "discipline" the extra traffic to prevent
aggressive use of network resources by an application. For example, you can limit bandwidth for
HTTP packets to less than 50% of the total. If the traffic of a session exceeds the limit, traffic policing
can drop the packets or set the precedence of the packets. Figure 4 shows an example of policing
outbound traffic on an interface.

14
Figure 4 Traffic policing
Put tokens into the bucket at
the set rate
Traffic

Traffic

Classify Conforming traffic

Token bucket

Drop excess traffic

Traffic policing can classify the policed traffic and take predefined policing actions on each packet
depending on the evaluation result:
• Forwarding the packet.
• Dropping the packet.
• Forwarding the packet with its precedence re-marked.

Configuring traffic policing


Configuring CAR-list-based traffic policing
1. Enter system view.
system-view
2. Configure a CAR list.
qos carl carl-index { dscp dscp-list | mac mac-address | mpls-exp
mpls-exp-value | precedence precedence-value |
{ destination-ip-address | source-ip-address } { range
start-ip-address to end-ip-address | subnet ip-address mask-length }
[ per-address [ shared-bandwidth ] ] }
3. Enter interface view.
interface interface-type interface-number
4. Apply a CAR-list-based CAR policy to the interface.
 In absolute value:
qos car { inbound | outbound } carl carl-index cir
committed-information-rate [ cbs committed-burst-size [ ebs
excess-burst-size ] ] [ green action | red action | yellow action ] *
qos car { inbound | outbound } carl carl-index cir
committed-information-rate [ cbs committed-burst-size ] pir
peak-information-rate [ ebs excess-burst-size ] [ green action | red
action | yellow action ] *
 In percentage:

15
qos car { inbound | outbound } carl carl-index percent cir
cir-percent [ cbs cbs-time [ ebs ebs-time ] ] [ green action | red
action | yellow action ] *
qos car { inbound | outbound } carl carl-index percent cir
cir-percent [ cbs cbs-time ] pir pir-percent [ ebs ebs-time ] [ green
action | red action | yellow action ] *
By default, no CAR policy is applied to an interface.

Configuring ACL-based traffic policing


1. Enter system view.
system-view
2. Enter interface view.
interface interface-type interface-number
3. Configure an ACL-based CAR policy on the interface.
 In absolute value:
qos car { inbound | outbound } acl [ ipv6 ] acl-number cir
committed-information-rate [ cbs committed-burst-size [ ebs
excess-burst-size ] ] [ green action | red action | yellow action ] *
qos car { inbound | outbound } acl [ ipv6 ] acl-number cir
committed-information-rate [ cbs committed-burst-size ] pir
peak-information-rate [ ebs excess-burst-size ] [ green action | red
action | yellow action ] *
 In percentage:
qos car { inbound | outbound } acl [ ipv6 ] acl-number percent cir
cir-percent [ cbs cbs-time [ ebs ebs-time ] ] [ green action | red
action | yellow action ] *
qos car { inbound | outbound } acl [ ipv6 ] acl-number percent cir
cir-percent [ cbs cbs-time ] pir pir-percent [ ebs ebs-time ] [ green
action | red action | yellow action ] *
By default, no CAR policy is configured on an interface.

Configuring traffic policing for all traffic


1. Enter system view.
system-view
2. Enter interface view.
interface interface-type interface-number
3. Configure a CAR policy for all traffic on the interface.
 In absolute value:
qos car { inbound | outbound } any cir committed-information-rate
[ cbs committed-burst-size [ ebs excess-burst-size ] ] [ green action
| red action | yellow action ] *
qos car { inbound | outbound } any cir committed-information-rate
[ cbs committed-burst-size ] pir peak-information-rate [ ebs
excess-burst-size ] [ green action | red action | yellow action ] *
 In percentage:

16
qos car { inbound | outbound } any percent cir cir-percent [ cbs
cbs-time [ ebs ebs-time ] ] [ green action | red action | yellow action ]
*
qos car { inbound | outbound } any percent cir cir-percent [ cbs
cbs-time ] pir pir-percent [ ebs ebs-time ] [ green action | red action
| yellow action ] *
By default, no CAR policy is configured on an interface.

Configuring traffic policing for a user profile


About this task
When a user profile is configured, you can perform traffic policing based on users. After a user
passes authentication, the authentication server sends the name of the user profile associated with
the user to the device. When any user of the user profile logs in, the authentication server
automatically applies the CAR parameters configured for the user profile to the user. When the user
logs off, the system automatically removes the CAR configuration without manual intervention.
Procedure
1. Enter system view.
system-view
2. Enter user profile view.
user-profile profile-name
3. Configure a CAR policy for the user profile.
qos car { inbound | outbound } any cir committed-information-rate [ cbs
committed-burst-size [ ebs excess-burst-size ] ]
qos car { inbound | outbound } any cir committed-information-rate [ cbs
committed-burst-size ] pir peak-information-rate [ ebs
excess-burst-size ]
By default, no CAR policy is configured for a user profile.

Display and maintenance commands for traffic


policing
Execute display commands in any view.

Task Command

Display CAR configuration and statistics on display qos car interface


an interface. [ interface-type interface-number ]
Display CAR list information. display qos carl [ carl-index ]
display traffic behavior user-defined
Display traffic behavior configuration.
[ behavior-name ]

17
Configuring global CAR
About global CAR
Global committed access rate (CAR) is an approach to policing traffic flows globally. It adds flexibility
to common CAR where traffic policing is performed only on a per-traffic class or per-interface basis.
In this approach, CAR actions are created in system view and each can be used to police multiple
traffic flows as a whole.
Global CAR provides the following CAR actions: aggregate CAR and hierarchical CAR. Only
aggregate CAR is supported in the current software version.

Aggregate CAR
An aggregate CAR action is created globally. It can be directly applied to interfaces or used in the
traffic behaviors associated with different traffic classes to police multiple traffic flows as a whole.
The total rate of the traffic flows must conform to the traffic policing specifications set in the
aggregate CAR action.

Configuring aggregate CAR


1. Enter system view.
system-view
2. Configure an aggregate CAR action.
qos car car-name aggregative cir committed-information-rate [ cbs
committed-burst-size [ ebs excess-burst-size ] ] [ green action | red
action | yellow action ] *
qos car car-name aggregative cir committed-information-rate [ cbs
committed-burst-size ] pir peak-information-rate [ ebs
excess-burst-size ] [ green action | red action | yellow action ] *
By default, no aggregate CAR action is configured.
3. Enter interface view.
interface interface-type interface-number
4. Apply the aggregate CAR action to the interface.
qos car { inbound | outbound } { any | acl [ ipv6 ] acl-number } name
car-name
By default, no aggregate CAR action is applied to an interface.

Display and maintenance commands for global


CAR
Execute display commands in any view and reset commands in user view.

Task Command

Display statistics for global CAR actions. display qos car name [ car-name ]

18
Task Command

Clear statistics for global CAR actions. reset qos car name [ car-name ]

19
Appendixes
Appendix A Acronyms
Table 1 Appendix A Acronyms

Acronym Full spelling

AF Assured Forwarding
BE Best Effort
BQ Bandwidth Queuing
CAR Committed Access Rate
CBS Committed Burst Size
CBQ Class Based Queuing
CE Congestion Experienced
CIR Committed Information Rate
CQ Custom Queuing
DCBX Data Center Bridging Exchange Protocol
DiffServ Differentiated Service
DSCP Differentiated Services Code Point
EBS Excess Burst Size
ECN Explicit Congestion Notification
EF Expedited Forwarding
FIFO First in First out
FQ Fair Queuing
GMB Guaranteed Minimum Bandwidth
GTS Generic Traffic Shaping
IntServ Integrated Service
ISP Internet Service Provider
LLQ Low Latency Queuing
LSP Label Switched Path
MPLS Multiprotocol Label Switching
PE Provider Edge
PIR Peak Information Rate
PQ Priority Queuing
PW Pseudowire
QoS Quality of Service
QPPB QoS Policy Propagation Through the Border Gateway Protocol
RED Random Early Detection

20
Acronym Full spelling

RSVP Resource Reservation Protocol


RTP Real-Time Transport Protocol
SP Strict Priority
ToS Type of Service
VoIP Voice over IP
VPN Virtual Private Network
WFQ Weighted Fair Queuing
WRED Weighted Random Early Detection
WRR Weighted Round Robin

Appendix B Default priority maps


Table 2 Default dot1p-lp priority map

dot1p lp

0 2
1 0
2 1
3 3
4 4
5 5
6 6
7 7

Table 3 Default dot11e-lp priority map

dot11e lp

0 2
1 0
2 1
3 3
4 4
5 5
6 6
7 7

21
Table 4 Default dscp-lp priority map

dscp lp

0 to 7 0
8 to 15 1
16 to 23 2
24 to 31 3
32 to 39 4
40 to 47 5
48 to 55 6
56 to 63 7

Table 5 Default lp-dot1p, lp-dot11e, and lp-dscp priority maps

Input priority value lp-dot1p map lp-dot11e map lp-dscp map

lp dot1p dot11e dscp


0 1 1 0
1 2 2 8
2 0 0 16
3 3 3 24
4 4 4 32
5 5 5 40
6 6 6 48
7 7 7 56

Appendix C Introduction to packet precedence


IP precedence and DSCP values
Figure 5 ToS and DS fields
Bits: 0 1 2 3 4 5 6 7 Bits: 0 1 2 3 4 5 6 7
M
Preced Type of
IPv4 ToS B DS-Field DSCP CU
ence Service Z (for IPv4,ToS
byte
octet,and for
IPv6,Traffic
Must Class octet ) Class Selector Currently
RFC 1349 Be codepoints Unused
RFC 1122
Zero

IP Type of Service (ToS) Differentiated Services


RFC 791 Codepoint (DSCP)
RFC 2474

As shown in Figure 5, the ToS field in the IP header contains 8 bits. The first 3 bits (0 to 2) represent
IP precedence from 0 to 7. According to RFC 2474, the ToS field is redefined as the differentiated

22
services (DS) field. A DSCP value is represented by the first 6 bits (0 to 5) of the DS field and is in the
range 0 to 63. The remaining 2 bits (6 and 7) are reserved.
Table 6 IP precedence

IP precedence (decimal) IP precedence (binary) Description

0 000 Routine
1 001 priority
2 010 immediate
3 011 flash
4 100 flash-override
5 101 critical
6 110 internet
7 111 network

Table 7 DSCP values

DSCP value (decimal) DSCP value (binary) Description

46 101110 ef
10 001010 af11
12 001100 af12
14 001110 af13
18 010010 af21
20 010100 af22
22 010110 af23
26 011010 af31
28 011100 af32
30 011110 af33
34 100010 af41
36 100100 af42
38 100110 af43
8 001000 cs1
16 010000 cs2
24 011000 cs3
32 100000 cs4
40 101000 cs5
48 110000 cs6
56 111000 cs7
0 000000 be (default)

23
802.1p priority
802.1p priority lies in the Layer 2 header. It applies to occasions where Layer 3 header analysis is not
needed and QoS must be assured at Layer 2.
Figure 6 An Ethernet frame with an 802.1Q tag header
802.1Q
Destination Source header Length FCS(CRC-
Data
Address Address /Type 32)
TPID TCI

6 bytes 6 bytes 4 bytes 2 bytes 46~1500 bytes 4 bytes

As shown in Figure 6, the 4-byte 802.1Q tag header contains the 2-byte tag protocol identifier (TPID)
and the 2-byte tag control information (TCI). The value of the TPID is 0x8100. Figure 7 shows the
format of the 802.1Q tag header. The Priority field in the 802.1Q tag header is called 802.1p priority,
because its use is defined in IEEE 802.1p. Table 8 shows the values for 802.1p priority.
Figure 7 802.1Q tag header

Byte 1 Byte 2 Byte 3 Byte 4

TPID(Tag protocol identifier) TCI(Tag control information)

C
1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 Priority F VLAN ID
I
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0

Table 8 Description on 802.1p priority

802.1p priority (decimal) 802.1p priority (binary) Description

0 000 best-effort
1 001 background
2 010 spare
3 011 excellent-effort
4 100 controlled-load
5 101 video
6 110 voice
7 111 network-management

802.11e priority
To provide QoS services on WLAN, the 802.11e standard was developed. IEEE 802.11e is a
MAC-layer enhancement to IEEE 802.11. IEEE 802.11e adds a 2-byte QoS control field to the
802.11e MAC frame header. The 3-bit QoS control field represents the 802.11e priority in the range
of 0 to 7.

24
Figure 8 802.11e frame structure
2 2 6 6 6 2 6 2 0~2324 4

Address Address Address Address Frame


FCS
1 2 3 4 body

Frame Duration/ Sequence QoS


control ID control control

EXP values
The EXP field is in MPLS labels for MPLS QoS purposes. As shown in Figure 9, the EXP field is 3-bit
long and is in the range of 0 to 7.
Figure 9 MPLS label structure

25
Contents
Configuring WLAN QoS ················································································· 1
About WLAN QoS ·············································································································································· 1
WMM protocol ············································································································································ 1
Bandwidth guaranteeing ···························································································································· 3
Client rate limiting······································································································································· 3
Protocols and standards ···························································································································· 3
Configuring WMM ·············································································································································· 3
WMM tasks at a glance ······························································································································ 3
Enabling WMM ··········································································································································· 3
Setting EDCA parameters ·························································································································· 4
Setting EDCA parameters of AC-BE or AC-BK queues for clients ···························································· 4
Setting EDCA parameters of AC-VI or AC-VO queues for clients ····························································· 5
Configuring a port to trust packet priority for priority mapping ··································································· 5
Configuring bandwidth guaranteeing ················································································································· 6
Configuring client rate limiting ···························································································································· 6
About client rate limiting ····························································································································· 6
Restrictions and guidelines ························································································································ 6
Configuring service-template-based client rate limiting·············································································· 6
Configuring client-type-based client rate limiting························································································ 7
Display and maintenance commands for WMM ································································································ 7
WLAN QoS configuration examples··················································································································· 7
Example: Configuring basic WMM ············································································································· 7
Example: Configuring CAC ························································································································ 8
Example: Configuring traffic differentiation ································································································ 9
Example: Configuring bandwidth guaranteeing ······················································································· 10
Example: Configuring service-template-based client rate limiting···························································· 11

i
Configuring WLAN QoS
About WLAN QoS
An 802.11 network provides contention-based wireless access. To provide applications with QoS
services, IEEE developed 802.11e for 802.11-based WLANs.
WLAN QoS features include WMM, bandwidth guaranteeing, and client rate limiting.

WMM protocol
About this task
Wi-Fi Alliance defined the Wi-Fi Multimedia (WMM) standard to allow QoS provision devices of
different vendors to interoperate. WMM enables a WLAN to provide QoS services, so that audio
and video applications can have better performance in WLANs.
The Distributed Coordination Function (DCF) in 802.11 requires APs and clients to use the carrier
sense multiple access with collision avoidance (CSMA/CA) access mechanism. APs or clients listen
to the channel before they hold the channel for data transmission. When the specified idle duration
of the channel times out, APs or clients randomly select a backoff slot within the contention window
to perform backoff. The device that finishes backoff first gets the channel. With 802.11, all devices
have the same idle duration and contention window. Therefore, they are equal when contending for
a channel.
To provide QoS services, WMM divides data traffic into four ACs that have different priorities. Traffic
in an AC with a high priority has a better chance to use the channel.
Terminology
• Enhanced distributed channel access—EDCA is a channel contention mechanism defined
by WMM to preferentially transmit packets with high priority and allocate more bandwidth to
such packets.
• Access category—WMM defines the following ACs: AC-VO for voice traffic, AC-VI for video
traffic, AC-BE for best effort traffic, and AC-BK for background traffic. The priorities of the four
ACs are in descending order.
• Connect Admission Control—CAC limits the number of clients that can use high-priority ACs
(AC-VO and AC-VI) to guarantee enough bandwidth for these clients.
• Unscheduled automatic power save delivery—U-APSD is a power saving method defined
by WMM to save client power.
EDCA parameters
• Arbitration inter-frame spacing number—In 802.11-based WLAN, each client has the same
idle duration (DIFS), but WMM defines an idle duration for each AC. The idle duration
increases as the AIFSN increases.
• Exponent form of CWmin/Exponent form of CWmax—ECWmin/ECWmax determines the
backoff slots, which increase as the two values increase.
• Transmission opportunity limit—TXOP limit specifies the maximum time that a client can
hold the channel after a successful contention. A larger value represents a longer time. If the
value is 0, a client can send only one packet each time it holds the channel.

1
Figure 1 EDCA parameters

AIFS[AC-BK]
Backoff slots

AIFS[AC-BE]
Backoff slots

AIFS[AC-VI]
Backoff slots

AIFS[AC-VO]
Backoff slots

DIFS Contention Window

Busy Medium Backoff slots Next Frame

CAC admission policies


CAC requires a client to obtain permission from an AP before it can use a high-priority AC for
transmission. This guarantees bandwidth for the clients that have gained access. CAC controls real
time traffic (AC-VO and AC-VI traffic) but not common data traffic (AC-BE and AC-BK traffic).
If a client wants to use a high-priority AC (AC-VO or AC-VI), it must send a request to the AP. The
AP returns a positive or negative response based on either of the following admission control
policies:
• Channel usage-based admission policy—The AP calculates the channel occupation time of
the existing high-priority AC queues and the requested AC queues within a time period,
respectively. If the sum of the two values is smaller than or equal to the maximum hold time of
the channel, the client can use the requested AC queue. If it is not, the request is rejected.
• Client-based admission policy—If the number of clients using high-priority AC queues is
smaller than the maximum number of high-priority AC clients, the request is accepted. If it is
not, the request is rejected. During calculation, a client is counted as one client if it is using
both the AC-VO and AC-VI queues.
If the request is rejected because of lack of media resources, the AP assigns AC-BE to the client.
Clients that already use high-priority AC queues will not be affected.
When calculating media resources, the AP takes requests before CAC is enabled into account.
Whether subsequent requests for high-priority AC queues will be accepted is greatly restricted by
the resource usage.
U-APSD power-save mechanism
U-APSD enables clients in sleep mode to wake up and receive the specified number of packets
only after receiving a trigger packet. U-APSD improves the 802.11 APSD power saving mechanism.
U-APSD is automatically enabled after you enable WMM.
ACK policy
WMM defines the following ACK policies:
• Normal ACK—The recipient acknowledges each received unicast packet.
• No ACK—The recipient does not acknowledge received packets during wireless packet
exchange. This policy improves the transmission efficiency in an environment where
communication quality is strong and interference is weak. If communication quality
deteriorates, this policy might increase the packet loss rate. For A-MPDU packets sent by
802.11n clients, the No ACK policy does not take effect.

2
Bandwidth guaranteeing
This feature provides the following functions:
• Ensures that traffic from all BSSs can pass through freely when the network is not congested.
• Ensures that each BSS can get the guaranteed bandwidth when the network is congested.
This feature improves bandwidth efficiency and maintains fair use of bandwidth among WLAN
services. For example, you assign SSID1, SSID2, and SSID3 25%, 25%, and 50% of the total
bandwidth. When the network is not congested, SSID1 can use all idle bandwidth in addition to its
guaranteed bandwidth. When the network is congested, SSID1 is guaranteed with 25% of the
bandwidth.
This feature applies only to AP-to-client traffic.

Client rate limiting


This feature prevents aggressive use of bandwidth by one client and ensures fair use of bandwidth
among clients associated with the same AP.
You can configure either of the following modes for client rate limiting:
• Dynamic mode—Sets the total bandwidth shared by all clients. The rate limit for each client is
the total rate divided by the number of online clients. For example, if the total rate is 10 Mbps
and five clients are online, the rate limit for each client is 2 Mbps.
• Static mode—Sets the bandwidth that can be used by each client. When the rate limit
multiplied by the number of associated clients exceeds the available bandwidth provided by
the AP, the clients might not get the set bandwidth.

Protocols and standards


• 802.11e-2005, Amendment 8: Medium Access Control (MAC) Quality of Service
Enhancements, IEEE Computer Society, 2005
• Wi-Fi, WMM Specification version 1.1, Wi-Fi Alliance, 2005

Configuring WMM
WMM tasks at a glance
To configure WMM, perform the following tasks:
1. Enabling WMM
2. (Optional.) Setting EDCA parameters
3. (Optional.) Setting EDCA parameters of AC-BE or AC-BK queues for clients
4. (Optional.) Setting EDCA parameters of AC-VI or AC-VO queues for clients
5. (Optional.) Configuring a port to trust packet priority for priority mapping

Enabling WMM
About this task
All 802.11n, 802.11ac, and 802.11ax clients must support WMM. For 802.11n, 802.11ac, or
802.11ax clients to communicate with the associated AP, enable WMM when the radio operates in
802.11an, 802.11gn, 802.11ac, or 802.11ax mode.

3
Procedure
1. Enter system view.
system-view
2. Enter radio interface view.
interface wlan-radio interface-number
3. Enable WMM.
wmm enable
By default, WMM is enabled.

Setting EDCA parameters


1. Enter system view.
system-view
2. Enter radio interface view.
interface wlan-radio interface-number
3. Set EDCA parameters.
edca radio { ac-be | ac-bk | ac-vi | ac-vo } { ack-policy { noack |
normalack } | aifsn aifsn-value | ecw ecwmin ecwmin-value ecwmax
ecwmax-value | txoplimit txoplimit-value } *
The default values for EDCA parameters are shown in Table 1.
Table 1 Default EDCA parameter values

AC AIFSN ECWmin ECWmax TXOP Limit


AC-BK 7 4 10 0
AC-BE 3 4 6 0
AC-VI 1 3 4 94
AC-VO 1 2 3 47

Setting EDCA parameters of AC-BE or AC-BK queues for


clients
1. Enter system view.
system-view
2. Enter radio interface view.
interface wlan-radio interface-number
3. Set EDCA parameters of AC-BE or AC-BK queues for clients.
edca client { ac-be | ac-bk } { aifsn aifsn-value | ecw ecwmin
ecwmin-value ecwmax ecwmax-value | txoplimit txoplimit-value } *
The default values are shown in Table 2.
Table 2 Default EDCA parameter values of AC-BE or AC-BK queues for clients

AC AIFSN ECWmin ECWmax TXOP Limit


AC-BK 7 4 10 0
AC-BE 3 4 10 0

4
Setting EDCA parameters of AC-VI or AC-VO queues for
clients
1. Enter system view.
system-view
2. Enter radio interface view.
interface wlan-radio interface-number
3. Set EDCA parameters of AC-VI or AC-VO queues for clients.
edca client { ac-vi | ac-vo } { aifsn aifsn-value | cac { disable | enable }
| ecw ecwmin ecwmin-value ecwmax ecwmax-value | txoplimit
txoplimit-value } *
The default values are shown in Table 3.
Table 3 Default EDCA parameter values of AC-VI or AC-VO queues for clients

AC AIFSN ECWmin ECWmax TXOP Limit


AC-VI 2 3 4 94
AC-VO 2 2 3 47

4. (Optional.) Configure the CAC policy.


cac policy { channelutilization [ channelutilization-value ] | client
[ client-number ] }
By default, the client-based admission policy is used, and the maximum number of admitted
clients is 20.

Configuring a port to trust packet priority for priority mapping


About this task
When the packet trust mode is disabled, an AP assigns the port priority to all packets for the service
template.
Restrictions and guidelines
This feature takes effect only on uplink packets.
The port priority setting does not take effect if the trusted packet priority type is configured.
Procedure
1. Enter system view.
system-view
2. Enter service template view.
wlan service-template service-template-name
3. Configure the trusted packet priority type.
qos trust { dot11e | dscp }
By default, the port priority is trusted.
4. Set the port priority.
qos priority priority
By default, the port priority is 0.

5
Configuring bandwidth guaranteeing
1. Enter system view.
system-view
2. Set the maximum bandwidth for the specified radio mode.
wlan max-bandwidth { dot11a | dot11ac | dot11an | dot11b | dot11g |
dot11gac | dot11gn } bandwidth
The following default settings apply:
 30000 Kbps for dot11a and dot11g.
 250000 Kbps for dot11an, dot11gn, and dot11gac
 500000 Kbps for dot11ac.
 7000 Kbps for dot11b.
3. Enter radio interface view.
interface wlan-radio interface-number
4. Configure bandwidth guaranteeing.
bandwidth-guarantee { disable | enable }
By default, bandwidth guaranteeing is disabled.
5. Set a guaranteed bandwidth percentage for the specified service template.
bandwidth-guarantee service-template service-template-name percent
percent
By default, no guaranteed bandwidth percentage is set for a service template.

Configuring client rate limiting


About client rate limiting
By rate limit method, you can configure service-template-based, radio-based, or client-type-based
client rate limiting. By rate limit mode, you can configure the dynamic or static mode for client rate
limiting.
If more than one method and mode are configured, all settings take effect. The rate for a client will
be limited to the minimum value among all the client rate limiting settings.

Restrictions and guidelines


Service-template-based client rate limiting takes effect on all clients associated with the same
service template.
Client-type-based client rate limiting takes effect on all clients of the specified protocol.

Configuring service-template-based client rate limiting


1. Enter system view.
system-view
2. Enter service template view.
wlan service-template service-template-name
3. Configure service-template-based client rate limiting.

6
client-rate-limit { inbound | outbound } mode { dynamic cir cir [ min
min-cir ] [ max max-cir ] | static cir cir } [ cbs cbs ]
By default, service-template-based client rate limiting is not configured.

Configuring client-type-based client rate limiting


1. Enter system view.
system-view
2. Configure client-type-based client rate limiting.
wlan client-rate-limit { dot11a | dot11ac | dot11an | dot11b | dot11g
| dot11gac | dot11gn } { inbound | outbound } cir cir [ cbs cbs ]
By default, client-type-based client rate limiting is not configured.

Display and maintenance commands for WMM


Execute display commands in any view and reset commands in user view.

Task Command
display wlan wmm client [ interface
Display WMM statistics for clients. wlan-radio interface-number | mac-address
mac-address ]
display wlan wmm radio [ interface
Display WMM statistics for radios.
wlan-radio interface-number ]
reset wlan wmm client [ interface
Clear WMM statistics for clients. wlan-radio interface-number | mac-address
mac-address ]
reset wlan wmm radio [ interface wlan-radio
Clear WMM statistics for radios.
interface-number ]

WLAN QoS configuration examples


Example: Configuring basic WMM
Network configuration
As shown in Figure 2, enable WMM on the AP so that the AP and the client can prioritize the traffic.
Figure 2 Network diagram

IP Network

Switch AP Client

Procedure
# Create a service template named market, set the SSID to market, and enable the service
template.
<AP> system-view

7
[AP] wlan service-template market
[AP-wlan-st-market] ssid market
[AP-wlan-st-market] service-template enable
[AP-wlan-st-market] quit

# Bind service template market to WLAN-Radio 1/0/1.


[AP] interface wlan-radio 1/0/1
[AP-WLAN-Radio1/0/1] undo shutdown
[AP-WLAN-Radio1/0/1] service-template market

# Enable WMM.
[AP-WLAN-Radio1/0/1] wmm enable
[AP-WLAN-Radio1/0/1] quit

Verifying the configuration


# Display WMM statistics for radios.
[AP] display wlan wmm radio
Radio : 1
Client EDCA updates : 0
QoS mode : WMM
WMM status : Enabled
Radio max AIFSN : 15 Radio max ECWmin : 0
Radio max TXOPLimit : 32767 Radio max ECWmax : 0
CAC information
Clients accepted : 0
Voice : 0
Video : 0
Total request medium time(μs) : 0
Voice(μs) : 0
Video(μs) : 0
Calls rejected due to insufficient resources : 0
Calls rejected due to invalid parameters : 0
Calls rejected due to invalid medium time : 0
Calls rejected due to invalid delay bound : 0

Example: Configuring CAC


Network configuration
As shown in Figure 3, configure CAC to allow a maximum of 10 clients to use the AC-VO and AC-VI
queues.
Figure 3 Network diagram

IP Network

Switch AP Client

Procedure
# Create a service template named market, set the SSID to market, and enable the service
template.
<AP> system-view

8
[AP] wlan service-template market
[AP-wlan-st-market] ssid market
[AP-wlan-st-market] service-template enable
[AP-wlan-st-market] quit

# Bind service template market to WLAN-Radio 1/0/1.


[AP] interface wlan-radio 1/0/1
[AP-WLAN-Radio1/0/1] undo shutdown
[AP-WLAN-Radio1/0/1] service-template market

# Enable WMM for AC-VO and AC-VI queues, and configure a CAC policy to limit the number of
clients to 10.
[AP-WLAN-Radio1/0/1] wmm enable
[AP-WLAN-Radio1/0/1] edca client ac-vo cac enable
[AP-WLAN-Radio1/0/1] edca client ac-vi cac enable
[AP-WLAN-Radio1/0/1] cac policy client 10

Verifying the configuration


# Assume that a client requests to use a high-priority AC queue (AC-VO or AC-VI). Verify the
following information:
• If the number of clients using high-priority AC queues is smaller than the maximum number of
high-priority AC clients (10 in this example), the request is accepted.
• If the number of clients using high-priority AC queues is equal to the maximum number of
high-priority AC clients (10 in this example), the request is rejected. The AP decreases the
priority of packets from the client.

Example: Configuring traffic differentiation


Network configuration
As shown in Figure 4, configure priority mapping on the AP to add 802.11 packets from the client to
the AC-VO queue.
Figure 4 Network diagram

IP Network

Switch AP Client

Procedure
# Create a service template named market, set the SSID to market, and enable the service
template.
<AP> system-view
[AP] wlan service-template market
[AP-wlan-st-market] ssid market
[AP-wlan-st-market] service-template enable

# Set the 802.11e priority of 802.11 packets from the client to 7.


[AP-wlan-st-market] qos priority 7
[AP-wlan-st-market] quit

# Bind service template market to WLAN-Radio 1/0/1.


[AP] interface wlan-radio 1/0/1
[AP-WLAN-Radio1/0/1] undo shutdown

9
[AP-WLAN-Radio1/0/1] service-template market

# Enable WMM.
[AP-WLAN-Radio1/0/1] wmm enable
[AP-WLAN-Radio1/0/1] quit

Verifying the configuration


# Perform the following tasks on the AP:
• Execute the terminal monitor command to enable monitoring of logs on the current terminal.
• Execute the terminal debugging command to enable display of debug information on the
current terminal.
• Execute the debugging wlan wmm all command to enable all the WMM debugging features.
# Ping the client and the switch on the AP to verify that the network connections are correct.
# Verify that the priority of packets from the client to the AP is changed to 7 and the priority of
packets from the AP to the client is not changed.

Example: Configuring bandwidth guaranteeing


Network configuration
As shown in Figure 5, Clients 1, 2, and 3 access the network through SSIDs research, office, and
entertain, respectively.
For the network to operate correctly, guarantee 20% of the bandwidth for SSID office, 80% for
research, and none for entertain.
Figure 5 Network diagram

Client 1

office
Switch AP

Network research Client 2

entertain

Client 3

Procedure
# Create a service template named office, set the SSID to office, and enable the service template.
<AP> system-view
[AP] wlan service-template office
[AP-wlan-st-office] ssid office
[AP-wlan-st-office] service-template enable
[AP-wlan-st-office] quit

# Create a service template named research, set the SSID to research, and enable the service
template.
[AP] wlan service-template research
[AP-wlan-st-research] ssid research
[AP-wlan-st-research] service-template enable

10
[AP-wlan-st-research] quit

# Create a service template named entertain, set the SSID to entertain, and enable the service
template.
[AP] wlan service-template entertain
[AP-wlan-st-entertain] ssid entertain
[AP-wlan-st-entertain] service-template enable
[AP-wlan-st-entertain] quit

# Set the maximum bandwidth to 10000 Kbps for the 802.11ac radio.
[AP] wlan max-bandwidth dot11ac 10000

# Bind service templates office, research, and entertain to WLAN-Radio1/0/1.


[AP] interface wlan-radio 1/0/1
[AP-WLAN-Radio1/0/1] undo shutdown
[AP-WLAN-Radio1/0/1] service-template office
[AP-WLAN-Radio1/0/1] service-template research
[AP-WLAN-Radio1/0/1] service-template entertain

# Enable bandwidth guaranteeing.


[AP-WLAN-Radio1/0/1] bandwidth-guarantee enable

# Set the guaranteed bandwidth percentage to 20% for service template office and 80% for service
template research.
[AP-WLAN-Radio1/0/1] bandwidth-guarantee service-template office percent 20
[AP-WLAN-Radio1/0/1] bandwidth-guarantee service-template research percent 80
[AP-WLAN-Radio1/0/1] return

Verifying the configuration


# Verify that the rate of traffic from the AP to any client is not limited when the total traffic rate is
lower than 10000 Kbps.
# Send traffic from the AP to Client 1 and Client 2 at a rate of over 2000 Kbps and over 8000 Kbps,
respectively, to verify the following items:
• The AP sends traffic to Client 1 at 2000 Kbps.
• The AP sends traffic to Client 2 at 8000 Kbps.
• The rate of traffic from the AP to Client 3 is limited.

Example: Configuring service-template-based client rate


limiting
Network configuration
As shown in Figure 6, perform the following tasks on the AP:
• Configure static mode client rate limiting to limit the rate of incoming client traffic.
• Configure dynamic mode client rate limiting to limit the rate of outgoing client traffic.

11
Figure 6 Network diagram
Client 1

Switch AP

Network
Client 2

Procedure
# Create a service template named service, and set its SSID to service.
<AP> system-view
[AP] wlan service-template service
[AP-wlan-st-service] ssid service

# Limit the rate of incoming traffic to 8000 Kbps in static mode, and limit the rate of outgoing traffic to
8000 Kbps in dynamic mode.
[AP-wlan-st-service] client-rate-limit inbound mode static cir 8000
[AP-wlan-st-service] client-rate-limit outbound mode dynamic cir 8000
[AP-wlan-st-service] service-template enable
[AP-wlan-st-service] quit

# Bind service template service to the interface WLAN-Radio1/0/1.


[AP] interface wlan-radio 1/0/1
[AP-WLAN-Radio1/0/1] undo shutdown
[AP-WLAN-Radio1/0/1] service-template service
[AP-WLAN-Radio1/0/1] return

12

You might also like