Professional Documents
Culture Documents
Issue 07
Date 2018-06-18
All other trademarks and trade names mentioned in this document are the property of their respective
holders.
Notice
The purchased products, services and features are stipulated by the contract made between Huawei and
the customer. All or part of the products, services and features described in this document may not be
within the purchase scope or the usage scope. Unless otherwise specified in the contract, all statements,
information, and recommendations in this document are provided "AS IS" without warranties, guarantees
or representations of any kind, either express or implied.
The information in this document is subject to change without notice. Every effort has been made in the
preparation of this document to ensure accuracy of the contents, but all statements, information, and
recommendations in this document do not constitute a warranty of any kind, express or implied.
Website: http://www.huawei.com
Email: support@huawei.com
Overview
This document describes QoS implementations on a Huawei NE40E, NE80E, NE5000E,
CX600, and ME60, and introduces hardware-based QoS implementations on the forwarding
plane.
Product Version
This document does not provide implementation differences between product versions or
detailed parameters. The board implementation differences listed by this document are found
in VRPV5 version.
Change History
07 2018-6-18 The table "Step 1Table 1.1 Trusted Priority Fields" is modified.
The section "3.5.1Implementation Differences of BA Classification" is
modified.
06 2017-10-25 In the chapter "3.3.3BA and PHB":
"BA-symbol" is renamed as "Remark-symbol".
The description about the trusted priority field of "neither IP nor MPLS
packet" is modified.
Both the "Remark-symbol" and "PHB-symbol" keep unchanged if the
diffserv-mode { pipe | short-pipe } command is configured.
The description of "Rules for PHB Action" is modified.
The description of "Which Priority Field of the Inbound Packet Is Reset in
PHB Action" is modified.
The description of "Rules for Marking the EXP Field of New-added MPLS
Header" is modified.
The section "3.5.1Implementation Differences of BA Classification" is
modified.
The section "6.7.1Implementation Differences of MPLS DiffServ" is modified.
The section "DSCP Remarking Rules in MPLS VPN Scenarios" is added in the
chapter "6.3MPLS DiffServ Configuration".
The figures in chapter "5.3Congestion Avoidance" are modified.
05 2016-03-18 New chapter "4.5Capabilities for Policing and Shaping" is added.
New chapter "9QoS and Network Control Packets" is added.
New chapter "3.3.3BA and PHB" is added.
New chapter "6.3MPLS DiffServ Configuration" is added.
New chapter "3.6FAQ about Classification and Marking" is added.
New chapter "4.6FAQ about Policing and Shaping" is added.
The section "Impact of Queue Buffer on Jitter" in the chapter "5.4Impact of
Queue Buffer on Delay and Jitter" is modified.
The description about the process order of the remark, service-class and qos
car commands is added in the chapter "8Overall QoS Process on Routers".
04 2015-08-27 New chapter "3.5.1Implementation Differences of BA Classification" is added.
New chapter "3.5.2Implementation Differences of MF Classification" is added.
New chapter "4.4.1Implementation Differences of Policing and Shaping" is
added.
New chapter "5.6QoS Implementations on Different Boards" is added.
New chapter "6.7.1Implementation Differences of MPLS DiffServ" is added.
03 2015-08-21 The sentence "Therefore, Penultimate Hop Popping (PHP) is not supported in
Pipe mode." is deleted in the chapter "6.2MPLS DiffServ".
Issue 07 (2018-06-18) Huawei Proprietary and Confidential iv
Copyright © Huawei
Technologies Co., Ltd.
Special Topic - QoS About This Document
07 2018-6-18 The table "Step 1Table 1.1 Trusted Priority Fields" is modified.
The section "3.5.1Implementation Differences of BA Classification" is
modified.
06 2017-10-25 In the chapter "3.3.3BA and PHB":
"BA-symbol" is renamed as "Remark-symbol".
The description about the trusted priority field of "neither IP nor MPLS
packet" is modified.
Both the "Remark-symbol" and "PHB-symbol" keep unchanged if the
diffserv-mode { pipe | short-pipe } command is configured.
The description of "Rules for PHB Action" is modified.
The description of "Which Priority Field of the Inbound Packet Is Reset in
PHB Action" is modified.
The description of "Rules for Marking the EXP Field of New-added MPLS
Header" is modified.
The section "3.5.1Implementation Differences of BA Classification" is
modified.
The section "6.7.1Implementation Differences of MPLS DiffServ" is modified.
The section "DSCP Remarking Rules in MPLS VPN Scenarios" is added in the
chapter "6.3MPLS DiffServ Configuration".
The figures in chapter "5.3Congestion Avoidance" are modified.
05 2016-03-18 New chapter "4.5Capabilities for Policing and Shaping" is added.
New chapter "9QoS and Network Control Packets" is added.
New chapter "3.3.3BA and PHB" is added.
New chapter "6.3MPLS DiffServ Configuration" is added.
New chapter "3.6FAQ about Classification and Marking" is added.
New chapter "4.6FAQ about Policing and Shaping" is added.
The section "Impact of Queue Buffer on Jitter" in the chapter "5.4Impact of
Queue Buffer on Delay and Jitter" is modified.
The description about the process order of the remark, service-class and qos
car commands is added in the chapter "8Overall QoS Process on Routers".
04 2015-08-27 New chapter "3.5.1Implementation Differences of BA Classification" is added.
New chapter "3.5.2Implementation Differences of MF Classification" is added.
New chapter "4.4.1Implementation Differences of Policing and Shaping" is
added.
New chapter "5.6QoS Implementations on Different Boards" is added.
New chapter "6.7.1Implementation Differences of MPLS DiffServ" is added.
03 2015-08-21 The sentence "Therefore, Penultimate Hop Popping (PHP) is not supported in
Pipe mode." is deleted in the chapter "6.2MPLS DiffServ".
Issue 07 (2018-06-18) Huawei Proprietary and Confidential v
Copyright © Huawei
Technologies Co., Ltd.
Special Topic - QoS Contents
Contents
2 DiffServ Overview........................................................................................................................9
2.1 DiffServ Model...............................................................................................................................................................9
2.2 DSCP and PHB.............................................................................................................................................................10
2.3 Four Components in the DiffServ Model.....................................................................................................................13
6 MPLS QoS...................................................................................................................................149
6.1 MPLS QoS Overview.................................................................................................................................................149
6.2 MPLS DiffServ...........................................................................................................................................................150
6.3 MPLS DiffServ Configuration...................................................................................................................................156
6.4 MPLS-TE...................................................................................................................................................................159
6.5 MPLS DiffServ-Aware TE.........................................................................................................................................167
6.6 MPLS VPN QoS.........................................................................................................................................................182
6.7 QoS Implementations on Different Boards................................................................................................................188
6.7.1 Implementation Differences of MPLS DiffServ.....................................................................................................188
7 ATM QoS....................................................................................................................................189
7.1 Basic Concepts of ATM..............................................................................................................................................189
7.2 QoS of ATMoPSN and PSNoATM.............................................................................................................................198
11 References.................................................................................................................................227
11.1 IETF RFCs................................................................................................................................................................227
11.2 Broadband Forum Technical Specifications.............................................................................................................228
11.3 MEF Technical Specifications..................................................................................................................................229
12 Abbreviations...........................................................................................................................230
1 QoS Overview
Diversified services enrich users' lives but also increase the risk of traffic congestion on the
Internet. In the case of traffic congestion, services can encounter long delays or even packet
loss. As a result, services deteriorate or even become unavailable. Therefore, a solution to
resolve traffic congestion on the IP network is urgently needed.
The best way to resolve traffic congestion is actually to increase network bandwidths.
However, increasing network bandwidths is not practical in terms of operation and
maintenance costs.
The quality of service (QoS) that uses a policy to manage traffic congestion at a low cost has
been deployed. QoS aims to provide end-to-end service guarantees for differentiated services
and has played an overwhelmingly important role on the Internet. Without QoS, service
quality cannot be guaranteed.
Bandwidth/Throughput
Bandwidth, also called throughput, refers to the maximum number of bits allowed to transmit
between two ends within a specified period (1 second) or the average rate at which specific
data flows are transmitted between two network nodes. Bandwidth is expressed in bit/s.
As services become increasingly diversified, Internet Citizens expect higher bandwidths so
they can not only browse the Internet for news but also experience any number of popular
applications. The epoch-making information evolution continually delivers new and attractive
applications, such as new-generation multimedia, video transmission, database, and IPTV, all
of which demand extremely high bandwidths. Therefore, bandwidth is always the major focus
of network planning and provides an important basis for network analysis.
Two concepts, upstream rate and downstream rate, are closely related to bandwidth. The upstream rate
refers to the rate at which users can send or upload information to the network, and the downstream rate
refers to the rate at which the network sends data to users. For example, the rate at which users upload
files to the network is determined by the upstream rate, and the rate at which users download files is
determined by the downstream rate.
Delay
A delay refers to the period of time during which a packet is transmitted from a source to its
destination.
Use voice transmission as an example. A delay refers to the period during which words are
spoken and then heard. If a long delay occurs, voices become unclear or interrupted.
Most users are insensitive to a delay of less than 100 ms. If a delay ranging from 100 ms to
300 ms occurs, the speaker can sense slight pauses in the responder's reply, which can seem
annoying to both. If a delay greater than 300 ms occurs, both the speaker and responder
obviously sense the delay and have to wait for responses. If the speaker cannot wait but
repeats what has been said, voices overlap, and the quality of the conversation deteriorates
severely.
Jitters also affect protocol packet transmissions. Specific protocol packets are transmitted at a
fixed interval. If high jitters occur, such protocols alternate between Up and Down, adversely
affecting quality.
Jitter thrives on networks but service quality will not be affected if jitters do not exceed a
specific tolerance. Buffers can alleviate excess jitters but prolong delays.
Restoration time:2s
Standard Best effort service Availability>97.00%
Delay=N/A
Jitter=N/A
Loss NA
Restoration time:5s
Best-Effort
Best-Effort is the default service model on the Internet and applies to various network
applications, such as FTP and email. It is the simplest service model. Without network
approval or notification, an application can send any number of packets at any time. The
network then makes its best attempt to send the packets but does not provide any guarantee
for performance.
The Best-Effort model applies to services that have low requirements for delay and reliability.
IntServ
Before sending a packet, IntServ uses signaling to apply for a specific level of service from
the network. The application first notifies the network of its traffic parameters and specific
service qualities, such as bandwidths and delays. After receiving a confirmation that sufficient
resources have been reserved, the application sends the packets. The network maintains a state
for each packet flow and executes QoS behaviors based on this state to fulfill the promise
made to the application. The packets must be controlled within the range described by the
traffic parameters.
IntServ uses the Resource Reservation Protocol (RSVP) as signaling, which is similar to
Asynchronous Transfer Mode Static Virtual Circuit (ATM SVC), and adopts connection-
oriented transmission. RSVP is a transport layer protocol and does not transmit data at the
application layer. Like ICMP, RSVP functions as a network control protocol and transmits
resource reservation messages between nodes.
When RSVP is used for end-to-end communication, the routers including the core routers on
the end-to-end network maintain a soft state for each data flow. A soft state is a temporary
state that refreshes periodically using RSVP messages. Routers check whether sufficient
resources can be reserved based on these RSVP messages. The path is available only when all
involved routers can provide sufficient resources.
IntServ uses RSVP to apply for resources over the entire network, requiring that all nodes on
the end-to-end network support RSVP. In addition, each node periodically exchanges state
information with its neighbor, consuming a large number of resources. More importantly, all
nodes on the network maintain a state for each data flow. On the backbone network, however,
there are millions of data flows. Therefore, the IntServ model applies to edge networks and
does not widely apply to the backbone network.
DiffServ
DiffServ classifies packets on the network into multiple classes for differentiated processing.
When traffic congestion occurs, classes with a higher priority are given preference. This
function allows packets to be differentiated and to have different packet loss rates, delays, and
jitters. Packets of the same class are aggregated and sent as a whole to ensure the same delay,
jitter, and packet loss rate.
In the DiffServ model, edge routers classify and aggregate traffic. Edge routers classify
packets based on a combination of fields, such as the source and destination addresses of
packets, precedence in the ToS field, and protocol type. Edge routers also re-mark packets
with different priorities, which can be identified by other routers for resource allocation and
traffic control. Therefore, DiffServ is a flow-based QoS model.
Compared with IntServ, DiffServ requires no signaling. In the DiffServ model, an application
does not need to apply for network resources before transmitting packets. Instead, the
application notifies the network nodes of its QoS requirements by setting QoS parameters in
IP packet headers. The network does not maintain a state for each data flow but provides
differentiated services based on the QoS parameters of each.
DiffServ takes full advantage of network flexibility and extensibility and transforms
information in packets into per-hop behaviors, greatly reducing signaling operations.
Therefore, DiffServ not only adapts to Internet service provider (ISP) networks but also
accelerates IP QoS applications on live networks.
2 DiffServ Overview
DiffServ (DS) node: a network node that implements the DiffServ function.
DS boundary node: connects to another DS domain or a non-DS-aware domain. The DS
boundary node classifies and manages incoming traffic.
DS interior node: connects to DS boundary nodes and other interior nodes in one DS
domain. DS interior nodes implement simple traffic classification based on DSCP values,
and manage traffic.
DS domain: a contiguous set of DS nodes that adopt the same service policy and per-hop
behavior (PHB). One DS domain covers one or more networks under the same
administration. For example, a DS domain can be an ISP's networks or an organization's
intranet. For an introduction to PHB, see the next section.
DS region: consists of one or more adjacent DS domains. Different DS domains in one
DS region may use different PHBs to provide differentiated services. The service level
agreement (SLA) and traffic conditioning agreement (TCA) are used to allow for
differences between PHBs in different DS domains. The SLA or TCA specifies how to
maintain consistent processing of the data flow from one DS domain to another.
SLA: The SLA refers to the services that the ISP promises to provide for individual
users, enterprise users, or adjacent ISPs that need intercommunication. The SLA covers
multiple dimensions, including the accounting protocol. The service level specification
(SLS) provides technique description for the SLA. The SLS focuses on the traffic control
specification (TCS) and provides detailed performance parameters, such as the
committed information rate (CIR), peak information rate (PIR), committed burst size
(CBS), and peak burst size (PBS).
DSCP
RFC 1349 redefined the ToS field for IPv4 packets and added a C bit to the ToS field to
indicate the Monetary cost. Then, RFC 2474 defined bits 0 to 5 in the ToS field of IPv4 packet
headers as the DSCP value and renamed the ToS field to “DS”.
In an IPv4 packet, the six left-most bits (0 to 5) in the DS field are defined as the DSCP value,
and the two right-most bits (6 and 7) are reserved bits. Bits 0 to 2 are the Class Selector Code
Point (CSCP) value, indicating a class of DSCP. Devices that support the DiffServ function
perform forwarding behaviors for packets based on the DSCP value.
In IPv6 packet headers, two fields are related to QoS: TC and Flow Label (FL). The TC field
contains eight bits and functions the same as the ToS field in IPv4 packets to identify the
service type. The FL field contains 20 bits and identifies packets in the same data flow. The
FL field, together with the source and destination addresses, uniquely identifies a data flow.
All packets in one data flow share the same FL field, and devices can rapidly process packets
in the same data flow.
PHB
Per-hop Behavior (PHB) is a description of the externally observable forwarding treatment
applied at a differentiated services-compliant node to a behavior aggregate. A DS node
performs the same PHB for packets with the same DSCP value. The PHB defines some
forwarding behaviors but does not specify the implementation mode.
At present, the IETF defines four types of PHBs: Class Selector (CS), Expedited Forwarding
(EF), Assured Forwarding (AF), and best-effort (BE). BE PHB is the default.
CS6 CS6 and CS7 PHBs are used for protocol packets by default, such as OSPF and
and BGP packets. If these packets are not forwarded, protocol services are interrupted.
CS7
EF EF PHB is used for voice services. Voice services require a short delay, low jitter,
and low packet loss rate, and are second only to protocol packets in terms of
importance.
PHB Applications
NOTE
The bandwidth dedicated to EF PHB must be restricted so that other services can use the
bandwidth.
AF3 AF3 PHB is used for BTV services of IPTV. Live programs are real-time services,
requiring continuous bandwidth and a large throughput guarantee.
AF2 AF2 PHB is used for VoD services of IPTV. VoD services require lower real-time
performance than BTV services and allow delays or buffering.
AF1 AF1 PHB is used for leased-line services, which are second to IPTV and voice
services in terms of importance. Bank-based premium services, one type of
leased-line services, can use the AF4 or even EF PHB.
BE BE PHB applies to best-effort services on the Internet, such as email and telnet
services.
Traffic marking refers to external re-marking, which is implemented on outgoing packets. Re-marking
modifies the priority field of packets to relay QoS information to the next-hop device.
Internal marking is used for internal processing and does not modify packets. Internal marking is
implemented on incoming packets for the device to process the packets based on the marks before
forwarding them. The concept of internal marking is discussed later in this document.
Policing and Shaping: restricts the traffic rate to a specific value. When traffic exceeds
the specified rate, traffic policing drops excess traffic, and traffic shaping buffers excess
traffic.
Congestion management: places packets in queues for buffering when traffic
congestion occurs and determines the forwarding order based on a specific scheduling
algorithm.
Congestion avoidance: monitors network resources. When network congestion
intensifies, the device proactively drops packets to regulate traffic so that the network is
not overloaded.
The four QoS components are performed in a specific order, as shown in the following figure.
The QoS components are performed at different locations on the network, as shown in the
following figure. In principle, traffic classification, traffic re-marking, and traffic policing are
implemented on the inbound user-side interface, and traffic shaping is implemented on the
outbound user-side interface (if packets of various levels are involved, queue scheduling and a
packet drop policy must be configured on the outbound user-side interface). Congestion
management and congestion avoidance are configured on the outbound network-side
interface.
Traffic Behaviors
A traffic classifier is configured to provide differentiated services and must be associated with
a certain traffic control or resource allocation behavior, which is called a traffic behavior.
The following table describes traffic behaviors that can be implemented individually or jointly
for classified packets on a Huawei router.
URPF (Unicast Reverse Path Prevents the source address spoofing attack. URPF
Forwarding) obtains the source IP address and the inbound interface of
a packet and checks them against the forwarding table. If
the source IP address is not found, URPF considers the
source IP address as a pseudo address and drops the
packet.
Flow mirroring Allows a device to copy an original packet from a
mirrored port and to send the copy to the observing port.
Flow sampling Collects information about specific data flow, such as
timestamps, source address, destination address, source
port number, destination port number, ToS value, protocol
number, packet length, and inbound interface information,
to intercept specific users.
The EXP field is 3 bits long and indicates precedence. The value ranges from 0 to 7 with a
larger value reflecting a higher precedence.
The precedence field in an IP header also has three bits. Therefore, one precedence value in an
IP header exactly corresponds to one precedence value in an MPLS header. However, the
DSCP field in an IP header has 6 bits, unlike the EXP length. Therefore, multiple DSCP
values correspond to only one EXP value. As the IEEE standard defines, the three left-most
bits in the DSCP field (the CSCP value) correspond to the EXP value, regardless of what the
three right-most bits are.
The PRI field is 3 bits long and indicates precedence. The value ranges from 0 to 7 with a
larger value reflecting a higher precedence.
Table 1.1 Mapping between the 802.1p/IP Precedence value and applications
802.1p/IP Precedence Typical Applications
3.3 BA Classification
3.3.1 What Is BA Classification
Behavior Aggregate (BA) classification allows the device to classify packets based on related
values as follows:
DSCP value of IPv4 packets
TC value of IPv6 packets
EXP value of MPLS packets
802.1p value of VLAN packets
CLP value of ATM packets
It is used to simply identify the traffic that has the specific priority or class of service (CoS)
for mapping between external and internal priorities.
BA classification confirms that the priority of incoming packets on a device is trusted and
mapped to the service-class and color based on a priority mapping table. The service-class and
color of outgoing packets are then mapped back to the priority. For details about priority
mapping, see section 3.3.2QoS Priority Mapping.
To configure BA classification on a Huawei device, configure a DiffServ (DS) domain, define
a priority mapping table for the DS domain, and bind the DS domain to a trusted interface.
BA classification applies to the DS internal nodes.
Service-class
Service-class refers to the internal service class of packets. Eight service-class values are
available: class selector 7 (CS7), CS6, expedited forwarding (EF), assured forwarding 4
(AF4), AF3, AF2, AF1, and best effort (BE). Service-class determines the type of queues to
which packets belong.
The priority of queues with a specific service-class is calculated based on scheduling
algorithms.
If queues with eight service-class all use priority queuing (PQ) scheduling, the queues
are displayed in descending order of priorities: CS7 > CS6 > EF > AF4 > AF3 > AF2 >
AF1 > BE.
If the BE queue uses PQ scheduling (rarely on live networks) but all the other seven
queues use weighted fair queuing (WFQ) scheduling, the BE queue is of the highest
priority.
If queues with eight service-class all use WFQ scheduling, the priority is irrelevant to
WFQ scheduling.
More details about queue scheduling are provided later in this document.
Color
Color, referring to the drop precedence of packets on a device, determines the order in which
packets in one queue are dropped when traffic congestion occurs. As defined by the Institute
of Electrical and Electronics Engineers (IEEE), the color of a packet can be green, yellow, or
red.
Drop precedences are compared based on the configured parameters. For example, if a
maximum of 50% of the buffer area is configured to store packets colored Green, whereas a
maximum of 100% of the buffer area is configured to store packets colored Red, the drop
precedence of packets colored Green is higher than that of packets colored Red.
IEEE defines eight PHBs (CS7, CS6, EF, AF4, AF3, AF2, AF1, and BE) and further defines four PHBs
for three drop precedences. Therefore, the total number of PHBs is 16 (4 + 4 x 3 = 16).
There are 64 DSCP values, allowing each PHB to correspond to a DSCP value. However, there are only
eight 802.1p values, causing some PHBs not to have corresponding 802.1p values. Generally the eight
802.1p values correspond to the eight scheduling precedence. IEEE 802.1ad defines STAG and CTAG
formats, with the STAG supporting Drop Eligible Indicator (DEI) while the CTAG does not. IEEE
802.1ad provides a 3-bit Priority Code Point (PCP) field that applies to both the CTAG and STAG to
specify the scheduling and drop precedence. PCP allows an 802.1p value to indicate both the scheduling
and drop precedences, and also brings the concepts of 8p0d, 7p1d, 6p2d, and 5p3d. The letter p indicates
the scheduling precedence, and the letter d indicates the drop precedence. For example, 5p3d supports
five scheduling precedences and three drop precedences.
The default and 5p3d domains exist by default and cannot be deleted, and only the default
domain can be modified.
Table 1.1 Default mapping from the DSCP value to the service-class and color
DSCP Service- Color DSCP Service- Color
class class
Table 1.2 Default mapping from the service-class and color to the DSCP value
Service-class Color DSCP
BE Green 0
AF1 Green 10
AF1 Yellow 12
AF1 Red 14
AF2 Green 18
AF2 Yellow 20
AF2 Red 22
AF3 Green 26
AF3 Yellow 28
AF3 Red 30
AF4 Green 34
AF4 Yellow 36
AF4 Red 38
EF Green 46
CS6 Green 48
CS7 Green 56
Table 1.3 Default mapping from the IP Precedence/MPLS EXP/802.1p to the service-class and
color
IP Precedence/MPLS Service-class Color
EXP/802.1p
0 BE Green
1 AF1 Green
2 AF2 Green
3 AF3 Green
4 AF4 Green
5 EF Green
6 CS6 Green
7 CS7 Green
Table 1.4 Default mapping from the service-class and color to IP Precedence/MPLS EXP/802.1p
Service-class Color IP Precedence/MPLS
EXP/802.1p
BE Green 0
AF1 Green, Yellow, Red 1
AF2 Green, Yellow, Red 2
AF3 Green, Yellow, Red 3
AF4 Green, Yellow, Red 4
EF Green 5
CS6 Green 6
CS7 Green 7
As shown in Figure 1.1, the number that ranges from 0 to 7 indicates the 802.1p value. The
value in the format of number x+letter DE indicates that the 802.1p priority is x and the
drop_eligible value is true. If the drop_eligible value is false, the drop precedence can be
ignored. If the drop_eligible value is true, the drop precedence cannot be ignored.
The 5p3d domain on a Huawei router uses an IEEE 802.1ad-compliant priority mapping table
by default. Table 1-9 shows the mapping table that is designed to match the IEEE 802.1ad.
The default mapping between the 802.1p value, service-class, and color for the 5p3d domain
on a Huawei router is shown in Table 1.2 and Table 1.3.
Table 1.2 Mapping from the 802.1p value to the service-class and color
802.1p Service-class Color
0 BE Yellow
1 BE Green
2 AF2 Yellow
3 AF2 Green
4 AF4 Yellow
5 AF4 Green
6 CS6 Green
7 CS7 Green
The mapping from the 802.1p value to the service-class may apply to an inbound interface that belongs
to a non-5p3d domain, leading to eight 802.1p values in Table 1.2. The outbound interface belongs to a
5p3d domain, leading to five service-classes in Table 1-10: BE, AF2, AF4, CS6, and CS7.
Table 1.3 Mapping from the Service-class and Color to the 802.1p Value
Service-class Color 802.1p
BE Green 1
AF1 Green 1
AF1 Yellow 0
AF1 Red 0
AF2 Green 3
AF2 Yellow 2
AF2 Red 2
AF3 Green 3
AF3 Yellow 2
AF3 Red 2
AF4 Green 5
AF4 Yellow 4
AF4 Red 4
EF Green 5
CS6 Green 6
CS7 Green 7
In Table 1.3, the mapping from the service-class and color to the 802.1p value may apply to an inbound
interface that uses a 5p3d domain or DSCP, EXP, or IP precedence as a basis for mapping, leading to
eight service-classes. The outbound interface may use a non-5p3d domain, leading to eight 802.1p
values.
The device takes PHB action only when both the two symbols are set as "Y". There is an
exceptional case, that is, if the outbound board is Type-C, the device takes PHB action when
the "PHB-symbol" is set to "Y", regardless of the "Remark-symbol".
By default, the Remark-symbol is set as "N", and the PHB-symbol is set as "Y" in the
V600R002 and the earlier versions, and "N" in the V600R003 and the later versions.
Both the Remark and PHB Symbols can be changed by commands (Table 1.1).
On Type-C boards, the "Remark-symbol" is always set as "Y" and cannot be changed by commands.
trust upstream The service-class and color of the packet are Both the Remark and PHB symbols
reset based on the priority field(s) (such as are set as "Y".
DSCP, 802.1p, EXP, etc.) of the packet (BA
action is taken).
diffserv-mode { pipe | The service-class and color of the packet are Both the "Remark-symbol" and
short-pipe } reset according to the diffserv-mode service- "PHB-symbol" keep unchanged.
class color command.
diffserv-mode uniform This command is default configuration and Both the "Remark-symbol" and
does not affect the actions of the inbound and "PHB-symbol" keep unchanged.
outbound boards.
service-class The service-class and color of the flow are reset The "Remark-symbol" is set as
according to the service-class service-class "Y" if the parameter no-remark is
color color command. not configured within the
command.
The "Remark-symbol" is set as
"N" if the parameter no-remark is
configured within the command.
qos default-service-class The service-class is reset according to the qos Both the "Remark-symbol" and
default-service-class service-class command. "PHB-symbol" keep unchanged.
remark (inbound) The service-class and color of the packet are The "Remark-symbol" is set as "Y"
reset. and the "PHB-symbol" keep
Type-B board: Whether the packet is unchanged.
remarked or not depends on the "PHB-symbol"
set by the outbound boards of the packet.
Other boards: the "Remark-symbol" is set as
"Y" and the "PHB-symbol" is not affected. The
inbound board takes BA action and remarks the
inbound packets, regardless of the "Remark-
symbol" and "PHB-symbol".
remark (outbound) The service-class and color of the packet are Both the "Remark-symbol" and
reset. "PHB-symbol" keep unchanged.
The outbound board remarks the outbound
packets, regardless of the "Remark-symbol"
and "PHB-symbol".
For example, assume that the remark dscp 11
command is configured for outbound interface
and the service-class and color of the packet are
<ef, green>. The DSCP of the packet is set as
11 directly, rather than the value mapped from
<ef, green> based on the downstream PHB
mapping table. If the outbound packet has vlan
tag, the 802.1p of the vlan tag is set based on
<ef, green> and the downstream PHB mapping
table. If both the remark dscp 11 command
and the remark 8021p command are
configured for the outbound interface, then
both the DSCP and the 802.1p of the packet are
modified directly according the remark
commands.
qos phb enable - The "PHB-symbol" is set as "Y".
qos phb disable - The "PHB-symbol" is set as "N".
qos car { green | yellow | The service-class and color of the packet are Both the "Remark-symbol" and
red } pass service-class reset. "PHB-symbol" keep unchanged.
color
Any Any N N No
Any Any Y N No
Any Any Y Y Yes
Any Type-C N Y Yes
Type-C Any N Y Yes
Any boards except Any boards except N Y No
Type-C Type-C
○trust upstream command Any types No field is trusted and the packet is mapped to <BE,
○trust 8021p command Green>.
Table 1.1 Rules for setting DSCP and 802.1p in L2 Forwarding (including VLL/VPLS) Scenario
Outbound configuration (● DSCP EXP 802.1p
indicates configured, ○
indicates not configured)
Note
The rules for PHB action performing, see the sections “Remark and PHB Symbols” and “Rules for PHB Action”.
Table 1.2 Rules for setting DSCP and 802.1p in L3 Forwarding (including MPLS L3VPN) scenarios
Outbound configuration DSCP 802.1p
(● indicates configured, ○
indicates not configured)
Table 1.3 Rules for setting DSCP, EXP and 802.1p in MPLS Forwarding Scenarios (on P nodes)
Outbound DSCP EXP 802.1p
configuration (●
indicates configured,
○ indicates not
configured)
●qos phb enable table (Default Keep unchanged, or set to 0 for new
○trust 8021p mapping table for new-added VLAN tag, if outbound
Type-B). board is Type-A.
According to the <service-class,
color> of the packet and the
downstream priority mapping table if
outbound board is other type.
●trust upstream Keep According to the <service-class,
●trust 8021p unchanged. color> of the packet and the
downstream priority mapping table if
●qos phb enable outbound board is other type.
●trust 8021p
Note:
In this table, the precondition of “According to the <service-class, color> of the packet and the downstream
priority mapping table” is the outbound board performing PHB action. If the PHB action is not performed,
the setting rules is the same as the default setting rules (see the rule for outbound configuration is without
trust upstream and qos phb enable commands.
The rules for PHB action performing, see the sections “Remark and PHB Symbols” and “Rules for PHB
Action”.
Table 1.1 Rules for Marking the EXP Field of New-added MPLS Header
EXP Outbound board Rules
Outer EXP Type-A According to the <service-class, color> of the packet and the
downstream priority mapping table if PHB action is
performed.
Set as 0 if PHB action is not performed.
Type-B According to the <service-class, color> of the packet and the
mapping table of the specified DS domain in downstream if
PHB action is performed.
According to the <service-class, color> of the packet and the
default domain if PHB action is not performed.
Type-C, Type-D According to the <service-class, color> of the packet and the
mapping table of the specified DS domain in downstream if
PHB action is performed.
According to the service-class (0 to 7 for BE to CS7) if PHB
action is not performed.
Inner EXP in Any type If PHB action is performed: according to the <service-class,
VPLS color> of the packet and the mapping table of the DS domain
scenario specified the mpls-inner-exp phb domain command (VSI
instance view) (by default, using the DS domain specified by
the NNI interface).
If PHB action is not performed: same as the rule for setting
outer EXP when PHB action is not performed.
Inner EXP in Type-A or Type-D According to the <service-class, color> of the packet and the
VLL and downstream priority mapping table if PHB action is
L3VPN performed. Inherits the EXP set by the upstream board if mpls-
scenarios inner-exp phb disable command (slot view) is configured for
the downstream board.
Inherits the EXP set by the upstream board if PHB action is
not performed.
Type-B or Type-C Inherits the EXP set by the upstream board.
Note:
The rules for PHB action performing, see the sections “Remark and PHB Symbols” and “Rules for PHB Action”.
The rules for setting the inner EXP of VLL/L3VPN by upstream board are:
Type-A: according to the service-class (0 to 7 for BE to CS7)
Other boards: inner EXP of VLL is set according to the <service-class, color> of the packet and the mapping table of the DS
domain specified the mpls l2vc diffserv domain command (interface view, Default domain by default), and inner EXP of
L3VPN is set according to the <service-class, color> of the packet and the mapping table of the DS domain specified the
mpls-inner-exp phb domain command (VPN instance view). By default, inner EXP is set according to the service-class (0
to 7 for BE to CS7) if upstream board is Type-A and Type-D, and set according to the <service-class, color> of the packet
and the default domain mapping table if upstream board is Type-B or Type-C.
3.4 MF Classification
3.4.1 What Is MF Classification
Multi-Field Classification
As networks rapidly develop, services on the Internet become increasingly diversified.
Various services share limited network resources, especially when multiple services use port
number 80. Because of this increasing demand, network devices are required to possess a high
degree of sensitivity for services, including an in-depth parsing of packets and a
comprehensive understanding of any packet field at any layer. This level of sensitivity rises
far beyond what behavior aggregate (BA) classification can offer. Multi-field (MF)
classification can be deployed to help address this sensitivity deficit.
MF classification allows a device to elaborately classify packets based on certain conditions,
such as 5-tuple (source IP address, source port number, protocol number, destination address,
and destination port number). To simplify configurations and facilitate batch modification,
MF classification commands are designed based on a template. For details, see section
3.4.2Traffic Policy Based on MF Classification.
MF classification is implemented at the network edge. The following table shows three modes
of MF classification on a Huawei router.
MF Items Remarks
Classification
Layer 2 (link 802.1p value in the outer VLAN Items can be jointly used as
layer) MF tag required.
classification
802.1p value in the inner VLAN
tag
Source MAC address
Destination MAC address
Protocol field encapsulated in
Layer 2 headers
IP MF IPv4 DSCP value Items can be jointly used as
classificat required.
ion IP precedence
Source IPv4 address
Destination IPv4 address
IPv4 fragments
TCP/UDP source port number
TCP/UDP destination port
number
Protocol number
TCP synchronization flag
IPv6 DSCP value Items can be jointly used as
required.
Protocol number
The Type-A and Type-B boards
Source IPv6 address support matching 96 bits length at
most for the source IPv6 address.
Destination IPv6 address For an IPv6 address with the
length of 128 bits, the boards
TCP/UDP source port number
support matching the bits 0 to 31
TCP/UDP destination port and 64 to 127.
number
MPLS MF EXP A maximum of four labels can be
MF Items Remarks
Classification
In addition to the preceding items that can be used in MF classification, a Huawei router can perform
MF classification based on VLAN IDs, but does not use the VLAN ID solely. Instead, the MF
classification policy is bound to a VLAN ID (the same as being bound to an interface). The three MF
classification modes shown in Table 1-1 support MF classification based on VLAN IDs.
For example:
Restrict the bandwidth to 100 Mbit/s for packets with the VLAN ID 100 and the 802.1p value 5
Restrict the bandwidth to 100 Mbit/s for packets with the VLAN ID 200 and the 802.1p value 5
Restrict the bandwidth to 100 Mbit/s for packets with the VLAN ID 300 and the 802.1p value 5
The configurations are as follows:
traffic classifier test
if-match 8021p 5
interface xxx
traffic-policy test inbound vlan 100 link-layer //"Link-layer"
indicates Layer 2 MF classification.
traffic-policy test inbound vlan 200 link-layer
traffic-policy test inbound vlan 300 link-layer
In addition, a Huawei router supports MF classification based on time periods for traffic control. MF
classification based on time periods allows carriers to configure a policy for each time period so that
network resources are optimized. For example, analysis on the usage habits of subscribers shows that the
network traffic peaks from 20:00 to 22:00, during which large volumes of P2P and download services
affect the normal use of other data services. Carriers can lower the bandwidths for P2P and download
services during this time period to prevent network congestion.
Configuration example:
time-range test 20:00 to 22:00 daily
acl 2000
rule permit source 129.9.0.0 0.0.255.255 time-range test //Configure
time-range in the ACL rule to specify the period during which the rule takes
effect.
traffic classifier test
if-match acl 2000
interface xxx
traffic-policy test inbound
Figure 1.1 Relationships between an interface, traffic policy, traffic behavior, traffic classifier, and
ACL.
(3) One or more if-match clauses can be configured for a traffic classifier, and each if-match
clause can specify an ACL. An ACL can be applied to different traffic classifiers and contains
one or more rules.
(4) One or more actions can be configured in a traffic behavior.
If a traffic policy works in shared mode, the interfaces to which the traffic policy applies must
be located on the same board.
As shown in the figure, a packet is matched against traffic classifiers in the order in which
those classifiers are configured. If the packet matches a traffic classifier, no further match
operation is performed. If not, the packet is matched against the following traffic classifiers
one by one. If the packet matches no traffic classifier at all, the packet is forwarded with no
traffic policy executed.
If multiple if-match clauses are configured for a traffic classifier, the packet is matched
against them in the order in which they are configured. If an ACL or UCL is specified in an if-
match clause, the packet is matched against the multiple rules in the ACL or UCL. The system
first checks whether the ACL or UCL exists. (A non-existent ACL or UCL can be applied to a
traffic classifier.) If the packet matches a rule in the ACL or UCL, no further match operation
is performed.
A permit or deny action can be specified in an ACL for a traffic classifier to work with
specific traffic behaviors as follows:
If the deny action is specified in an ACL, the packet that matches the ACL is denied,
regardless of what the traffic behavior defines.
If the permit action is specified in an ACL, the traffic behavior applies to the packet that
matches the ACL.
For example, the following configuration leads to such a result: the IP precedence of packets
with the source IP address 50.0.0.1/24 are re-marked as 7; the packets with the source IP
address 60.0.0.1/24 are dropped; the packets with the source IP address 70.0.0.1/24 are
forwarded with the IP precedence unchanged.
acl 3999
rule 5 permit ip source 50.0.0.0 0.255.255.255
rule 10 deny ip source 60.0.0.0 0.255.255.255
traffic classifier acl
if-match acl 3999
traffic behavior test
remark ip-pre 7
traffic policy test
classifier acl behavior test
interface GigabitEthernet1/0/1
traffic-policy test inbound
For traffic behavior mirroring or sampling, even if a packet matches a rule that defines a deny action, the
traffic behavior takes effect for the packet.
For details about the order in which a packet is matched against multiple rules in an ACL or UCL, see
section 3.4.3ACL Rules in MF Classification.
Numbe Basic ACL 2000 - Filters packets based on the source IP addresses
red 2999 of packets.
ACL
Advanced ACL 3000 - Filters packets based on the source IP address,
3999 destination IP address, protocol number ,
TCP/UDP source port number, TCP/UDP
destination port number.
Ethernet frame 4000 - Filters packets based on the Ethernet frame
header-based 4999 header.
ACL
Ethernet frame 802.1p value. Note: in a QinQ scenario, it indicates the outer VLAN
header-based tag.
ACL 802.1p value in the inner VLAN tag. The 802.1p value in the inner
VLAN tag is used in a QinQ scenario.
Destination MAC address.
Source MAC address.
Protocol Type
UCL Filter elements supported by the UCL are the same as those supported
by the advanced ACL, with the user group element replacing the source
IP address element. For details about the UCL, see the later part of this
section.
MPLS ACL MPLS Exp.
MPLS label.
MPLS TTL (Time To Live).
In the config mode, the system matches rules in ascending order of rule IDs. As a result,
a latter configured rule may be matched earlier.
If the auto mode is used, the system automatically allocates rule IDs, and places the most
precise rule in the front of the ACL based on the depth-first principle. This can be
implemented by comparing the address wildcard. The smaller the wildcard, the narrower
the specified range.
For example, 129.102.1.1 0.0.0.0 specifies a host with the IP address 129.102.1.1, and
129.102.1.1 0.0.0.255 specifies a network segment with the network segment address
ranging from 129.102.1.1 to 129.102.1.255. The former specifies a narrower host range
and is placed before the latter.
The detailed operations are as follows:
− For basic ACL rules, the source address wildcards are compared. If the source
address wildcards are the same, the system matches packets against the ACL rules
based on the configuration order.
− For advanced ACL rules, the protocol ranges and then the source address wildcards
are compared. If both the protocol ranges and the source wildcards are the same, the
destination address wildcards are then compared. If the destination address
wildcards are also the same, the ranges of source port numbers are compared with
the smaller range being allocated a higher precedence. If the ranges of source port
numbers are still the same, the ranges of destination port numbers are compared
with the smaller range being allocated a higher precedence. If the ranges of
destination port numbers are still the same, the system matches packets against ACL
rules based on the configuration order of rules.
For example, a wide range of packets are specified for packet filtering. Later, it is
required that packets matching a specific feature in the range be allowed to pass. If the
auto mode is configured in this case, the administrator only needs to define a specific
rule and does not need to re-order the rules because a narrower range is allocated a
higher precedence in the auto mode.
For example, the following commands are configured one after another:
rule deny ip dscp 30 destination 1.1.0.0 0.0.255.255
rule permit ip dscp 30 destination 1.1.1.0 0.0.0.255
If the config mode is used, the rules in the ACL are displayed as follows:
acl 3000
rule 5 deny ip dscp 30 destination 1.1.0.0 0.0.255.255
rule 10 permit ip dscp 30 destination 1.1.1.0 0.0.0.255
If the auto mode is used, the rules in the ACL are displayed as follows:
acl 3000
rule 1 permit ip dscp 30 destination 1.1.1.0 0.0.0.255
rule 2 deny ip dscp 30 destination 1.1.0.0 0.0.255.255
If the device receives a packet with DSCP value 30 and destination IP address 1.1.1.1, the
packet is dropped when the config mode is used, but the packet is allowed to pass when the
auto mode is used.
UCL
The order in which packets are matched against rules in a UCL is the same as that in other
types of ACLs. Unlike other types of ACLs, the UCL has an additional user-group field,
which is used to identify the source or destination user group. Table 1-1 shows four types of
UCLs.
User-to-network UCL: specifies the filter element as the source user group and applies
to upstream traffic on the user side and downstream traffic on the network side.
User-to-user UCL: specifies the filter element as the destination user group and applies
to upstream and downstream traffic on the user side.
Network-to-network UCL: specifies the filter element as neither the source user group
nor the destination user group and applies to upstream and downstream traffic on the
network side.
Network-to-user UCL: specifies the filter element as both the source user groups and
the destination user groups and applies to upstream traffic on the network side and
downstream traffic on the user side.
3.4.4 QPPB
QoS Policy Propagation on BGP (QPPB) is a special Multi-Field (MF) classification
application.
Background
The following example uses the network shown in Figure 1.1 to illustrate how QPPB is
introduced. In this networking, the AS 400 is a high priority network. All packets transmitted
across AS 400 must be re-marked with an IP precedence for preferential transmission. To
meet such requirements, edge nodes (Node-A, Node-B, and Node-C) in AS 100 must be
configured to re-mark the IP precedence of packets destined for or sent from AS 400. The
edge interface connecting to AS 400 on Node-C must be configured to re-mark packets.
Node-A or Node-B must be configured to perform traffic classification for packets destined
for an IP address in AS 400. If a large number of IP addresses or address segments are
configured in AS 400, Node-A and Node-B encounter excess traffic classification operations.
In addition, if the network topology is prone to changes, a large number of configuration
modifications are required.
To simplify configuration on Node-A and Node-B, QPPB is introduced. QPPB allows packets
to be classified based on AS information or community attributes.
QPPB, as the name implies, applies QoS policies using Border Gateway Protocol (BGP). The
primary advantage of QPPB is that BGP route attributes can be set for traffic classification by
the route sender and the route receiver must only configure an appropriate policy for receiving
routes. The route receiver sets QoS parameters for packets matching the BGP route attributes
and then implements corresponding traffic behaviors before data forwarding. When the
network topology changes, the BGP route receiver does not modify local configurations if the
route attributes of the advertised BGP routes do not change.
Implementation
As shown in Figure 1.1, Node-A and Node-C are IBGP peers in AS 100. Node-A is
configured to re-mark IP precedence for packets destined for or sent from AS 400. The QPPB
implementation is as follows:
1. The BGP route sender (Node-C) sets specific attributes for BGP routes (such as the
AS_Path, community attributes, and extended community attributes).
2. Node-C advertises these BGP routes.
3. The BGP route receiver (Node-A) presets attribute entries. After receiving BGP routes
matching the attribute entries, the BGP route receiver sets a behavior ID identifying a
traffic behavior in the forwarding information base (FIB) table.
4. Before transmitting packets, Node-A obtains the behavior IDs of the routes from the FIB
for these packets and performs the corresponding traffic behaviors for these packets.
The preceding process demonstrates that QPPB does not transmit the QoS policy along with
the BGP route information. The route sender sets route attributes for routes to be advertised,
and the route receiver sets the QoS policy based on the route attributes of the destination
network segment.
As shown in Figure 1.1, QPPB allows the edge devices in AS 100 to classify inter-AS
packets. For example, to configure rate limit on Node-C for packets transmitted between AS
200 and AS 400, perform the following operations:
For packets from AS 200 to AS 400, apply destination address-based QPPB on all Node-
C’s interfaces that belong to AS 100.
For packets from AS 400 to AS 200, apply source address-based QPPB on the Node-C’s
interface connecting to AS 400.
FIB-based packet forwarding applies to upstream traffic but not downstream traffic.
Therefore, QPPB is enabled on the upstream interface of traffic.
As shown in Figure 1.1, PEs connect to multiple VPNs. A PE can set route attributes, such as
community, for a specified VPN instance before advertising any route. After receiving the
routing information, the remote peer imports the route and the associated QoS parameters to
the FIB table. This enables the traffic from CEs to be forwarded based on the corresponding
traffic behaviors. In this manner, different VPNs can be provided with different QoS
guarantees.
As shown in Figure 1.1, QPPB is implemented as follows for user-to-ISP traffic accounting:
BGP routes are advertised with community attributes.
BGP routes are imported and the community attributes of the BGP routes are matched
against attribute entries. Behavior IDs are set in the FIB table for the routes matching the
attribute entries.
A QPPB policy is configured. A corresponding traffic behavior (such as statistics
collection, CAR, and re-marking) is configured for the qos-local-id (Behavior ID).
Destination address-based QPPB is enabled for incoming traffic.
The QPPB policy is applied to incoming traffic on the user-side interface.
During packet forwarding, the Behavior ID (qos-local-id) is obtained for packets based
on the destination IP address, and the corresponding traffic behavior is performed.
Configuration example on an Type-A or Type-C board:
# Define rules for community attributes.
ip community-filter 10 permit 1000:10
ip community-filter 11 permit 1000:11
ip community-filter 12 permit 1000:12
# Define a route-policy.
Route-policy policyA permit node 10
if-match community-filter 10
apply qos-local-id 10
Route-policy policyA permit node 11
if-match community-filter 11
apply qos-local-id 11
Route-policy policyA permit node 12
if-match community-filter 12
apply qos-local-id 12
Route-policy policyA permit node 13
if-match community-filter 13
apply qos-local-id 13
# Check statistics.
As shown in Figure 1.1, QPPB is implemented as follows for ISP-to-user traffic accounting:
BGP routes are advertised with community attributes.
BGP routes are imported and the community attributes of the BGP routes are matched
against attribute entries. Behavior IDs are set in the FIB table for the routes matching the
attribute entries.
A QPPB policy is configured. A corresponding traffic behavior (such as statistics
collecting, CAR, and re-marking) is configured for the qos-local-id (Behavior ID).
Source address-based QPPB is enabled for incoming traffic.
The QPPB policy is applied to outgoing traffic on the user-side interface.
During packet forwarding, the Behavior ID (qos-local-id) is obtained for packets based
on the source IP address, and the corresponding traffic behavior is performed.
Configuration example:
# Define rules for community attributes.
ip community-filter 10 permit 1000:10
ip community-filter 11 permit 1000:11
ip community-filter 12 permit 1000:12
ip community-filter 13 permit 1000:13
# Define a route-policy.
# Check statistics.
display qppb local-policy statistics interface X/X/X outbound
Example:
Scenario: trust upstream command is configured on an inbound interface.
Inbound packet type: VLAN packet or QinQ packet
Outbound packet type: any type.
Note:
Other implementation differences in BA upstream mapping, see the sections “Which Priority Field is Trusted”
and “Remark and PHB Symbols”.
Downstream Mapping
MPLS Diffserv
Implementation differences in MPLS Diffserv, see the following sections:
Which Priority Field is Trusted
Remark and PHB Symbols
Rules for PHB ActionWhich Priority Field of the Inbound Packet Is Reset in PHB Action
Rules for Marking the EXP Field of New-added MPLS Header
DSCP Remarking Rules in MPLS VPN Scenarios
Result of the remark dscp Type-B The remarked DSCP may be not the same as the valued
command specified in the command. The dscp is reset according to
the BA downstream mapping table.
Type-C The remarked DSCP is the same as the valued specified
in the command.
Type-A
Type-D
Example:
Scenario: remark dscp command is configured for the inbound or
outbound packet.
The remark dscp command Type-B The inbound board does not remark the DSCP value
configured on inbound interface directly.
Type-C The inbound board remarks the DSCP value directly.
Type-A
Type-D
Example:
Scenario 1:
Inbound: trust upstream and remark dscp commands are configured.
Outbound: trust upstream or qos phb enable command is configured.
Scenario 2:
Inbound: trust upstream and remark dscp commands are configured.
Outbound: trust upstream and qos phb enable command are not
configured.
ACL/UCL matching the ToS value Type-B ACL/UCL matching the ToS value is not concerned the
last bit of ToS, and the matching result may be
incorrect.
For example, if the ACL is to match the packet of
tos=1, result is, both the packet of Tos=0 and the packet
of tos=1 are matched.
Type-C Not have the problem.
Type-A
Type-D
Example:
Scenario:
#
acl 3000
rule 5 permit tcp tos 0
#
traffic classifier a
if-match acl 3000
#
traffic behavior a
deny
#
traffic policy a
classifier a behavior a
#
Interface GigabitEthernet1/0/1
traffic-policy a inbound
#
Example:
Scenario: to deny the packet that 802.1p=0 or dscp=40.
Example:
Scenario: To discard the inbound traffic that inner-802.1p = 5 (take
V600R006 or later version as an example)
MF classification on inbound QinQ Type-B Only supports layer 3 MF classification if the QinQ
terminal sub-interface terminal sub-interface works in layer3 mode.
And only supports layer 2 (link layer) MF classification
if the QinQ terminal sub-interface works in layer2
mode.
Type-C Supports all kinds of MF classification
Type-A
Type-D
MF classification on outbound Type-B MF classification takes effect on the traffic of sub-
QinQ terminal main-interface interface.
Type-C MF classification does not take effect on the traffic of
sub-interface.
Type-A
Type-D
The behaviors supported by MF Type-B Only supports permit, deny, remark and traffic-statistics
classification on outbound QinQ
terminal sub-interface Type-C Supports all kinds of traffic behaviors described in the
chapter 3.1Traffic Classifiers and Traffic Behaviors.
Type-A
Type-D
Example:
Scenario: MF classification is configured in UNI interface of PE VLL or
PWE3 scenario.
IPv6 Scenarios
Item Board Difference description
Answer
It is defined by Huawei, not by RFC standard. RFC 5127 has the recommended mapping
between EXP and DSCP, and the mapping on the Huawei routers is the same as RFC5127
recommendation.
Answer
It is possible to remark several fields. To remark 802.1p, EXP and DSCP together, configure
the remark 8021p, remark mpls-exp and the remark dscp commands together on the traffic
behavior view.
Answer
Yes, in order. For more information, see the section "Traffic Policy Implementation".
Answer
If the BA classification (the "trust upstream", "diffserv-mode pipe" and "diffserv-mode
short-pipe") commands are not configured on the inbound interface, the packets are mapped
to <BE, Green>, that is, all the packets from the inbound interface are put into the BE queue.
A token bucket measures traffic but does not filter packets or perform any action, such as dropping
packets.
As shown in Figure 1.2, when a packet arrives, the device obtains enough tokens from the
token bucket for packet transmission. If the token bucket does not have enough tokens to send
the packet, the packet either waits for enough tokens or is discarded. This feature limits
packets to be sent at a rate less than or equal to the rate at which tokens are generated.
The token bucket mechanism widely applies to QoS technologies, such as the committed
access rate (CAR), traffic shaping, and Line Rate (LR).
This section only describes how to meter and mark packets using token buckets.
The srTCM uses two token buckets, C and E, which both share the common rate CIR. The
maximum size of bucket C is the CBS, and the maximum size of bucket E is the EBS.
When the EBS is 0, no token is added in bucket E. Therefore, only bucket C is used for
srTCM. When only bucket C is used, packets are marked either green or red. When the EBS is
not 0, two token buckets are used and packets are marked either green, yellow or red.
− If the packet has been pre-colored as green and Tc(t) – B < 0, the packet is re-
marked red, and Tc remains unchanged.
− If the packet has been pre-colored as yellow or red, the packet is re-marked red
regardless of the packet length. The Tc value remains unchanged.
When two token buckets are used:
− If the packet has been pre-colored as green and Tc(t) - B ≥ 0, the packet is re-
marked green, and Tc is decremented by B.
− If the packet has been pre-colored as green and Tc(t) – B < 0 but Te(t) - B ≥ 0, the
packet is marked yellow, and Te is decremented by B.
− If the packet has been pre-colored as yellow and Te(t) – B ≥ 0, the packet is re-
marked yellow, and Te is decremented by B.
− If the packet has been pre-colored as yellow and Te(t) – B < 0, the packet is re-
marked red, and Te remains unchanged.
− If the packet has been pre-colored as red, the packet is re-marked red regardless of
the packet length. The Tc and Te values remain unchanged.
4.1.3 CAR
What Is CAR
In traffic policing, committed access rate (CAR) is used to control traffic. CAR uses token
buckets to measure traffic and determines whether a packet is conforming to the specification.
CAR has the following two functions:
Rate limit: Only packets allocated enough tokens are allowed to pass so that the traffic
rate is restricted.
Traffic classification: Packets are marked internal priorities, such as the scheduling
precedence and drop precedence, based on the measurement performed by token
buckets.
CAR Process
When a packet arrives, the device matches the packet against matching rules. If the
packet matches a rule, the router uses token buckets to meter the traffic rate.
The router marks the packet red, yellow, or green based on the metering result. Red
indicates that the traffic rate exceeds the specifications. Yellow indicates that the traffic
rate exceeds the specifications but is within an allowed range. Green indicates that the
traffic rate is conforming to the specifications.
The device drops packets marked red, re-marks and forwards packets marked yellow,
and forwards packets marked green.
are not enough for the 1000-byte third packet. Therefore, the third packet is marked
red.
− Assume that the fourth packet arriving at the interface after a delay of 20 ms is 1500
bytes long. Additional 2500-byte tokens are put into bucket C (CIR x time period =
1 Mbit/s x 20 ms = 20000 bits = 2500 bytes). This time 3250-byte tokens are
destined for bucket C, but the excess 1250-byte tokens over the CBS (2000 bytes)
are dropped. Therefore, bucket C has 2000-byte tokens, which are enough for the
1500-byte fourth packet. The fourth packet is marked green, and the number of
tokens in bucket C decreases by 1500 bytes to 500 bytes.
The following table illustrates this process:
No. Time Packet Delay Token Tokens in Tokens in Marking
Length Addition Bucket C Bucket C
Before After
Packet Packet
Processing Processing
- - - - - 2000 2000 -
1 0 1500 0 0 2000 500 Green
2 1 1500 1 125 625 625 Red
3 2 1000 1 125 750 750 Red
4 22 1500 20 2500 2000 500 Green
E has 1750-byte tokens. Tokens in bucket C are enough for the 1500-byte fourth
packet. Therefore, the fourth packet is marked green, and the number of tokens in
bucket C decreases by 1500 bytes, with 500 bytes remaining. The number of tokens
in bucket E remains unchanged.
The following table illustrates the preceding process:
N Tim Packe Delay Token Tokens in Buckets Tokens in Buckets Marking
o. e t Addition Before Packet After Packet
Lengt Processing Processing
h
Bucket C Bucket E Bucket C Bucket E
TrTCM
This example uses the CIR 1 Mbit/s, the PIR 2 Mbit/s, and the CBS and EBS both 2000
bytes. Buckets C and P are initially full of tokens.
− If the first packet arriving at the interface is 1500 bytes long, the packet is marked
green because the number of tokens in both buckets P and C is greater than the
packet length. Then the number of tokens in both buckets P and C decreases by
1500 bytes, with 500 bytes remaining.
− Assume that the second packet arriving at the interface after a delay of 1 ms is 1500
bytes long. Additional 250-byte tokens are put into bucket P (PIR x time period = 2
Mbit/s x 1 ms = 2000 bits = 250 bytes) and 125-byte tokens are put into bucket C
(CIR x time period = 1 Mbit/s x 1 ms = 1000 bits = 125 bytes). Bucket P now has
750-byte tokens, which are not enough for the 1500-byte second packet. Therefore,
the second packet is marked red, and the number of tokens in buckets P and C
remain unchanged.
− Assume that the third packet arriving at the interface after a delay of 1 ms is 1000
bytes long. Additional 250-byte tokens are put into bucket P (PIR x time period = 2
Mbit/s x 1 ms = 2000 bits = 250 bytes) and 125-byte tokens are put into bucket C
(CIR x time period = 1 Mbit/s x 1 ms = 1000 bits = 125 bytes). Bucket P now has
1000-byte tokens, which equals the third packet length. Bucket C has only 750-byte
tokens, which are not enough for the 1000-byte third packet. Therefore, the third
packet is marked yellow. The number of tokens in bucket P decreases by 1000
bytes, with 0 bytes remaining. The number of tokens in bucket C remains
unchanged.
− Assume that the fourth packet arriving at the interface after a delay of 20 ms is 1500
bytes long. Additional 5000-byte tokens are put into bucket P (PIR x time period =
2 Mbit/s x 20 ms = 40000 bits = 5000 bytes), but excess tokens over the PBS (2000
bytes) are dropped. Bucket P has 2000-byte tokens, which are enough for the 1500-
byte fourth packet. Bucket C has 750-byte tokens left, and additional 2500-byte
tokens are put into bucket C (CIR x time period = 1 Mbit/s x 20 ms = 2000 bits =
250 bytes). This time 3250-byte tokens are destined for bucket C, but excess tokens
over the CBS (2000 bytes) are dropped. Bucket C then has 2000-byte tokens, which
are enough for the 1500-byte fourth packet. Therefore, the fourth packet is marked
green. The number of tokens in both buckets P and C decreases by 1500 bytes, with
500 bytes remaining.
The following table illustrates this process:
N Ti Pac Delay Token Addition Tokens in Tokens in Marki
o. me ket Buckets Before Buckets After ng
Len Packet Packet
gth Processing Processing
To control the traffic rate and check whether the traffic rate exceeds the CIR or PIR, use
trTCM. Note that traffic marked yellow must be processed differently from traffic
marked green. Otherwise, the implementation outcome of trTCM is the same as that of
srTCM with single bucket.
CAR calculates the bandwidth of packets based on the entire packet. For example, CAR
counts the length of the frame header and CRC field but not the preamble, inter frame gap, or
SFD of an Ethernet frame in the bandwidth. The following figure illustrates a complete
Ethernet frame (bytes):
As shown in Figure 1.2, a router connects a wide area network (WAN) and a local area
network (LAN). The LAN bandwidth (100 Mbit/s) is higher than the WAN bandwidth (2
Mbit/s). When a LAN user attempts to send a large amount of data to a WAN, the router at the
network edge is prone to traffic congestion. Traffic policing can be configured on the router at
the network edge to restrict the traffic rate, preventing traffic congestion.
Multiple traffic policies must be configured on the inbound interface to implement different rate limits
for data flows sent from different source hosts. The traffic policies take effect in the configuration order.
The first traffic policy configured is the first to effect first after data traffic reaches the interface.
Figure 1.1 Data transmission from the high-speed link to the low-speed link
As shown in Figure 1.2, traffic shaping can be configured on the outbound interface of an
upstream device to make irregular traffic transmitted at an even rate, preventing traffic
congestion on the downstream device.
On Huawei routers, the length of the frame header and CRC field are calculated in the bandwidth for
packets to which CAR applies but not calculated in the bandwidth for packets that have been
implemented with traffic shaping. For example, if the traffic shaping value is set to 23 Mbit/s for IPoE
packets, the IP packets are transmitted at a rate of 23 Mbit/s with the lengths of the frame header and
CRC field not counted.
In addition, whether the CBS can be modified in traffic shaping is determined by the product model,
product version, and board type.
Traffic shaping is implemented for packets that have been implemented with queue
scheduling and are leaving the queues. For details about queues and queue scheduling, see
5Congestion Management and Avoidance.
There are two traffic shaping modes: queue-based traffic shaping and interface-based traffic
shaping.
Queue-based traffic shaping applies to each queue on an outbound interface.
− When packets have been implemented with queue scheduling and are leaving
queues, the packets that do not need traffic shaping are forwarded; the packets that
need traffic shaping are measured against token buckets.
− After queues are measured against token buckets, if packets in a queue are
transmitted at a rate conforming to the specifications, the packets in the queue are
marked green and forwarded. If packets in a queue are transmitted at a rate
exceeding the specifications, the packet that is leaving the queue is forwarded, but
the queue is marked unscheduled and can be scheduled after new tokens are added
to the token bucket. After the queue is marked unscheduled, more packets can be
put into the queue, but excess packets over the queue capacity are dropped.
Therefore, traffic shaping allows traffic to be sent at an even rate but does not
provide a zero-packet-loss guarantee.
Interface-based traffic shaping, also called line rate (LR), is used to restrict the rate at
which all packets (including burst packets) are transmitted. Interface-based traffic
shaping takes effect on the entire outbound interface, regardless of packet priorities.
Figure 1.2 shows how interface-based traffic shaping is implemented:
− When packets have been implemented with queue scheduling and are leaving
queues, all queues are measured together against token buckets.
− After queues are measured against token buckets, if the packets total-rate
conforming to the specifications, the queue is forwarded. If the packet rate on an
interface exceeds the specification, the interface stops packet scheduling and will
resume scheduling when tokens are enough.
The entire PPPoE packet is encapsulated into a 1483B frame (for example, LLC
encapsulation) on the DSLAM, and then the 1483B frame is encapsulated in AAL5 mode (a
CPCS-PDU Trailer added). After that, the packet is sliced into 48-byte ATM payloads, which
are finally encapsulated in the ATM cell.
Figure 1.3 shows how the header length is calculated. If LLC encapsulation is implemented
for the 1483B frame, as shown in Figure 1.2, a 20-byte (14+6) PPPoE header or a 36-byte
(6+14+8+8) PPPoEoA header is added.
If the PPPoE payload is L bytes, the PPPoEoA payload is L+36 bytes. When the PPPoEoA
payload (L+36) is a multiple of 48, the number of ATM cells required for transmitting the
packet is (L+36)/48; when the PPPoEoA payload (L+36) is not a multiple of 48, the number
of cells required for transmitting the packet is (L+36)/48+1. Therefore, the length of the
packet added with an ATM cell header becomes ( (L+36) / 48 + 1 ) x 53 or ( (L+36) / 48 ) x
53.
If the PPPoE payload in the packets sent from the BRAS or SR to the DSLAM is 100 bytes
and the packet rate is 2 Mbit/s, the rate of the packets sent from the DSLAM to the CPE is
calculated as follows: ( (100+36) / 48 + 1 ) x 53 / 120 x 2 Mbit/s = 3.4Mbit/s.
Even if the link connects the user and DSLAM is also an Ethernet link, the encapsulation cost
of the packets sent between the user and DSLAM can possibly exceed that on the user side of
the BRAS or SR. For example, the Ethernet packet encapsulated on the BRAS or SR does not
carry a VLAN tag, but the packet sent between the user and DSLAM carries a single or
double VLAN tags due to VLAN or QinQ encapsulation.
To resolve this problem, last-mile QoS can be configured on the BRAS or SR. Last-mile QoS
allows a device to calculate the length of headers to be added to packets based on the
bandwidth purchased by users and the bandwidth of the downstream interface on the DSLAM
for traffic shaping.
The BRAS or SR cannot parse the packets that are encapsulated using multiple protocols. For
example, the BRAS or SR parses only the Ethernet header of PPPoE packets but not any
header that is previously added. In addition, if a DSLAM connects to a CPE through an ATM
link (as shown in Figure 1.3):
The DSLAM, during AAL5 encapsulation, will add headers to make the length of
headers be a multiple of 48 bytes.
The DSLAM, during AAL5 encapsulation, will implement LLC or VC encapsulation,
which provides different header encapsulation-costs. Even if LLC encapsulation is used
on the DSLAM, LLC encapsulation-costs are different between PPPoA packets and
IPoA/PPPoEoA/IPoEoA packets.
Therefore, the BRAS or SR cannot automatically infer the sum length of the packets that has
been encapsulated on the DSLAM and requires compensation bytes.
After compensation bytes are configured, if the DSLAM connects to the CPE through an
Ethernet link, the BRAS or SR can automatically infer the sum length of the packet
encapsulated on the DSLAM based on the length of the forwarded packet and the configured
compensation bytes, and determine the shaped rate to be adjusted.
After compensation bytes are configured, if the DSLAM connects to the CPE through an
ATM link, the BRAS or SR can automatically infer the length of headers to be added (PAD
field length for AAL5 encapsulation) based on the length of the forwarded packet and
configured compensation bytes, and then infer the sum length of the packet encapsulated on
the DSLAM. Therefore, the PAD cost and ATM cell header cost do not need attention when
the compensation bytes are configured.
The following tables provide common encapsulation-costs and compensation bytes.
PPP header 2
Eth header 14
VLAN header 4
QinQ header 8
AAL5 VC AAL5 Header + AAL5 tail = 0 + 8 = 8
encapsul
ation LLC Type1 (connection-less mode, AAL5 Header + AAL5 tail = 8 + 8 =
such as IPoE, PPPoE, IPoA, PPPoA, 16
IPoEoA and PPPoEoA)
LLC Type2 (connection mode, such as AAL5 Header + AAL5 tail = 4 + 8 =
PPPoA) 12
= 0 - QinQ header
=-8
Difference
The following table lists the differences between traffic policing and traffic shaping.
Drops excess traffic over the specifications Buffers excess traffic over the
or re-marks such traffic with a lower specifications.
priority.
Consumes no additional memory resources Consumes memory resources for excess
and brings no delay or jitter. traffic buffer and brings delay and jitter.
Packet loss may result in packet Packet loss rarely occurs, so does packet
retransmission. retransmission.
Traffic re-marking supported. Traffic re-marking unsupported.
Action based on the CAR token Type-B If the metering result is green, the action of the packet can
bucket metering result. be pass, and cannot be discard or remark.
If the metering result is yellow, the action of the packet
can be pass or remark, and cannot be discard.
If the metering result is red, the action of the packet can
be pass or remark and discard.
Command:
qos car { cir cir-value [ pir pir-value ] } [ cbs cbs-value
pbs pbs-value ] [ green pass } | yellow pass [ service-class
class color color ] | red { discard | pass [ service-class
class color color ] } ]
Type-C If the metering result is green, the action of the packet can
be pass or remark, and cannot be discard.
If the metering result is yellow or red, the action of the
packet can be pass or remark and discard.
Command:
qos car { cir cir-value [ pir pir-value] } [ cbs cbs-value
pbs pbs-value ] [ green pass [ service-class class color
color ] | yellow { discard | pass [ service-class class color
color ] } | red { discard | pass [ service-class class color
color ] } ]
Type-A For upstream, no matter what the metering result is, the
action of the packet can be pass or remark and discard.
Command for upstream:
qos car { cir cir-value [ pir pir-value ] } [ cbs cbs-value
pbs pbs-value ] [ green { discard | pass [ service-class
class color color ] } | yellow { discard | pass [ service-
class class color color ] } | red { discard | pass [
service-class class color color ] } ]
For downstream, no matter what the metering result is,
the action of the packet can be pass or discard, and cannot
be remark.
Command for downstream:
qos car { cir cir-value [ pir pir-value ] } [ cbs cbs-value
pbs pbs-value ] [ green { discard | pass } | yellow {
discard | pass } | red { discard | pass } ]
Type-D The action of the packet can be pass or remark and drop,
whatever the metering result is.
Command:
qos car { cir cir-value [ pir pir-value ] } [ cbs cbs-value
pbs pbs-value ] [ green { discard | pass [ service-class
class color color ] } | yellow { discard | pass [ service-
class class color color ] } | red { discard | pass [ service-
class class color color ] } ]
Limit the layer2 traffic Type-B Only support on inbound interface
Type-C Support on inbound and outbound interfaces
Type-A
Type-D
Configuring both CAR and HQoS Type-B Not support
qos-profile CAR together on the
same inbound interface Type-C Support
Type-A
Type-D
Configuring both port-based CAR Type-B Flow-based CAR takes effect only for the traffic that is
and flow-based CAR together on matched with the rule in the MF classification.
the same interface Type-C
Port-based CAR takes effect for the traffic that is not
matched.
Type-A Flow-based CAR takes effect only for the traffic that is
matched with the rule in the MF classification.
Type-D
Port-based CAR takes effect for all the traffic.
CAR mode Type-B Supports only Color-Blind.
Type-C Supports both Color-Blind and Color-Aware.
Type-A
Type-D
CAR Shaping
Type Sub-Type Note
In Out In Out
CAR Shaping
Type Sub-Type Note
In Out In Out
termination
configuration takes effect
main-
also on sub-interfaces.
interface
L2 Ethernet
Ethernet type/length
flow-based frame Y Y Y N -
field
information
Type-A boards support
only inbound;
L2 Ethernet Type-B boards support
flow-based frame Outer 802.1p Y Y Y N only outbound;
information Other types of boards:
support both inbound and
outbound.
Type-A and Type-B
boards do not support
inbound and outbound.
L2 Ethernet Type-C boards do not
flow-based frame Inner 802.1p Y Y Y N
support in outbound.
information
Other board-types:
support both inbound and
outbound.
L2 Ethernet
flow-based frame destination mac Y Y Y N -
information
L2 Ethernet
flow-based frame source mac Y Y Y N -
information
MPLS Not supported on Type-B
flow-based Outer mpls-exp Y N Y N
information boards.
MPLS
flow-based 2nd layer mpls-exp Y N Y N
information
MPLS
flow-based 3rd layer mpls-exp Y N Y N
information
MPLS Not supported on Type-A
flow-based 4th layer mpls-exp Y N Y N
information and Type-B boards.
MPLS Type-C boards do not
flow-based outer mpls label Y N Y N support in inbound.
information
MPLS
flow-based 2nd layer mpls label Y N Y N
information
MPLS
flow-based 3rd layer mpls label Y N Y N
information
CAR Shaping
Type Sub-Type Note
In Out In Out
MPLS
flow-based 4th layer mpls label Y N Y N -
information
MPLS
flow-based Outer mpls ttl Y N Y N -
information
MPLS
flow-based 2nd layer mpls ttl Y N Y N -
information
MPLS
flow-based 3rd layer mpls ttl Y N Y N -
information
MPLS
flow-based 4th layer mpls ttl N N N N -
information
IP
flow-based DSCP Y Y Y N -
information
IP
flow-based ip-precedence Y Y Y N -
information
IP
flow-based ToS Y Y Y N -
information
IP
flow-based Protocol number Y Y Y N -
information
IP
flow-based all ipv4 Y Y Y N -
information
IP
flow-based fragment-type Y Y Y N -
information
IP
flow-based source ipv4 address Y Y Y N -
information
IP destination ipv4
flow-based Y Y Y N -
information address
IP
flow-based TCP-flag Y Y Y N -
information
IP TCP/UDP source
flow-based Y Y Y N -
information port
IP TCP/UDP
flow-based Y Y Y N -
information destination port
IP
flow-based ICMP type Y Y Y N -
information
IP
flow-based Time-range Y Y Y N -
information
CAR Shaping
Type Sub-Type Note
In Out In Out
DSCP (6 left-most
IPv6
flow-based bits of Traffic Class Y Y Y N
information
(TC) field)
Precedence (3 left-
IPv6
flow-based most bits of Traffic Y Y Y N
information Type-B boards do not
Class (TC) field)
support outbound CAR.
ToS (left-most 4-7
IPv6
flow-based bits of Traffic Class Y Y Y N
information
(TC) field)
IPv6
flow-based Protocol number Y Y Y N
information
The Type-A and Type-B
boards support matching 96
bits length at most for the
source IPv6 address. For an
IPv6 address with the
IPv6 Source IPv6 length of 128 bits, the
flow-based Y Y Y N
information address boards support matching
the bits 0 to 31 and 64 to
127.
Type-B boards do not
support outbound CAR.
IPv6 Destination IPv6
flow-based Y Y Y N
information address
IPv6
flow-based fragment Y Y Y N
information
IPv6
flow-based icmpv6-type Y Y Y N
information Type-B boards do not
IPv6 support outbound CAR.
flow-based time-range Y Y Y N
information
IPv6
flow-based next-header Y Y Y N
information
IPv6
flow-based all ipv6 Y Y Y N
information
Supported only in
V600R002 and the later
versions.
User-based UCL-based Y Y Y Y Type-B only support on
inbound.
Other boards support both
inbound and outbound.
CAR Shaping
Type Sub-Type Note
In Out In Out
Answer
CAR is used to policy traffic and the port shaping or port-queue shaping command is used
to shape traffic.
On upstream, CAR is done before shaping, and CAR is done before packet put into queue,
and shaping is done when the packet is leaving the queue.
On downstream, if there is not an eTM subcard on outbound board, CAR is done after
shaping. Shaping is done when the packet is leaving the queue and CAR is done after the
packet has left queue.
On downstream, if there is an eTM subcard on outbound board, CAR is done before shaping,
and CAR is done before packet put into queue, and shaping is done when the packet is leaving
the queue.
For details, see the chapter "8Overall QoS Process on Routers".
Answer
Both the port-based traffic shaping and the queue-based traffic shaping use token buckets to
measure traffic and determines whether a packet is conforming to the specification, and both
use queue buffer and may increase time delay when traffic congestion occurs.
The differences between them are:
Port-based traffic shaping is used to restrict the rate at which all packets (including burst
packets) are sent from an outbound interface. Port-based traffic shaping takes effect on
the entire outbound interface, regardless of packet priorities.
Queue-based traffic shaping is used to restrict the rate at which the packets sent from a
specified queue on an outbound interface.
If you want to limit the bandwidth of an outbound interface, it is recommended to use port-
based traffic shaping, and to limit the bandwidth of a queue (or the bandwidth of the packets
of a specified priority), it is recommended to use queue-based traffic shaping.
For example, if you want to limit the bandwidth of GE1/0/0, configure the port shaping
command in GE1/0/0 interface view, and to limit the bandwidth of EF traffic of GE1/0/0,
configure the port-queue ef shaping command in GE1/0/0 interface view.
Answer
It does not affect the other functions when port-based traffic shaping or queue-based traffic
shaping is configured, because the buffer is planned and assigned elaborately.
4.6.4 How Long the Time Delay in the Worst Situation When
Traffic Shaping Is Used?
Question
Since traffic shaping may increase time delay when traffic congestion occurs, how long is the
time delay in the worst situation?
Answer
The delay is determined by the buffer size assigned for a queue and the output bandwidth
allocated to a queue.
The format is as follows:
Delay of a queue = (Buffer size for the queue x 8) / Traffic shaping rate for the queue
Therefore, when the buffer is fully, the delay will increase to the biggest.
For detailed information about the queue buffer and the delay, see the chapter "5.4Impact of
Queue Buffer on Delay and Jitter".
Answer
In Huawei routers mentioned in this document, the default size of a queue buffer is dependent
on the type of the Physical Interface Cards (PICs) in the LPU board.
Answer
If port-based traffic shaping and queue-based traffic shaping are not configured on the
oubound interface, and HQoS is not configured:
By default, there are eight CQ queues (including BE, AF1, AF2, AF3, AF4, EF, CS6,
CS7) in the downstream boards, and there is no FQ queues. The traffic is put into the CQ
queues when traffic congestion occurs.
By default, the default size of a queue buffer is dependent on the type of the Physical
Interface Cards (PICs) in the LPU board.
For the default scheduling order of the eight CQ queues, see the chapter "Scheduling
Order". By default, CS7, CS6 and EF is PQ queues, and the AF4, AF3, AF2, AF1 and BE
are WFQ queues, their weights are 10:10:10:15:15.
By default, the drop policy of all the eight CQ queues are Trail Drop. When the buffer of
a CQ queue is full, the new-coming packets are discarded.
By default, queue-based traffic shaping is not used for the eight CQ queues, and port-
based traffic shaping is not used for the outbound interface. The bandwidth of the
packets sent from a queue is not limited and may up to the bandwidth of the outbound
interface. Also, the bandwidth of the packets sent from a outbound interface is not
limited and may up to the bandwidth of the outbound interface.
Traffic congestion is derived not only from link bandwidth restriction but also from any
resource shortage, such as available processing time, buffer, and memory resource shortage.
In addition, traffic is not satisfactorily controlled and exceeds the capacity of available
network resources, also leading to traffic congestion.
Location
As shown in Figure 1.1, traffic can be classified into the following based on the device
location and traffic forwarding direction:
Upstream traffic on the user side
Downstream traffic on the user side
Upstream traffic on the network side
Downstream traffic on the network side
Figure 1.1 Upstream and downstream traffic on the user and network sides
Generally, upstream traffic is not congested because upstream traffic does not bother with
traffic rate mismatch, traffic aggregation, or forwarding resource shortage. Downstream
traffic, instead, is prone to traffic congestion.
Impacts
Traffic congestion has the following adverse impacts on network traffic:
Traffic congestion intensifies delay and jitter.
Overlong delays lead to packet retransmission.
Traffic congestion reduces the throughput of networks.
Intensified traffic congestion consumes a large number of network resources (especially
storage resources). Unreasonable resource allocation may cause resources to be locked
and the system to go Down.
Therefore, traffic congestion is the main cause of service deterioration. Since traffic
congestion prevails on the PSN network, traffic congestion must be prevented or effectively
controlled.
Solutions
A solution to traffic congestion is a must on every carrier network. A balance between limited
network resources and user requirements is required so that user requirements are satisfied
and network resources are fully used.
Congestion management and avoidance are commonly used to relieve traffic congestion.
Congestion management provides means to manage and control traffic when traffic
congestion occurs. Packets sent from one interface are placed into multiple queues that
are marked with different priorities. The packets are sent based on the priorities.
Different queue scheduling mechanisms are designed for different situations and lead to
different results.
Congestion avoidance is a flow control technique used to relieve network overload. By
monitoring the usage of network resources in queues or memory buffer, a device
automatically drops packets on the interface that shows a sign of traffic congestion.
The Traffic Manager (TM) on the forwarding plane houses high-speed buffers, for which all interfaces
have to compete. To prevent traffic interruptions due to long-time loss in the buffer battle, the system
allocates a small buffer to each interface and ensures that each queue on each interface can use the
buffer.
The TM puts received packets into the buffer and allows these packets to be forwarded in time when
traffic is not congested. In this case, the period during which packets are stored in the buffer is at μs
level, and the delay can be ignored.
When traffic is congested, packets accumulate in the buffer and wait to be forwarded. The delay greatly
prolongs. The delay is determined by the buffer size for a queue and the output bandwidth allocated to a
queue. The format is as follows:
Delay of a queue = Buffer size for the queue / Output bandwidth for the queue
Each interface on a Huawei device stores eight downstream queues, which are called class
queues (CQs) or port queues. The eight queues are BE, AF1, AF2, AF3, AF4, EF, CS6, and
CS7.
The first in first out (FIFO) mechanism is used to transfer packets in a queue. Resources used
to forward packets are allocated based on the arrival order of packets.
Scheduling Algorithms
The commonly used scheduling algorithms are as follows:
First In First Out (FIFO)
Strict Priority (SP)
Round Robin (RR)
Weighted Round Robin (WRR)
Deficit Round Robin (DRR)
Deficit Weighted Round Robin (DWRR)
Weighted Fair Queuing (WFQ)
FIFO
FIFO does not need traffic classification. As shown in Figure 1.1, FIFO allows the packets
that come earlier to enter the queue first. On the exit of a queue, FIFO allows the packets to
leave the queue in the same order as that in which the packets enter the queue.
SP
SP schedules packets strictly based on queue priorities. Packets in queues with a low priority
can be scheduled only after all packets in queues with a high priority have been scheduled.
As shown in Figure 1.1, three queues with a high, medium, and low priority respectively are
configured with SP scheduling. The number indicates the order in which packets arrive.
When packets leave queues, the device forwards the packets in the descending order of
priorities. Packets in the higher-priority queue are forwarded preferentially. If packets in the
higher-priority queue come in between packets in the lower-priority queue that is being
scheduled, the packets in the high-priority queue are still scheduled preferentially. This
implementation ensures that packets in the higher-priority queue are always forwarded
preferentially. As long as there are packets in the high queue no other queue will be served.
The disadvantage of SP is that the packets in lower-priority queues are not processed until all
the higher-priority queues are empty. As a result, a congested higher-priority queue causes all
lower-priority queues to starve.
RR
RR schedules multiple queues in ring mode. If the queue on which RR is performed is not
empty, the scheduler takes one packet away from the queue. If the queue is empty, the queue
is skipped, and the scheduler does not wait.
WRR
Compared with RR, WRR can set the weights of queues. During the WRR scheduling, the
scheduling chance obtained by a queue is in direct proportion to the weight of the queue. RR
scheduling functions the same as WRR scheduling in which each queue has a weight 1.
WRR configures a counter for each queue and initializes the counter based on the weight
values. Each time a queue is scheduled, a packet is taken away from the queue and being
transmitted, and the counter decreases by 1. When the counter becomes 0, the device stops
scheduling the queue and starts to schedule other queues with a non-0 counter. When the
counters of all queues become 0, all these counters are initialized again based on the weight,
and a new round of WRR scheduling starts. In a round of WRR scheduling, the queues with
the larger weights are scheduled more times.
In an example, three queues with the weight 50%, 25%, and 25% respectively are configured
with WRR scheduling.
The counters are initialized first: Count[1] = 2, Count[2] = 1, and Count[3] = 1.
First round of WRR scheduling:
Packet 1 is taken from queue 1, with Count[1] = 1. Packet 5 is taken from queue 2, with
Count[2] = 0. Packet 8 is taken from queue 3, with Count[3] = 0.
Second round of WRR scheduling:
Packet 2 is taken from queue 1, with Count[1] = 0. Queues 2 and 3 do not participate in
this round of WRR scheduling since Count [2] = 0 and Count[3] = 0.
Then, Count[1] = 0; Count[2] = 0; Count[3] = 0. The counters are initialized again:
Count[1] = 2; Count[2] = 1; Count[3] = 1.
Third round of WRR scheduling:
Packet 3 is taken from queue 1, with Count[1] = 1. Packet 6 is taken from queue 2, with
Count[2] = 0. Packet 9 is taken from queue 3, with Count[3] = 0.
DRR
The scheduling principle of DRR is similar to that of RR.
RR schedules packets based on the number of packets, whereas DRR schedules packets based
on the packet length.
DRR configures a counter, which implies the number of excess bytes over the threshold
(deficit) in the previous round for each queue. The counters are initialized as the maximum
bytes (generally the MTU of the interface) allowed in a round of DRR scheduling. Each time
a queue is scheduled, a packet is taken away from the queue, and the counter decreases by 1.
If a packet is too long for the queue scheduling capacity, DRR allows the counter Deficit to be
a negative. This ensures that long packets can be scheduled. In the next round of scheduling,
however, this queue will not be scheduled. When the counter becomes 0 or a negative, the
device stops scheduling the queue and starts to schedule other queues with a positive counter.
When the counters of all queues become 0 or negatives, all these counters are initialized, and
a new round of DRR scheduling starts.
In an example, the MTU of an interface is 150 bytes. Two queues Q1 and Q2 use DRR
scheduling. Multiple 200-byte packets are buffered in Q1, and multiple 100-byte packets are
buffered in Q2. Figure 1.1 shows how DRR schedules packets in these two queues.
As shown in Figure 1.1, after six rounds of DRR scheduling, three 200-byte packets in Q1
and six 100-byte packets in Q2 are scheduled. The output bandwidth ratio of Q1 to Q2 is
actually 1:1.
Unlike SP scheduling, DRR scheduling prevents packets in low-priority queues from being
starved out. However, DRR scheduling cannot set weights of queues and cannot schedule
services requiring a low-delay (such as voice services) in time.
DWRR
Compared with DRR, Deficit Weighted Round Robin (DWRR) can set the weights of queues.
DRR scheduling functions the same as DWRR scheduling in which each queue has a weight
1.
DWRR configures a counter, which implies the number of excess bytes over the threshold
(deficit) in the previous round for each queue. The counters are initialized as the Weight x
MTU. Each time a queue is scheduled, a packet is taken away from the queue, and the counter
decreases by 1. When the counter becomes 0, the device stops scheduling the queue and starts
to schedule other queues with a non-0 counter. When the counters of all queues become 0, all
these counters are initialized as weight x MTU, and a new round of DWRR scheduling starts.
In an example, the MTU of an interface is 150 bytes. Two queues Q1 and Q2 use DRR
scheduling. Multiple 200-byte packets are buffered in Q1, and multiple 100-byte packets are
buffered in Q2. The weight ratio of Q1 to Q2 is 2:1. Figure 1.1 shows how DWRR schedules
packets.
WFQ
WFQ allocates bandwidths to flows based on the weight. In addition, to allocate bandwidths
fairly to flows, WFQ schedules packets in bits. Figure 1.1 shows how bit-by-bit scheduling
works.
The bit-by-bit scheduling mode shown in Figure 1.1 allows the device to allocate bandwidths
to flows based on the weight. This prevents long packets from preempting bandwidths of
short packets and reduces the delay and jitter when both short and long packets wait to be
forwarded.
The bit-by-bit scheduling mode, however, is an ideal one. A Huawei router performs the WFQ
scheduling based on a certain granularity, such as 256 B and 1 KB. Different boards support
different granularities.
Advantages of WFQ:
Different queues obtain the scheduling chances fairly, balancing delays of flows.
Short and long packets obtain the scheduling chances fairly. If both short and long
packets wait in queues to be forwarded, short packets are scheduled preferentially,
reducing jitters of flows.
The lower the weight of a flow is, the lower the bandwidth the flow obtains.
Scheduling Order
SP scheduling is implemented between PQ, WFQ, and LPQ queues. PQ queues are scheduled
preferentially, and then WFQ queues and LPQ queues are scheduled in sequence, as shown in
Figure 1.1. Figure 1.2 shows the detailed process.
Packets in PQ queues are preferentially scheduled, and packets in WFQ queues are
scheduled only when no packets are buffered in PQ queues.
When all PQ queues are empty, WFQ queues start to be scheduled. If packets are added
to PQ queues afterward, packets in PQ queues are still scheduled preferentially.
Packets in LPQ queues start to be scheduled only after all PQ and WFQ queues are
empty.
Bandwidths are preferentially allocated to PQ queues to guarantee the peak information rate
(PIR) of packets in PQ queues. The remaining bandwidth is allocated to WFQ queues based
on the weight. If the bandwidth is not fully used, the remaining bandwidth is allocated to
WFQ queues whose PIRs are higher than the obtained bandwidth until the PIRs of all WFQ
queues are guaranteed. If any bandwidth is remaining at this time, the bandwidth resources
are allocated to LPQ queues.
PIR here refers to the traffic shaping rate configured in the port-queue command.
CS7 PQ 65 M 55 M
CS6 PQ 30 M 30 M
EF WFQ with the weight 5 10 M 5M
AF4 WFQ with the weight 4 10 M 10 M
AF3 WFQ with the weight 3 10 M 15 M
AF2 WFQ with the weight 2 20 M 25 M
AF1 WFQ with the weight 1 20 M 20 M
BE LPQ 100 M Not
configure
d
CS7 PQ 65 M 55 M 55 M
CS6 PQ 30 M 30 M 30 M
EF WFQ with the 10 M 5M 5M
weight 5
AF4 WFQ with the 10 M 10 M 4M
weight 4
AF3 WFQ with the 10 M 15 M 3M
weight 3
AF2 WFQ with the 20 M 25 M 2M
weight 2
AF1 WFQ with the 20 M 20 M 1M
weight 1
BE LPQ 100 M Not 0
configured
CS7 PQ 15 M 25 M
CS6 PQ 30 M 10 M
CS7 PQ 15 M 25 M 15 M
CS6 PQ 30 M 10 M 10 M
EF WFQ with the weight 90 M 100 M 34.375 M
5
AF4 WFQ with the weight 10 M 10 M 10 M
4
AF3 WFQ with the weight 10 M 15 M 10 M
3
AF2 WFQ with the weight 20 M 25 M 13.75 M
2
AF1 WFQ with the weight 20 M 20 M 6.875 M
1
BE LPQ 100 M Not 0
configured
CS7 PQ 15 M 25 M
CS6 PQ 30 M 10 M
EF WFQ with the weight 5 90 M 10 M
AF4 WFQ with the weight 4 10 M 10 M
AF3 WFQ with the weight 3 10 M 15 M
AF2 WFQ with the weight 2 20 M 10 M
AF1 WFQ with the weight 1 20 M 10 M
BE LPQ 100 M Not configured
Packets in the PQ queue are scheduled preferentially to ensure the PIR of the PQ queue.
After PQ scheduling, the remaining bandwidth is 75 Mbit/s (100 Mbit/s - 15 Mbit/s - 10
Mbit/s).
Then the first round of WFQ scheduling starts. The remaining bandwidth after PQ
scheduling is allocated to WFQ queues. The bandwidth allocated to a WFQ queue is
calculated based on this format: Bandwidth allocated to a WFQ queue = Remaining
bandwidth x weight of this queue / sum of weights = 75 Mbit/s x weight / 15.
− Bandwidth allocated to the EF queue = 75 Mbit/s x 5 / 15 = 25 Mbit/s > PIR. The
EF queue actually obtains the bandwidth 10 Mbit/s (PIR). The remaining bandwidth
is 15 Mbit/s.
− Bandwidth allocated to the AF4 queue = 75 Mbit/s x 4 / 15 = 20 Mbit/s > PIR. The
AF4 queue actually obtains the bandwidth 10 Mbit/s (PIR). The remaining
bandwidth is 10 Mbit/s.
− Bandwidth allocated to the AF3 queue = 75 Mbit/s x 3 / 15 = 15 Mbit/s = PIR. The
AF3 queue actually obtains the bandwidth 10 Mbit/s. The remaining bandwidth is 5
Mbit/s.
− Bandwidth allocated to the AF2 queue = 75 Mbit/s x 2 / 15 = 10 Mbit/s = PIR. The
bandwidth allocated to the AF2 queue is exhausted.
− Bandwidth allocated to the AF1 queue = 75 Mbit/s x 1 / 15 = 5 Mbit/s < PIR. The
bandwidth allocated to the AF1 queue is exhausted.
The remaining bandwidth is 30 Mbit/s, which is allocated to the AF1 queue, whose PIRs
are higher than the obtained bandwidth, based on the weight. Therefore, the bandwidth
allocated to the AF1 queue is 5 Mbit/s.
The remaining bandwidth is 25 Mbit/s, which is allocated to the BE queue.
The output bandwidth of each queue is as follows:
CS7 PQ 15 M 25 M 15 M
CS6 PQ 30 M 10 M 10 M
EF WFQ with the 90 M 10 M 10 M
weight 5
AF4 WFQ with the 10 M 10 M 10 M
weight 4
AF3 WFQ with the 10 M 15 M 10 M
weight 3
AF2 WFQ with the 20 M 10 M 10 M
weight 2
AF1 WFQ with the 20 M 10 M 10 M
weight 1
BE LPQ 100 M Not configured 25 M
Tail Drop
Tail drop is the traditional congestion avoidance mechanism used to drop all newly arrived
packets when congestion occurs.
Tail Drop causes TCP global synchronization. If TCP detects packet loss, TCP enters the
slow-start state. Then TCP probes the network by sending packets at a lower rate, which
speeds up until packet loss is detected again. In Tail drop mechanisms, all newly arrived
packets are dropped when congestion occurs, causing all TCP sessions to simultaneously enter
the slow start state and the packet transmission to slow down. Then all TCP sessions restart
their transmission at roughly the same time and then congestion occurs again, causing another
burst of packet drops, and all TCP sessions enters the slow start state again. The behavior
cycles constantly, severely reducing the network resource usage.
WRED
WRED is a congestion avoidance mechanism used to drop packets before the queue
overflows. WRED resolves TCP global synchronization by randomly dropping packets to
prevent a burst of TCP retransmission. If a TCP connection reduces the transmission rate
when packet loss occurs, other TCP connections still keep a high rate for sending packets. The
WRED mechanism improves the bandwidth resource usage.
WRED sets lower and upper thresholds for each queue and defines the following rules:
When the length of a queue is lower than the lower threshold, no packet is dropped.
When the length of a queue exceeds the upper threshold, all newly arrived packets are
tail dropped.
When the length of a queue ranges from the lower threshold to the upper threshold,
newly arrived packets are randomly dropped, but a maximum drop probability is set. The
maximum drop probability refers to the drop probability when the queue length reaches
the upper threshold. Figure 1.1 is a drop probability graph. The longer the queue, the
larger the drop probability.
As shown in Figure 1.2, the maximum drop probability is a%, the length of the current queue
is m, and the drop probability of the current queue is x%. WRED delivers a random value i to
each arrived packet, (0 < i% < 100%), and compares the random value with the drop
probability of the current queue. If the random value i ranges from 0 to x, the newly arrived
packet is dropped; if the random value ranges from x to 100%, the newly arrived packet is not
dropped.
As shown in Figure 1.3, the drop probability of the queue with the length m (lower threshold
< m < upper threshold) is x%. If the random value ranges from 0 to x, the newly arrived
packet is dropped. The drop probability of the queue with the length n (m < n < upper
threshold) is y%. If the random value ranges from 0 to y, the newly arrived packet is dropped.
The range of 0 to y is wider than the range of 0 to x. There is a higher probability that the
random value falls into the range of 0 to y. Therefore, the longer the queue, the higher the
drop probability.
As shown in Figure 1.4, the maximum drop probabilities of two queues Q1 and Q2 are a%
and b%, respectively. When the length of Q1 and Q2 is m, the drop probabilities of Q1 and
Q2 are respectively x% and y%. If the random value ranges from 0 to x, the newly arrived
packet in Q1 is dropped, If the random value ranges from 0 to y, the newly arrived packet in
Q2 is dropped. The range of 0 to y is wider than the range of 0 to x. There is a higher
probability that the random value falls into the range of 0 to y. Therefore, When the queue
lengths are the same, the higher the maximum drop probability, the higher the drop
probability.
Figure 1.4 Drop probability change with the maximum drop probability
You can configure WRED for each flow queue (FQ) and class queue (CQ) on Huawei routers.
WRED allows the configuration of lower and upper thresholds and drop probability for each
drop precedence. Therefore, WRED can allocate different drop probabilities to service flows
or even packets with different drop precedences in a service flow.
preempt bandwidths of other queues. Therefore, when traffic congestion occurs, highest
bandwidths can be provided for real-time services.
WRED applies to WFQ queues. WFQ queues share bandwidth based on the weight and are
prone to traffic congestion. Using WRED for WFQ queues effectively resolves TCP global
synchronization when traffic congestion occurs.
Therefore, setting the queue length to 10 ms x output queue bandwidth is recommended for
high-priority queues (CS7, CS6, and EF); setting the queue length to 100 ms x output queue
bandwidth is recommended for low-priority queues.
As described in Impact of Queue Buffer on Delay, large buffer sizes increase buffer delays.
Controlling buffer sizes means control over packet delays.
5.5 HQoS
Hierarchical Quality of Service (HQoS) is a technology that uses a queue scheduling
mechanism to guarantee the bandwidth of multiple services of multiple users in the DiffServ
model.
Traditional QoS performs 1-level traffic scheduling. The device can distinguish services on an
interface but cannot identify users. Packets of the same priority are placed into the same
queue on an interface and compete for the same queue resources.
HQoS uses multi-level scheduling to distinguish user-specific or service-specific traffic and
provide differentiated bandwidth management.
A scheduler can schedule multiple queues or schedulers. The scheduler can be considered a
parent node, and the scheduled queue or scheduler can be considered a child node. The parent
node is the traffic aggregation point of multiple child nodes.
Traffic classification rules and control parameters can be specified on each node to classify
and control traffic. Traffic classification rules based on different user or service requirements
can be configured on nodes at different layers. In addition, different control actions can be
performed for traffic on different nodes. This ensures multi-layer/user/service traffic
management.
HQoS Hierarchies
In HQoS scheduling, one-layer transit node can be used to implement three-layer scheduling
architecture, or multi-layer transit nodes can be used to implement multi-layer scheduling
architecture. In addition, two or more hierarchical scheduling models can be used together by
mapping a packet output from a scheduling model to a leaf node in another scheduling model,
as shown in Figure 1.1. This provides flexible scheduling options.
− One GQ is configured for the whole building and correspond to 20 residential users.
The sum bandwidth of the 20 residential users is actually the PIR of the GQ. Each
of the 20 residential users use services individually, but the sum bandwidth of them
is restricted by the PIR of the GQ.
The hierarchy model is as follows:
− FQs are used to distinguish services of a user and control bandwidth allocation
among services.
− SQs are used to distinguish users and restrict the bandwidth of each user.
− GQs are used to distinguish user groups and control the traffic rate of five SQs.
FQs enable bandwidth allocation among services. SQs distinguish each user. GQs enable
the CIR of each user to be guaranteed and all member users to share the bandwidth.
The bandwidth exceeds the CIR is not guaranteed because it is not paid by users. The
CIR must be guaranteed because the CIR has been purchased by users. As shown in
Figure 1.2, the CIR of users is marked, and the bandwidth is preferentially allocated to
guarantee the CIR. Therefore, the bandwidth of CIR will not be preempted by the burst
traffic exceeded the service rates.
On Huawei routers, HQoS uses different architectures to schedule upstream or
downstream queues.
The scheduling path of upstream HQoS traffic is FQ -> SQ -> GQ, and then joins the non-
HQoS traffic for the following two-layer scheduling:
Target Blade (TB) scheduling
TB scheduling is also called Virtual Output Queue (VOQ) scheduling.
On a crossroad shown in the following figure, three vehicles (car, pallet trunk, and
carriage truck) come along crossing A and are bound for crossing B, C, and D
respectively. If crossing B is jammed at this time, the car cannot move ahead and stays in
the way of the pallet trunk and carriage truck, although crossing C and D are clear.
If three lanes destined for crossing B, C, and D are set on crossing A, the problem is
resolved.
SFUs on a router are similar to crossing A, B, C, and D. If each board allocates queues to
packets destined for different boards, such queues are called VOQs, which allow packets
destined for different boards to pass when one board is congested.
A device automatically specifies VOQs. Users can not modify the attributes of VOQs.
Upstream multicast traffic has not been duplicated and does not show a destination. Therefore, multicast
traffic is put into a separate VOQ.
For unicast traffic, a VOQ is configured for a destination board.
DRR is implemented between unicast VOQs and then between unicast and multicast
VOQs.
Class queue (CQ) scheduling
Four CQs, COS0 for CS7, CS6, and EF services, COS1 for AF4 and AF3 services, COS2
for AF2 and AF1 services, and COS3 for BE services, are used for upstream traffic.
SP scheduling applies to COS0, which is preferentially scheduled. WFQ scheduling
applies to COS1, COS2, and COS3, with the WFQ weight of 1, 2, and 4 respectively.
Users cannot modify the attributes of upstream CQs and schedulers.
Non-HQoS traffic directly enters four upstream CQs, without passing FQs. HQoS traffic
passes FQs and CQs.
The process of upstream HQoS scheduling is as follows:
1. Entering a queue: An HQoS packet enters an FQ. When a packet enters an FQ, the
system checks the FQ status and determines whether to drop the packet. If the packet is
not dropped, it enters the tail of the FQ.
2. Applying for scheduling: After entering the FQ, the packet reports the queue status
change to the SQ scheduler and applies for scheduling. The SQ scheduler reports the
queue status change to the GQ scheduler and applies for scheduling. Therefore, the
scheduling request path is FQ -> SQ -> GQ.
3. Hierarchical scheduling: After receiving a scheduling request, a GQ scheduler selects an
SQ, and the SQ selects an FQ. Therefore, the scheduling path is GQ -> SQ -> FQ.
4. Leaving a queue: After an FQ is selected, packets in the front of the FQ leave the queue
and enters the VOQ tail. The VOQ reports the queue status change to the CQ scheduler
and applies for scheduling. After receiving the request, the CQ selects a VOQ. Packets in
the front of the VOQ leave the queue and are sent to an SFU.
Therefore, the scheduling process is (FQ -> SQ -> GQ) + (VOQ -> CQ).
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Downstream TM scheduling
Downstream TM scheduling includes the scheduling paths FQ -> SQ -> GQ and CQ ->
port. There are eight CQs for downstream traffic, CS7, CS6, EF, AF4, AF3, AF2, AF1,
and BE. Users can modify the queue parameters and scheduling parameters.
The process of downstream TM scheduling is as follows:
a. Entering a queue: An HQoS packet enters an FQ.
b. Applying for scheduling: The downstream scheduling application path is (FQ -> SQ
-> GQ) + (GQ -> destination port).
The VI is only a name of a scheduler but not a real virtual interface. In actual applications, a VI
corresponds to a sub-interface or a physical interface. The VI refers to different objects in different
applications.
The differences between downstream TM scheduling and downstream eTM scheduling
are as follows:
port-queue This command takes effect for This command takes effect for
command traffic of a specific priority on an traffic of a specific priority in a
interface. non-flow queue.
GQ bandwidth The GQ bandwidth can be shared The GQ bandwidth can be shared
share by its member SQs on a TM chip by its member SQs only on the
if the same GQ profile is used. same interface, even if the same
GQ profile is used.
SQ bandwidth Multiple SQs in the same GQ on Multiple SQs in the same GQ on
share different physical interfaces share different sub-interfaces but not
the bandwidth. physical interfaces share the
bandwidth.
Trunk and The port-queue command can The port-queue command can be
member be configured on a trunk configured on a trunk interface or
interfaces interface or its member its member interfaces, but the
interfaces. The command command configuration takes
configuration on a member effect only for non-flow queues.
interface takes effect
preferentially and schedules all
traffic on the member interface.
interface gigabitethernet1/0/0
port-queue ef shaping 100M
interface gigabitethernet1/0/0.1
user-queue cir 50m pir 50m flow-queue FQ
interface gigabitethernet1/0/0.2
//Note: user-queue and qos-profile are not configured on
gigabitethernet1/0/0.3.
− For downstream TM scheduling, the traffic shaping rate configured using the port-
queue command determines the sum bandwidth of both HQoS and non-HQoS
traffic. Based on the preceding configuration:
가 The rate of EF traffic sent from GE 1/0/0.1 does not exceed 10 Mbps.
나 The rate of EF traffic sent from GE 1/0/0 (including GE 1/0/0, GE 1/0/0.1, and
GE 1/0/0.2) does not exceed 100 Mbps.
− For downstream eTM scheduling, the traffic shaping rate configured using the port-
queue command determines the sum bandwidth of non-HQoS traffic (default SQ
bandwidth). Based on the preceding configuration:
가 The rate of EF traffic sent from GE 1/0/0 and GE 1/0/0.2 (non-HQoS traffic)
does not exceed 100 Mbps.
나 The rate of EF traffic sent from GE 1/0/0.1 does not exceed 10 Mbps.
다 The rate of EF traffic sent from GE 1/0/0 can reach a maximum of 110 Mbps.
Share Shaping
Share shaping, also called Flow Group Queue shaping (FGQ shaping), implements traffic
shaping for a group that two or more flow queues (FQs) in a subscriber queue (SQ) constitute.
This ensures that other services in the SQ can obtain bandwidths.
For example, a user has HSI, IPTV, and VoIP services, and IPTV services include IPTV
unicast and multicast services. To ensure the CIR of IPTV services and prevent IPTV services
from preempting the bandwidth reserved for HIS and VoIP services, you can configure four
FQs, each of which is specially used for HSI, IPTV unicast, and IPTV multicast, and VoIP
services. As shown in Figure 1.1, share shaping is implemented for IPTV unicast and
multicast services, and then HQoS is implemented for all services.
Currently, share shaping applies only to one group of FQs from eight FQs in one SQ. The
share shaping modes shown in Figure 1.2 are not supported on a Huawei router.
Figure 1.2 Share shaping modes not yet supported on a Huawei router
Share shaping can be implemented in either of the following modes on a Huawei router:
Mode A: Share shaping only shapes but not schedule traffic, and queues to which share
shaping applies can use different scheduling algorithms.
Mode B: Queues to which share shaping applies must share the same scheduling
algorithm. These share-shaping-capable queues are scheduled in advance, and then
scheduled with other queues in the SQ as a whole. When share-shaping-capable queues
are scheduled with other queues in the SQ, the highest priority of the share-shaping-
capable queues becomes the priority of the share-shaping-capable queues as a whole, and
the sum of weights of the share-shaping-capable queues become the weight of the share-
shaping-capable queues as a whole.
Currently, share shaping applies only to the P20-E sub-card and P40-E sub-card. The P20-E uses mode
A, whereas the P40-E uses mode B.
Example 1: As shown in Figure 1.3, the traffic shaping rate of the BE, EF, AF1, AF2, and
AF3 queues is 90 Mbit/s, and the sum bandwidth of the SQ is 100 Mbit/s. All queues use the
strict priority (SP) scheduling. After share shaping is configured, the sum bandwidth of the
AF1 and AF3 queues is set to 80 Mbit/s.
Assume that the PIR is ensured for the SQ. The input rate of the EF queue is 10 Mbit/s, and
that of each other queue is 70 Mbit/s. Share shaping allocates bandwidths to the queues in
either of the following modes:
Mode A: SP scheduling applies to all queues.
− The EF queue obtains the 10 Mbit/s bandwidth, and the remaining bandwidth is 90
Mbit/s.
− The bandwidth allocated to the AF3 queue is calculated in the following format:
Min { AF3 PIR, share-shaping PIR, SQ PIR, remaining bandwidth} = Min {90
Mbit/s, 80 Mbit/s, 100 Mbit/s, 90 Mbit/s} = 80Mbps. The traffic rate of the AF3
queue, however, is only 70 Mbit/s. Therefore, the AF3 queue actually obtains the 70
Mbit/s bandwidth, leaving the 20 Mbit/s bandwidth available for other queues.
− The bandwidth allocated to the AF2 queue is calculated in the following format:
Min { AF2 PIR, SQ PIR, remaining bandwidth}= Min {90 Mbit/s, 100 Mbit/s, 20
Mbit/s} = 20 Mbit/s. Therefore, the AF2 queue obtains the 20 Mbit/s bandwidth,
and no bandwidth is remaining.
− The AF1 and BE queues obtain no bandwidth.
Mode B: The EF is scheduled firstly, and then AF3 and AF1 are scheduled as a whole ,
and then BE is scheduled.
− The EF queue obtains the 10 Mbit/s bandwidth, and the remaining bandwidth is 90
Mbit/s.
− The bandwidth allocated to the AF3 queue is calculated in the following format:
Min { AF3 PIR, share-shaping PIR, SQ PIR, remaining bandwidth} = Min
{90Mbps, 80Mbps, 100Mbps, 90Mbps} = 80Mbps. The input rate of the AF3
queue, however, is only 70 Mbit/s. Therefore, the AF3 queue actually obtains the 70
Mbit/s bandwidth, leaving the 20 Mbit/s bandwidth available for other queues.
− The bandwidth allocated to the AF2 queue is calculated in the following format:
Min { AF1 PIR, share-shaping PIR - AF3 bandwidth, SQ PIR, remaining bandwidth
} = Min {90 Mbit/s, 10 Mbit/s, 20 Mbit/s} = 10 Mbit/s. Therefore, the AF1 queue
obtains the 10 Mbit/s bandwidth, and the remaining bandwidth becomes 10 Mbit/s.
− The bandwidth allocated to the AF2 queue is calculated in the following format:
Min { AF2 PIR, SQ PIR, remaining bandwidth } = Min { 90 Mbit/s, 100 Mbit/s, 10
Mbit/s } = 10 Mbit/s. Therefore, the AF2 queue obtains the 10 Mbit/s bandwidth,
and no bandwidth is remaining.
Mode A Mode B
EF SP 10 90 10 10
AF3 SP 70 90 70 70
AF2 SP 70 90 20 10
AF1 SP 70 90 0 10
BE SP 70 Not configured 0 0
Example 2: Assume that the WFQ scheduling applies to the EF, AF1, AF2, and AF3 queues
with the weight ratio as 1:1:1:2 (EF:AF3:AF2:AF1) in example 1. The LPQ scheduling
applies to the BE queue. The PIR 100 Mbit/s is ensured for the SQ. The input rate of the EF
and AF3 queues is 10 Mbit/s, and that of each other queue is 70 Mbit/s. Share shaping
allocates bandwidths to the queues in either of the following modes:
Mode A: The WFQ scheduling applies to all queues.
First-round WFQ scheduling:
− The bandwidth allocated to the EF queue is calculated as follows: 1 / (1 + 1 + 1 + 2)
x 100 Mbit/s=20 Mbit/s. The input rate of the EF queue, however, is only 10 Mbit/s.
Therefore, the remaining bandwidth is 90 Mbit/s.
− The bandwidth allocated to the AF3 queue is calculated as follows: 1 / (1 + 1 + 1 +
2) x 100 Mbit/s=20 Mbit/s. The input rate of the AF3 queue, however, is only 10
Mbit/s. Therefore, the remaining bandwidth is 80 Mbit/s.
− The bandwidth allocated to the AF2 queue is calculated as follows: 1 / (1 + 1 + 1 +
2) x 100 Mbit/s=20 Mbit/s. Therefore, the AF2 queue obtains the 20 Mbit/s
bandwidth, and the remaining bandwidth becomes 60 Mbit/s.
− The bandwidth allocated to the AF1 queue is calculated as follows: 2 / (1 + 1 + 1 +
2) x 100 Mbit/s=40 Mbit/s. Therefore, the AF2 queue obtains the 40 Mbit/s
bandwidth, and the remaining bandwidth becomes 20 Mbit/s.
Second-round WFQ scheduling:
− The bandwidth allocated to the AF2 queue is calculated as follows: 1 / (1 + 2) x 20
Mbit/s = 6.7 Mbit/s.
− The bandwidth allocated to the AF1 queue is calculated as follows: 2 / (1 + 2) x 20
Mbit/s = 13.3 Mbit/s.
No bandwidth is remaining, and the BE queue obtains no bandwidth.
Mode B: The AF3 and AF1 queues, as a whole, are scheduled with the EF and AF2
queues using the WFQ scheduling. The weight ratio is calculated as follows: EF:
(AF3+AF1):AF2 = 1:(1+2):1 = 1:3:1.
First-round WFQ scheduling:
− The bandwidth allocated to the EF queue is calculated as follows: 1 / (1 +3 + 1) x
100 Mbit/s=20 Mbit/s. The input rate of the EF queue, however, is only 10 Mbit/s.
Therefore, the EF queue actually obtains the 10 Mbit/s bandwidth, and the
remaining bandwidth is 90 Mbit/s.
− The bandwidth allocated to the AF3 and AF1 queues, as a whole, is calculated as
follows: 3 / (1 + 3 + 1) x 100 Mbit/s = 60 Mbit/s. Therefore, the remaining
bandwidth becomes 30 Mbit/s. The 60 Mbit/s bandwidth allocated to the AF3 and
AF1 queues as a whole are further allocated to each in the ratio of 1:2. The 20
Mbit/s bandwidth is allocated to the AF3 queue. The input rate of the AF3 queue,
however, is only 10 Mbit/s. Therefore, the AF3 queue actually obtains the 10 Mbit/s
bandwidth, and the remaining 50 Mbit/s bandwidth is allocated to the AF1 queue.
− The bandwidth allocated to the AF2 queue is calculated as follows: 1 / (1 +3 + 1) x
100 Mbit/s=20 Mbit/s. Therefore, the AF2 queue obtains the 20 Mbit/s bandwidth,
and the remaining bandwidth becomes 10 Mbit/s.
Second-round WFQ scheduling:
− The bandwidth allocated to the AF3 and AF1 queues as a whole is calculated as
follows: 3 / (3 + 1) x 10 Mbit/s=7.5 Mbit/s. The 7.5 Mbit/s bandwidth, not
exceeding the share shaping bandwidth, can be all allocated to the AF3 and AF1
queues as a whole. The PIR of the AF3 queue has been ensured. Therefore, the 7.5
Mbit/s bandwidth is allocated to the AF1 queue.
− The bandwidth allocated to the AF2 queue is calculated as follows: 1 / (3 + 1 ) x 10
Mbit/s = 2.5 Mbit/s.
No bandwidth is remaining, and the BE queue obtains no bandwidth.
The following table shows the bandwidth allocation results.
Que Schedulin Input PIR (Mbit/s) Output Bandwidth
ue g Bandwidth (Mbit/s)
Algorithm (Mbit/s)
s Mode A Mode B
EF SP 10 90 10 10
AF3 SP 70 90 10 70
AF2 SP 70 90 26.7 22.5
AF1 SP 70 90 53.3 57.5
BE SP 70 Not configured 0 0
from the three base stations, configure the hierarchy architecture as port -> base station
-> base station service, corresponding to the scheduling path: port -> 1 VI queue -> 1 GQ
-> 3 SQs -> 8 FQs.
You can configured class-based HQoS to meet the preceding requirements. An interface
has two user groups (two RTNs), one user group has three users (three base stations), and
one base station runs multiple services. The hierarchical architecture is configured as
port -> RTN -> base station -> base station services, corresponding to the scheduling
path: port -> GQ -> SQ ->FQ.
Profile-based HQoS
Traffic that enters different interfaces can be scheduled in an SQ.
Profile-based HQoS implements QoS scheduling management for access users by
defining various QoS profiles and applying the QoS profiles to interfaces. A QoS profile
is a set of QoS parameters (such as the queue bandwidth and flow queues) for a specific
user queue.
Profile-based HQoS supports upstream and downstream scheduling.
As shown in Figure 1.3, the router, as an edge device on an ISP network, accesses a local
area network (LAN) through E-Trunk 1. The LAN houses 1000 users that have VoIP,
IPTV, and common Internet services. Eth-Trunk 1.1000 accesses VoIP services; Eth-
Trunk 1.2000 accesses IPTV services; Eth-Trunk 1.3000 accesses other services. The
802.1p value in the outer VLAN tag is used to identify the service type (802.1p value 5
for VoIP services and 802.1p value 4 for IPTV services). The VID that ranges from 1 to
1000 in the inner VLAN tag identifies the user. The VIDs of Eth-Trunk 1.1000 and Eth-
Trunk 1.2000 are respectively 1000 and 2000. It is required that the sum bandwidth of
each user be restricted to 120 Mbit/s, the CIR be 100 Mbit/s, and the bandwidth allocated
to VoIP and IPTV services of each user are respectively 60 Mbit/s and 40 Mbit/s. Other
services are not provided with any bandwidth guarantee.
You can configured profile-based HQoS to meet the preceding requirements. Only traffic
with the same inner VLAN ID enters the same SQ. Therefore, 1000 SQs are created.
Traffic with the same inner VLAN ID but different outer VLAN IDs enter different FQs
in the same SQ.
Configuration example:
flow-queue test
queue ef pq shaping 60000
queue af4 wfq shaping 40000
qos-profile qp1
user-queue cir 100 pir 120 flow-queue test
interface Eth-Trunk1.1000
trust 8021p
control-vid 1000 qinq-termination
vlan-group 1
qinq termination pe-vid 1000 ce-vid 1 to 1000 vlan-group 1
ip binding vpn-instance voip
ip address 168.0.1.1 255.255.255.0
qos-profile qp1 inbound pe-vid 1000 ce-vid 1 to 1000 identifier ce-vid group
group1
qos-profile qp1 outbound pe-vid 1000 ce-vid 1 to 1000 identifier ce-vid group
group1
interface Eth-Trunk1.2000
control-vid 2000 qinq-termination
vlan-group 1
qinq termination pe-vid 2000 ce-vid 1 to 1000 vlan-group 1
ip binding vpn-instance iptv
ip address 168.0.2.1 255.255.255.0
qos-profile qp1 inbound pe-vid 2000 ce-vid 1 to 1000 identifier ce-vid group
group1
qos-profile qp1 outbound pe-vid 2000 ce-vid 1 to 1000 identifier ce-vid group
group1
interface Eth-Trunk1.3000
control-vid 3000 qinq-termination
vlan-group 1
qinq termination pe-vid 3000 ce-vid 1 to 1000 vlan-group 1
ip binding vpn-instance others
ip address 168.0.1.1 255.255.255.0
qos-profile qp1 inbound pe-vid 3000 ce-vid 1 to 1000 identifier ce-vid group
group1
qos-profile qp1 outbound pe-vid 3000 ce-vid 1 to 1000 identifier ce-vid group
group1
identifier ce-vid: indicates that traffic with the same CE-VID share the SQ bandwidth.
group group1: indicates that the system allocates the SQ bandwidth based on interfaces by default. SQs
on different interfaces cannot share the bandwidth. Profile-based HQoS allows traffic from one user to
be distributed on different interfaces. Therefore, a group must be specified so that SQs on different
interfaces can share the same board resource. In this example, traffic from one SQ is distributed on
different interfaces. Therefore, a group must be specified.
In the preceding configuration, the trust 8021p command, not mentioned here, must be configured on
the inbound interface for return traffic.
6 MPLS QoS
On an MPLS network, however, the label switching router (LSR) does not check the IP
header information. Therefore, traffic classification cannot be implemented based on the TOS
or DSCP fields of packets. RFC 3270 defines two schemes for traffic classification on an
MPLS network.
Scheme 1: E-LSP
The EXP-Inferred-PSC LSP (E-LSP) scheme uses the 3-bit EXP value in an MPLS header to
determine the PHB of the packets. Figure 1.1 shows an MPLS header.
The EXP value can be copied from the DSCP or IP precedence in an IP packet or be set by
MPLS network carriers.
The label determines the forwarding path, and the EXP determines the PHB.
The E-LSP is applicable to networks that support not more than eight PHBs. The precedence
field in an IP header also has three bits, same as the EXP field length. Therefore, one
precedence value in an IP header exactly corresponds to one precedence value in an MPLS
header. However, the DSCP field in an IP header has six bits, different from the EXP length.
Therefore, more DSCP values correspond to only one EXP value. As the IEEE standard
defines, the three left-most bits in the DSCP field (the CSCP value) correspond to the EXP
value, regardless of what the three right-most bits are.
During traffic classification, the EXP value in an MPLS packet is mapped to the scheduling
precedence and drop precedence. Except traffic classification, QoS operations on an MPLS
network, such as traffic shaping, traffic policing, and congestion avoidance, are implemented
in the same manner as those on an IP network.
When the MPLS packet is leaving the LSR, the scheduling precedence and drop precedence
are mapped back to the EXP value for further EXP-based operations on the network.
For more details about the default mapping between the EXP value, service class, and color on Huawei
routers, see 3.3.2QoS Priority Mapping.
Scheme 2: L-LSP
The Label-Only-Inferred-PSC LSP (L-LSP) scheme uses labels to transmit PHB information.
The EXP field has only three bits, and therefore cannot be used alone to identify more than
eight PHBs. Instead, only the 20-bit label in an MPLS header can be used to identify more
than eight PHBs. The L-LSP is applicable to networks that support more than eight PHBs.
During packet forwarding, the label determines the forwarding path and scheduling behaviors
of the packets; the EXP carries the drop precedence. Therefore, the label and EXP both
determine the PHB. PHB information needs to be transmitted during LSP establishment. The
L-LSPs can transmit single-PHB flow, and also multi-PHB flow that has packets of the same
scheduling behavior but different drop precedences.
The EXP determines the PHB (including the The label and EXP determine the PHB.
drop precedence).
No additional signals are needed. Signals are needed to establish LSPs.
Not supported on ATM links. Supported on ATM links.
Each LSP supports up to eight behavior Each LSP supports only one BA.
aggregates (BAs).
Carriers need to determine whether to trust the CoS information in an IP or MPLS packet that
is entering an MPLS network or is leaving an MPLS network for an IP network. RFC 3270
defines three modes for processing the CoS: Uniform, Pipe, and Short Pipe.
Uniform Mode
When carriers determine to trust the CoS value (IP precedence or DSCP) in a packet from an
IP network, the Uniform mode can be used. The MPLS ingress LSR copies the CoS value in
the packet to the EXP field in the MPLS outer header to ensure the same QoS on the MPLS
network. When the packet is leaving the MPLS network, the egress LSR copies the EXP value
back to the IP precedence or DSCP in the IP packet.
As its name implies, Uniform mode ensures the same priority of packets on the IP and MPLS
networks. Priority mapping is performed for packets when they are entering or leaving an
MPLS network. Uniform mode has disadvantages. If the EXP value in a packet changes on an
MPLS network, the PHB for the packet that is leaving the MPLS network changes
accordingly. In this case, the original CoS of the packet does not take effect.
Pipe Mode
When carriers determine not to trust the CoS value in a packet from an IP network, the Pipe
mode can be used. The MPLS ingress delivers a new EXP value to the MPLS outer header,
and the QoS guarantee is provided based on the newly-set EXP value from the MPLS ingress
to the egress. The CoS value is used only after the packet leaves the MPLS network.
In Pipe mode, the MPLS ingress does not copy the IP precedence or DSCP to the EXP field
for a packet that enters an MPLS network. Similarly, the egress does not copy the EXP value
to the IP precedence or DSCP for a packet that leaves an MPLS network. If the EXP value in
a packet changes on an MPLS network, the change takes effect only on the MPLS network.
When a packet leaves an MPLS network, the original CoS continues to take effect.
In Pipe or Short Pipe mode, carriers can define a desired CoS value for QoS implementation
on the carriers' own network, without changing the original CoS value of packets.
The difference between Pipe mode and Short Pipe mode lies in the QoS marking for the
outgoing traffic from a PE to a CE. In Pipe mode, outgoing traffic is scheduled based on a
CoS value defined by carriers, whereas outgoing traffic uses the original CoS value in Short
Pipe mode, as shown in Figure 1.2.
Both BA and PHB implementations are required on the network-side (NNI) interface of
a PE. Therefore, run the trust upstream command on the network-side interface.
Both BA and PHB implementations are required on the network-side (NNI) and user-
side (UNI) interfaces of a P. Therefore, run the trust upstream command on both the
network-side and user-side interfaces.
On the UNI interface of a PE, implement BA for upstream traffic and the one of the
following operations for downstream traffic:
− In Uniform mode, PHB is required. To be specific, in Uniform mode, both BA and
PHB implementations are required on the PE. Therefore, run the trust upstream
command on the UNI interface too.
− In Pipe or Short Pipe mode, the UNI interface of the PE requires BA but not PHB.
Therefore, run the diffserv-mode { pipe service-class color | short-pipe service-
class color } command on the UNI interface. Note that the diffserv-mode
command is mutually exclusive with the trust upstream command.
In V600R002 or earlier versions, PHB is enabled by default. In Pipe or Short Pipe mode, run the qos
phb disable command on the user-side interface of the PE to disable PHB.
In V600R003 or later versions, PHB is disabled by default.
DSCP may be changed in L3VPN ingress PE node or egress PE node, for details, see Table
1.1.
The preceding configurations are provided, regardless of 802.1p value. Considering 802.1p value, run
the qos phb { disable | enable } vlan command based on actual requirements and board differences.
6.4 MPLS-TE
Overview
Multiprotocol label switching traffic engineering (MPLS TE) integrates the MPLS technology
with traffic engineering. It can reserve resources by setting up label switched paths (LSPs) for
a specified path in an attempt to avoid network congestion and balance network traffic.
MPLS TE provides a wide range of attributes, including assured bandwidth, explicit path,
affinity attribute, priority and preemption, and fast reroute (FRR).
Introduction
On traditional IP networks, devices select the shortest path as the route regardless of other
factors, such as the bandwidth. The shortest path may be congested with traffic, whereas other
available paths are idle.
In the example shown in Figure 1.1, links have the same metric. The shortest path from R1
(R8) to R5 is R1 (R8) → R2 → R3 → R4 → R5. Data is forwarded along this shortest path
though other paths exist. In this manner, the path R1 (R8) → R2 → R3 → R4 → R5 may be
congested because of overload, and the path R1 (R8) → R2 → R6 → R7 → R4 → R5 may be
idle.
Conventional TE solutions to congestion are as follows:
Principles
Information Advertisement
MPLS TE resolves the congestion due to unbalanced load. In addition to network
topology information, TE must be aware of the load information of a network. To
advertise link status including the maximum link bandwidth, the maximum reservable
bandwidth, the current reserved bandwidth, and the link color, MPLS TE extends the
current IGP. For example, MPLS TE introduces new TLVs into IS-IS or new LSAs into
OSPF.
By extending the IGP, MPLS TE maintains link attributes and topology attributes on
each LSR to form a TE DataBase (TEDB).
Path Calculation
After the TEDB is created through the Information Advertisement, each MPLS TE
ingress obtains the network load information and select the paths that meet the specified
constraints. MPLS TE allows carriers to specify a path on each ingress. For example,
carriers can define a node that traffic must pass through or a node that traffic must
bypass. The nodes can be specified hop by hop or some hops are specified. In addition,
some constraints, such as the bandwidth, can be specified.
MPLS TE uses the Constraint Shortest Path First (CSPF) algorithm to calculate the
shortest path that meets with the specified constraints based on the TEDB information.
RSVP-TE
After calculating the shortest path from the ingress to the egress, MPLS TE uses the
extended Resource Reservation Protocol (RSVP) signaling, RSVP-TE, to dynamically
set up constraint-based routed LSP (CR-LSPs).
RSVP-TE extends RSVP as follows:
− RSVP-TE adds label request objects in the Path message to support label requests
and label objects in the RESV message to support label allocation.
− The extended RSVP messages can carry label binding information and information
about constraints during path selection. This information helps set up RSVP-TE
CR-LSPs.
− In addition, RSVP-TE maintains resource reservation using the summary refresh
(Srefresh) and Hello mechanism, reducing information to be transmitted and
processed for maintaining RSVP soft state and lightening the device workload.
LSP Establishment
Figure 1.1 shows how a CR-LSP is set up.
e. The ingress uses the CSPF algorithm to calculate the shortest path that meets
specific constraints, such as the bandwidth, explicit paths, and color, and generate a
Path message. The Path message carries constraints.
f. The Path message is sent from the ingress through the shortest path calculated using
CSPF to the egress. Path State Blocks (PSBs) are created on the passing LSRs.
g. After receiving a Path message, the egress returns a Resv message. The Resv
message, carrying resource reservation information, is sent to the ingress hop-by-
hop. Each passing LSR creates and maintains a Reserved State Block (RSB) and
allocates a label.
h. When the Resv message reaches the ingress, an LSP is set up.
MPLS TE Features
Explicit Path
MPLS TE creates an LSP based on a specific path, and this path is called an explicit
path. Explicit paths are classified as strict explicit paths or loose explicit paths.
− Strict explicit path
A strict explicit path means that a hop is directly connected to its next hop. By
specifying a strict explicit path, the most accurate path is provided for a CR-LSP.
As shown in Figure 1.1, an LSP is set up over a strict explicit path from the ingress
LSRA to the egress LSRF. "B strict" indicates that the LSP must pass through
LSRB and the previous hop of LSRB is LSRA. "C strict" indicates that the LSP
must pass through LSRC and the previous hop of LSRC is LSRB. In this manner,
an accurate path is provided for the LSP.
− Loose explicit Path
A loose explicit path contains the specified nodes through which an LSP must pass;
however, other routers can exist between nodes.
As shown in Figure 1.2, an LSP is set up over a loose explicit path from the ingress
LSRA to the egress LSRF. "D loose" indicates that the LSP must pass through
LSRD and nodes can exist between LSRD and LSRA.
make-before-break mechanism, the system does not need to calculate the bandwidth
reserved for the new path. The new path uses the bandwidth of the original path. The
overlapped path consumes no additional bandwidth, but the path not overlapped still
consumes additional bandwidth.
In the example shown in Figure 1.3, the maximum reservable bandwidth is 60 Mbit/s. A
CR-LSP along the path R1 -> R2 -> R3 -> R4 is set up with the bandwidth 40 Mbit/s.
The path is expected to change to R1 -> R5 -> R3 -> R4 to forward data because R5 has
a light load. The available bandwidth of the R3→R4 path is only 20 Mbit/s, which
cannot meet the requirement of 40 Mbit/s. To resolve this problem, the make-before-
break mechanism is used
to allow the newly established path R1→R5→R3→R4 to use the bandwidth of the
original path R3→R4. After the new CR-LSP is established, the original path is deleted
after traffic is switched to the new path.
Increasing the tunnel bandwidth is similar. If the reservable bandwidth of the shared link
increases to a certain extent, a new path can be established.
Use the case in Figure 1.3 as an example. The maximum reservable bandwidth is 60
Mbit/s. A CR-LSP along the path R1 -> R2 -> R3 -> R4 is set up with the bandwidth 30
Mbit/s.
The path is expected to change to R1 -> R5 -> R3 -> R4 to forward data because R5 has
a light load, and the released bandwidth is 40 Mbit/s. The available bandwidth of the
R3→R4 path is only 30 Mbit/s, which cannot meet the requirement of 40 Mbit/s. To
resolve this problem, the make-before-break mechanism is used
to allow the newly established path R1→R5→R3→R4 to use the bandwidth of the
original path R3→R4. The bandwidth of the new path is 40 Mbit/s, among which 30
Mbit/s is released by the original path. After the new CR-LSP is established, the original
path is deleted after traffic is switched to the new path.
Automatic Bandwidth Adjustment
When establishing a CR-LSP, a device assigns bandwidth for the CR-LSP according to
the signaling link selection (SLS) or traffic conditioning specification (TCS). Based on
the original statistics on this CR-LSP, automatic bandwidth adjustment allows the
adjustment of the bandwidth consumed by this CR-LSP. The adjustment does not affect
the current traffic in the CR-LSP.
Through regular sampling, such as sampling every five minutes, you can obtain the
average bandwidth of this CR-LSP in a sampling period. After sampling many times in a
period, such as 24 hours, you can calculate a new bandwidth based on the average value
of the sampled values to establish a CR-LSP with different bandwidth. After the CR-LSP
is established, the traffic is switched to the new CR-LSP, and the original CR-LSP is
deleted. If the CR-LSP fails to be established, the traffic is still in the original CR-LSP.
The bandwidth is adjusted after the next sampling period.
To avoid unnecessary adjustment, you can configure the adjustment threshold. The
bandwidth is adjusted only when the ratio of the maximum average bandwidth of this
time to the maximum average bandwidth of last time reaches a certain threshold. You can
also set the maximum and minimum bandwidth. The adjusted bandwidth must be within
the range.
MPLS TE FRR
To ensure continuity of services, MPLS TE introduces the CR-LSP backup mechanism
and FRR mechanism. If a link fault occurs, traffic can be switched in time.
In TE FRR, bypass tunnels are pre-established, not using failed links or nodes, to protect
the primary CR-LSP. When a link or node fails, traffic is transmitted over the bypass CR-
LSP and the ingress can simultaneously initiate the setup of the primary CR-LSP without
interrupting data transmission.
MPLS TE FRR has two protection modes, link protection and node protection, as shown
in Figure 1.4 and Figure 1.5.
− Link protection: A Point of Local Repair (PLR) and a Merge Point (MP) are
connected through a link, over which a primary CR-LSP is set up. When this link
fails, traffic is switched to the bypass CR-LSP.
− Node protection: A PLR and an MP are connected through a node, and a primary
CR-LSP passes through the node. When the node fails or the link between the PLR
and the node fails, traffic is switched to the bypass CR-LSP.
CR-LSP Backup
Important LSPs need to be backed up. If a primary CR-LSP fails, traffic will be switched
to the backup CR-LSP.
A backup CR-LSP protects a primary CR-LSP in the same tunnel. If the ingress detects
that the primary CR-LSP is unavailable, the ingress switches traffic to a backup CR-LSP.
After the primary CR-LSP recovers, traffic is switched back.
− N:1 protection mode: A tunnel functions as the protection tunnel for multiple
working tunnels. When any of the working tunnels fails, the data is switched to the
shared protection tunnel.
Like CR-LSP backup, the tunnel protection group is also an end-to-end tunnel protection
technology. Differences between CR-LSP backup and the tunnel protection group are as
follows:
− The attributes of tunnels in a tunnel protection group are irrelevant to each other.
For example, the protection tunnel with the bandwidth 10 Mbit/s can protect the
working tunnel with the bandwidth 100 Mbit/s. In CR-LSP backup, however,
except the TE FRR attribute, the attributes such as bandwidth, setup priority, and
holding priority of the primary CR-LSP are the same as those of the backup CR-
LSP.
− A tunnel protection group uses one tunnel to protect another tunnel, whereas CR-
LSP backup allows the primary and backup CR-LSPs to be created over one tunnel.
As shown in Figure 1.2, the bandwidth of each link is 100 Mbit/s, and all links share the
same metric. Voice traffic is transmitted from R1 to R4 and from R2 to R4 at the rate of
60 Mbit/s and 40 Mbit/s, respectively. Traffic from R1 to R4 is transmitted along the LSP
over the path R1 → R3 → R4, with the ratio of voice traffic being 60% between R3 and
R4. Traffic from R2 to R4 is transmitted along the LSP over the path R2 → R3 → R7 →
R4, with the ratio of voice traffic being 40% between R7 and R4.
When the link between R3 and R4 fails, as shown in Figure 1.3, the LSP between R1 and
R4 switches to the path R1 → R3 → R7 → R4 because this path is the shortest path with
sufficient bandwidth. At this time, the ratio of voice traffic from R7 to R4 reaches 100%,
causing the sum delay of voice traffic to prolong.
When the link from R3 to R4 fails, VoIP and HSI services from R1 to R4 are switched to the
path R1 → R3 → R5 → R6 → R4, as shown in Figure 1.2. Voice services from R1 to R4 can
also be controlled within a proper range.
TE-Class CT Priority
TE-Class[0] 0 0
TE-Class[1] 1 0
TE-Class[2] 2 0
TE-Class[3] 3 0
TE-Class[4] 0 7
TE-Class[5] 1 7
TE-Class[6] 2 7
TE-Class[7] 3 7
An LSP can be set up only when both <CT, setup-priority> and <CT, holding-priority>
exist in the TE-class mapping table.
If the TE-class mapping table of a node contains only TE-Class [0] = <CT0, 6> and TE-
Class [1] = <CT0, 7>, only three types of LSPs can be set up:
− Class-Type = CT0, setup-priority = 6, holding-priority = 6
− Class-Type = CT0, setup-priority = 7, holding-priority = 6
− Class-Type = CT0, setup-priority = 7, holding-priority = 7
In the establishment of a CR-LSP, when configuring the ingress or reserving resources
along the nodes of the LSP, you need to take the TE-class mapping table into account.
Otherwise, the CR-LSP cannot be set up. It is recommended that all LSRs on the MPLS
network be configured with the same TE-class mapping table.
DS-TE LSP Establishment
The DS-TE LSP establishment is similar to the MPLS TE LSP establishment except for
the following differences:
− The Path message carries CT information.
− After the LSRs receive Path messages carrying CT information, the LSRs check
whether the <CT, priority> exists in the local TE-class mapping table and whether
the bandwidth requirements in the CT information are met. If both conditions are
met, a new DS-TE LSP can be set up.
− After an LSP is set up, each LSR starts to calculate the available bandwidth for each
CT. The reserved information is sent to the IGP module to advertise to other LSRs
on the network.
The Bandwidth Constraints Model (BCM) is used to define the maximum number of BCs,
which CTs can use the bandwidth of each BC, and how to use BC bandwidth.
Currently, the IETF defines the following BCMs:
MAM
The Maximum Allocation Model (MAM) maps a BC to a CT, and CTs do not share
bandwidth resources.
In the MAM, the sum of CTi LSP bandwidths does not exceed BCi (i ranges from 0 to
7); the sum of bandwidths of all LSPs of all CTs does not exceed the maximum
reservable bandwidth of the link.
For example, a link with the bandwidth of 100 Mbit/s adopts the MAM and supports 3
CTs (CT0, CT1, and CT2). BC0, which is 20 Mbit/s, carries CT0 (BE flows); BC1,
which is 50 Mbit/s, carries CT1 (AF flows); BC2, which is 30 Mbit/s, carries CT2 (EF
flows). In this case, the total LSP bandwidths that are used to transmit BE flows cannot
exceed 20 Mbit/s; the total LSP bandwidths that are used to transmit AF flows cannot
exceed 50 Mbit/s; the total LSP bandwidths that are used to transmit EF flows cannot
exceed 30 Mbit/s.
In the MAM, bandwidth preemption between CTs does not occur, but certain bandwidth
resources may be wasted.
RDM
The Russian Dolls Model (RDM) permits bandwidth sharing between CTs.
The bandwidth of BC0 is smaller than the maximum reservable bandwidth on a link.
Nesting relationships exist among BCs. As shown in Figure 1.4, the bandwidth of BC2 is
fixed; the bandwidth of BC1 nests the bandwidth of BC2; the bandwidth of BC0 nests
the bandwidth of all BCs. This model is similar to a Russian doll. A large doll nests a
smaller doll and then this smaller doll nests a much smaller doll, and so on.
For example, a link with the bandwidth of 100 Mbit/s adopts the RDM and supports 3
CTs (CT0, CT1, and CT2). CT0, CT1, and CT2 are used to transmit BE flows, AF flows,
and EF flows, respectively. BC0 is 100 Mbit/s; BC1 is 50 Mbit/s; BC2 is 20 Mbit/s. In
this case, the total LSP bandwidths that are used to transmit EF flows cannot exceed 20
Mbit/s; the total LSP bandwidths that are used to transmit EF flows and AF flows cannot
exceed 50 Mbit/s; the total LSP bandwidths that are used to transmit BE, AF, and EF
flows cannot exceed 100 Mbit/s.
The RDM allows bandwidth preemption among CTs. If 0 ≤ m < n ≤7 and 0 ≤ i < j ≤ 7,
the preemption relationship among CTs is: CTi with the priority m can preempt the
bandwidth of CTi with the priority n and the bandwidth of CTj with the priority n. The
total LSP bandwidths of CTi, however, does not exceed the bandwidth of BCi.
In the RDM, the bandwidth is efficiently used, but CTs cannot be isolated and the
bandwidth of each CT is ensured using the preemption mechanism.
Extended-MAM
The Extended-MAM is a bandwidth allocation mode that supports E-LSP.
The extended-MAM supports eight implicit TE-classes of the combinations of CT0 and
the priority being 0 to 7. Eight implicit CTs are flooded through the Unreserved BW TLV
of the IGP module.
One BC is mapped to one or more CTs. One BC is mapped to one CT, which is easy
to understand and manage.
CTs cannot be isolated, and the CT Different CTs are isolated, and the CT
bandwidth is ensured using preemption. bandwidth is ensured without preemption.
The bandwidth is used efficiently. The bandwidth may be wasted.
Not recommended on networks that do not Applicable to networks that do not allow
allow preemption. preemption.
Bandwidth model Supports the MAM and Supports the RDM, MAM,
RDM. and extended MAM.
CT type Supports CT0 and CT1 in Supports CT0 to CT7 in
single CT mode. CT0 and multi-CT mode. Eight CTs
CT1 cannot be both can be configured together.
configured.
BC type Supports BC0 and BC1. Supports BC0 to BC7.
TE-class mapping table The TE-class mapping table The TE-class mapping table
can be configured but can be configured and take
cannot take effect. The TE- effect.
class mapping table is used
only to house the established
LSP to prevent the LSP from
being deleted.
IGP message The priority-based The CT information is
reservable bandwidth is carried in the Unreserved
carried in the Unreserved bandwidth sub-TLV and
bandwidth sub-TLV. Bandwidth Constraints sub-
TLV.
RSVP message The CT information is Single-CT: CT
carried in the ADSPEC information is carried in the
object. CLASSTYPE object.
Multi-CT: CT information
is carried in the
EXTENDED_CLASSTYPE
object.
Like MPLS TE, DS-TE tunnel protection mechanisms can be used individually or jointly.
CT7 CS7 PQ
CT6 CS6 PQ
CT5 EF WFQ
CT4 AF4 WFQ
CT3 AF3 WFQ
CT2 AF2 WFQ
CT1 AF1 WFQ
CT0 BE LPQ
Except for the mapping between the CT and CQ/FQ, DS-TE implements traffic classification,
traffic shaping, traffic policing, and congestion avoidance in the same manner as MPLS
DiffServ.
On VPNs using the MPLS TE tunnel, EF, AF, and BE services can be transmitted over
the same VPN. This means that different services may be transmitted over the same
tunnel at the same time.
To prevent mutual interference between different services in a TE tunnel, you can create
multiple VPNs and TE tunnels so that different tunnels transmit different services. If
multiple VPNs transmit services concurrently on the network, a large number of VPNs
and TE tunnels need to be created, which is a waste of resources.
An alternative is to deploy DS-TE. A multi-CT LSP is used to transmit different services
of a VPN. A multi-CT LSP can be reserved for eight CTs, each corresponding to a
service of a VPN. These services are mutually independent.
As shown in Figure 1.1, BE, AF, and EF services access VPN1 at the same time. You
need to set up only one TE tunnel, configure CT0 (100 Mbit/s), CT1 (50 Mbit/s), and
CT2 (10 Mbit/s) for the tunnel, and bind VPN1 to the tunnel on the ingress. After the
configurations are complete, all the traffic of VPN1 is classified and then enters the
corresponding queue.
that the services of different VPNs use different TE tunnels. On each TE tunnel, two
CTs are configured for the two types of services.
− Multiple VPNs with partially same services:
A TE tunnel needs to be set up for each VPN. The required number of CTs of each
TE tunnel equals the number of service types of each VPN.
Application Scenario 3: Access of VPN traffic and Non-VPN Traffic
Both VPN traffic and non-VPN traffic coexist and have different QoS requirements. If
all traffic is transmitted over a TE tunnel, VPN traffic and non-VPN traffic may compete
for resources and QoS for each type of service cannot be guaranteed.
This scenario can be classified into the following situations, for each of which a solution
is provided:
− VPNs and non-VPNs with totally different services:
Only one TE tunnel can be used to transmit traffic. Different CTs are configured for
the service classes of VPN traffic and non-VPN traffic. The number of CTs equals
the service number of VPN traffic plus the service number of non-VPN traffic, as
shown in Figure 1.2.
Figure 1.3 VPN traffic and non-VPN traffic over different TE tunnels
MPLS QoS
An MPLS VPN is shared by Internet users and multiple VPN users. Therefore, resources are
competed for between VPNs and between Internet users and VPNs. The DiffServ model
reserves resources on a single node, hardly meeting end-to-end QoS requirements of VPNs.
To resolve this problem, the following schemes are provided:
Scheme 1: LDP LSP/Static LSP + MPLS HQoS
Scheme 2: MPLS TE + MPLS HQoS
Scheme 3: Dedicated MPLS TE tunnel (bound to VPNs) between CEs + MPLS HQoS
Scheme 4: MPLS DiffServ + dedicated MPLS TE + RRVPN
Scheme 5: MPLS DS-TE
If LDP FRR is configured for LDP LSPs and the primary LDP LSP fails, traffic of
multiple VPNs is switched from the primary LDP LSP to the backup LDP LSP. Then
VPN-based HQoS does not take effect on the ingress PE. After the primary LDP LSP
recovers, traffic is switched back to the primary LDP LSP, and VPN-based HQoS
resumes its effect on the ingress PE.
Scheme 2 restricts the sum bandwidth of all VPNs on the ingress within the maximum
reservable bandwidth so that downstream nodes do not compete for resources.
Supplement to Tunnel Protection
The make-before-break mechanism is used to create CR-LSPs when attributes of MPLS TE
tunnels are changed.
When the bandwidth of an MPLS TE tunnel is changed, a CR-LSP is set up. If the new
bandwidth is lower than the VPN bandwidth, another MPLS TE tunnel that meets the
bandwidth requirements is used for VPN forwarding. If the changed bandwidth is higher
than or equal to the VPN bandwidth, the newly established CR-LSP is used for VPN
forwarding.
When the explicit path of an MPLS TE tunnel is changed, a CR-LSP is reestablished. If
the new explicit path does not meet the MPLS TE requirements, the original explicit path
is still used for MPLS TE forwarding. If the new explicit path meets the MPLS TE
requirements, the new explicit path is used for MPLS TE forwarding. The original MPLS
TE tunnel is still used for VPN forwarding, regardless of whether traffic is switched to
the new explicit path.
If the MPLS TE tunnel is configured with CR-LSP hot standby and the primary CR-LSP fails,
the CR-LSP is reestablished, and VPN traffic is switched to the backup CR-LSP. VPN-based
QoS operations, such as bandwidth guarantee, traffic shaping, and queue scheduling, can be
implemented for the VPN traffic.
If the MPLS TE tunnel is configured with hot standby and a best-effort path and both the
primary and backup CR-LSPs fail, VPN traffic is switched to the best-effort path, and the
VPN-based bandwidth guarantee and rate limit configurations do not take effect on the public
network side. After the MPLS TE tunnel recovers, the VPN-based bandwidth guarantee and
rate limit configurations take effect again on the public network side.
If the MPLS TE tunnel is configured with CR-LSP backup (not hot standby), TE FRR, and
tunnel protection groups, VPN-based QoS operations, such as bandwidth guarantee, traffic
shaping, and queue scheduling, cannot be implemented.
MPLS HQoS is implemented on the ingress PE to distinguish VPNs and services in each
VPN. For the HQoS scheduling mode, see Figure 1.1.
On the tunnel, however, services are transmitted regardless of priorities. Therefore, if the
actual traffic rate exceeds the specification, services that are sensitive to QoS are affected. In
addition, this scheme is of poor scalability. The tunnel multiplexing technology is not applied
to the networking, so the tunnel quantity is in direct ratio to the square of the CE quantity. A
large number of tunnels are required on the backbone network. MPLS TE requires that the
signaling protocol periodically refresh resource reservation status on a tunnel, consuming a
large number of resources.
policing can be implemented for incoming traffic of each VPN or traffic of each service
of a VPN.
Scheme 4 restricts the sum bandwidth of all VPNs on the ingress within the maximum
reservable bandwidth so that downstream nodes do not compete for resources.
Chapter Link
7 ATM QoS
As shown in Figure 1.1, the data of users D, C, and A is allocated to transmission lines based
on their arrival sequence. Because user B does not send any data, user B does not occupy
bandwidth resources. In this sense, an ATM connection is a virtual connection.
VCC
On an ATM network, the source and destination must communicate over an established
connection. The establishment of an ATM connection is similar to the establishment of a
telephone call connection. An ATM connection is a virtual circuit connection (VCC) uniquely
identified by a virtual path identifier (VPI)/virtual channel identifier (VCI) pair.
From the perspective of routing, a VPI/VCI pair functions in a similar way as an IP address.
Multiple VPI/VCI pairs uniquely identify a multi-segment connection. When a switching
node receives an ATM cell, the switching node searches its local VPI/VCI mapping table and
replaces the incoming VPI/VCI pair carried in the cell with the corresponding outgoing
VPI/VCI pair.
ATM switching includes VP switching and VC switching. A VP switching node changes only
the VPI value of the VPI/VCI pair, whereas a VC switching node changes both the VPI and
VCI values of the VPI/VCI pair. A VP can be viewed as a large pipe with VCs as its small
pipes. Figure 1.2 shows the relationships between VPs and VCs.
The multiplexing, switching, and transmission of ATM cells are performed on VCs.
Traffic Control
On an ATM network, traffic control is implemented based on service types and quality.
The ATM Forum classifies service types as constant bit rate (CBR), real-time variable bit rate
(rt-VBR), non-real-time variable bit rate (nrt-VBR), available bit rate (ABR), and unspecified
bit rate (UBR) based on service rates. These service types will be described in details in the
section ATM Service Types.
Besides determining service types based on service rates, the ATM Forum defines QoS and
traffic parameters to measure ATM service quality. Before an ATM connection is established,
QoS and traffic parameters are negotiated between an ATM user and the ATM network or
between two ATM networks. These negotiated parameters form a traffic contract.
Some traffic parameters describe the traffic characteristics of services. These parameters
are called source traffic parameters. These parameters include:
− PCR(Peak Cell Rate): indicates the maximum allowable rate at which cells can be
transmitted along an ATM connection. Cells exceeding the PCR will be dropped by
the ATM ingress or marked as droppable. Cells marked as droppable will be
dropped by any node that encounters traffic congestion. For CBR services, the PCR
represents the constant bandwidth provided by a VC.
− Sustainable cell rate (SCR): indicates the average allowable, long-term cell transfer
rate on a specific ATM connection. The SCR is specific to VBR services.
− Minimum cell rate (MCR): indicates the minimum allowable rate at which cells can
be transmitted along an ATM connection.
− Maximum burst size (MBS): indicates the maximum allowable burst size of cells
that can be transmitted contiguously on a particular ATM connection. The MBS is
specific to VBR services. The burst size indicates the ratio of the peak bit rate to the
average bit rate. The larger the burst size, the larger the rate variation of the service.
Some traffic parameters describe the characteristics of services in relation to time. For
example, the cell delay variance tolerance (CDVT) indicates the maximum cell delay
variance (CDV) allowed between two terminals. These parameters apply to real-time
services.
QoS parameters
− peak-to-peak CDV (peak-to-peak Cell Delay Variance): indicates the difference
between the maximum and minimum cell transfer delay (CTD) experienced during
the connection.
− Maximum cell transfer delay (MCTD): indicates the maximum CTD. The CTD
indicates the delay experienced by a cell between the time it takes for the first bit of
the cell to be transmitted by the source and the last bit of the cell to be received by
the destination. The MCTD is an important parameter for CBR services. If the
transmission duration of some cells is too long, the destination will regard these
cells as lost or delayed. The destination drops delayed cells even if these cells have
been reassembled into packets. Large CTD will affect the quality of voice services.
− Cell loss rate (CLR): indicates the percentage of cells that are lost on the network
due to errors or congestion and are not received by the destination. Cells may fail to
reach the destination in the following situations:
1. The destination is incorrect.
2. ATM nodes experience severe congestion.
3. The burst size of the traffic sent by the source exceeds the specifications in the
traffic contract.
4. The CTD of cells exceeds the MCTD.
CAC
When a terminal initiates a call request, the terminal includes the characteristics of the traffic
to be sent to the network and service quality requirements in the call request.
After the network receives a call request, the network starts the call admission control (CAC)
function to detect the distribution of network resources. Then, the network determines
whether the available network resources can meet the service quality requirements.
If the available network resources can meet requirements, the network accepts the call request
and establishes a new VC. In this situation, the service quality of existing connections remains
unchanged. Otherwise, the network rejects the call request.
Congestion Control
When an ATM network detects congestion, the network starts congestion control by
selectively dropping cells of minor importance and reporting forward and feedback
congestion indications. If the preceding measures cannot put congestion under control, the
ATM network releases the congested connection or reroute traffic.
Selectively Dropping Cells
The cell loss priority (CLP) bit of cells transmitted over an ATM network indicates the
drop priority of cells. The CLP bit has two values: 0 and 1. If congestion occurs, the
ATM network drops cells with the CLP bit as 1 first.
The cells with the CLP bit as 1 may be cells of minor importance sent by users or cells
whose CLP bits are changed from 0 to 1 by usage parameter control (UPC) or network
parameter control (NPC) due to inconsistency with negotiated specifications. The ATM
network drops cells with the CLP bit as 1 to ensure the transmission quality of high-
priority cells.
Reporting Congestion Indications
The measure of selectively dropping cells is taken by the ATM node where congestion
occurs. In some situations, the entire network needs to work in coordination to deal with
congestion. The nodes that experience traffic must be able to spread congestion
information to other parts of the network for other nodes to take responsive measures to
control congestion. Congestion indication types are classified as explicit forward
congestion indication (EFCI) and feedback congestion indication (FCI).
The EFCI process is as follows:
i. The source sends a cell with the EFCI bit as 0.
j. The congested ATM node re-sets the EFCI bit of the cell to 1 before forwarding the
cell.
k. After the destination receives a cell with the EFCI bit as 1, the destination sets the
EFCI bit of a cell to 1 before sending the cell to the source.
l. After the source receives a cell with the EFCI bit as 1 from the destination, the
source determines that congestion has occurred on the connection between itself
and the destination and lowers the traffic sending rate to relieve traffic congestion.
FCI applies to ABR services and is implemented using resource management (RM)
cells. The FCI process is as follows:
m. The source injects an RM cell into the cell flow sent to the destination. The header
of the RM cell carries the CLP bit (0) and PTI field (110) to detect available
bandwidth.
n. The destination returns the received RM cell to the source. The returned RM cell
contains the feedback information added by ATM nodes along the transmission
path. The feedback information reflects bandwidth availability.
o. The source takes responsive measures based on actual situations:
가 If the source does not receive the returned RM cell, the source continuously
reduces the traffic sending rate.
나 If the source receives the RM cell and the feedback information contained in
the RM cell indicates that the available bandwidth has increased, the source
can increase the traffic sending rate.
다 If the source receives the RM cell and the feedback information contained in
the RM cell indicates that the available bandwidth has decreased, the source
should rapidly reduce the traffic sending rate.
The amount of bandwidth allocated to CBR services is characterized by the PCR. CBR
services are tailored for any type of data for which the terminals require predictable
responsive time and a static amount of bandwidth continuously available for the lifetime
of the connection.
VBR
The source of a variable bit rate (VBR) service sends cells at a variable rate, and the
traffic can be regarded as burst traffic. VBR services include:
− Real-time variable bit rate (rt-VBR) services have strict delay and jitter
requirements and are suited for applications with high requirements for real-time
communication, such as IP-based voice and video services.
− non-real-time variable bit rate (nrt-VBR) services are suited for applications that
have low requirements for real-time communication and allow burst traffic, such as
ticket booking systems and bank transaction systems. nrt-VBR services can
guarantee low cell loss for traffic that conforms to the traffic contract but has no
restrictions on cell transfer delay.
ABR
Available Bit Rate (ABR) services do not have restrictions on delay or jitter. As a result,
ABR services cannot be used for applications that require real-time communication.
ABR services use some flow control measures to control network congestion and cell
loss, reducing the cell loss rate and guaranteeing bandwidth availability. Typical ABR
service applications include LAN emulation services and LAN interworking services.
UBR
Unspecified bit rate (UBR) services do not guarantee bandwidth availability. UBR
services are best-effort services generally used for applications that are tolerant of delay
and jitter, such as email and FTP services.
UBR services do not provide QoS guarantee. The cell loss rate and cell transmission
delay of connections cannot be guaranteed. The PCR is optional in CAC and UPC. If a
network does not have strict requirements for the PCR, you do not need to use the PCR.
The difference between ABR and UBR services lies in that when a VC is congested, the
ABR service reduces the traffic sending rate whereas the UBR service drops cells.
ATMoPSN
ATMoPSN uses the pseudo wire emulation edge-to-edge (PWE3) technology to transparently
transmit ATM services over a PSN.
One ATMoPSN packet contains only one ATM cell. To increase bandwidth usage, you can use
cell concatenation to put multiple cells into one PW packet for transmission.
PSNoATM
For the convenience of description, the IPoA, IPoEoA, PPPoA, and PPPoEoA technologies are all called
PSNoATM technologies.
IPoA and IPoEoA
With the IP-oriented development trend of core networks and the popularity of the
Ethernet technology among access layer devices, ATM networks are widely used to carry
IP and Ethernet services. As bearer networks for IP and Ethernet services, ATM networks
provide high-speed PPP connections, high network performance, and good QoS
guarantee.
When an IP packet is transmitted over an ATM network, the IP packet must be adapted to
the AAL so that the packet can be fragmented into cells at the source and be reassembled
at the destination. RFC 1483 provides adaption standards.
PPPoEoA encapsulates PPPoE packets into ATM cells before transmitting these packets
over an ATM network.
To enable an ATM network to transmit Ethernet packets (including IPoEoA and PPPoEoA packets),
Huawei routers provide a special type of interface: virtual Ethernet (VE) interface. A VE interface has
Ethernet features and can be dynamically created. A VE interface sends or receives packets over an ATM
PVC at the bottom protocol layer. At the link layer, a VE interface uses the Ethernet protocol. At the
network layer or upper layers, a VE interface uses the same protocols as a common Ethernet interface.
ATMoPSN QoS
Figure 1.1 shows a typical ATMoPSN networking model. Figure 1.2 shows the ATM PWE3
packet structure.
ATM cells are encapsulated with Multiprotocol Label Switching (MPLS) labels when being
transmitted over a PSN. MPLS QoS can ensure the end-to-end QoS of services transmitted
over a PW.
To retain ATM QoS during the transmission of ATM cells over a PSN, ATM QoS parameters
must be mapped to MPLS EXP values. Huawei routers implement this function using ATM
traffic classification:
When ATM cells enter a PSN, the ingress node maps CLP values carried in ATM cells to
routers' internal service classes and drop priorities (colors) based on the ATM service
type.
When ATM cells leave a PSN, the egress node maps the internal service classes and
colors of ATM cells to the original CLP values carried in ATM cells.
ATM traffic classification used in ATMoPSN QoS consists of behavior aggregation (BA)
classification and forced traffic classification.
ATM BA Classification
In ATMoPSN, ATM BA classification is used to map the CLP values carried in ATM
cells entering a PSN to the ingress router's internal service classes and drop priorities
(colors) based on the ATM service type. When ATM cells leave a PSN, the internal
service class and drop priority of ATM cells are mapped to the original CLP values
carried in ATM cells.
You can enable ATM BA classification on the ingress node, configure the ingress node to
map the ATM priorities to PSN priorities, and configure the egress node to map the PSN
priorities to ATM priorities. The following tables describe the default mapping
relationships between ATM priorities and PSN priorities.
CBR 0 EF Green
1 EF Green
ABR 0 AF1 Green
1 AF1 Yellow
NRT-VBR 0 AF2 Green
1 AF2 Yellow
RT-VBR 0 AF4 Green
1 AF4 Yellow
UBR 0 BE Green
1 BE Green
OAM-Cell - EF Green
BE Green 1
AF1 Green 1
AF1 Yellow 1
AF1 Red 1
AF2 Green 0
AF2 Yellow 1
AF2 Red 1
AF3 Green 1
AF3 Yellow 1
AF3 Red 1
AF4 Green 0
AF4 Yellow 1
AF4 Red 1
EF Green 0
CS6 Green 0
CS7 Green 0
PSNoATM QoS
For the convenience of description, the IPoA, IPoEoA, PPPoA, and PPPoEoA technologies are all called
PSNoATM technologies.
Besides the traffic control and congestion control mechanisms offered by ATM, Huawei
routers provide the following ATM QoS mechanisms:
ATM Traffic Classification
Before transmitting IP, Ethernet, or PPP services, an ATM network must use ATM traffic
classification to map the IP priorities to ATM priorities.
PSNoATM supports the following types of ATM traffic classification:
− ATM BA Classification
If PSNoATM uses ATM BA classification, the ingress node of the ATM network
trusts the priorities (such as DSCP values, IP precedence, 802.1p values, or MPLS
EXP values) carried in upstream packets and maps these priorities to the router's
internal service classes and colors on upstream board, and maps back to ATM CLP
values on downstream board. The egress node of the ATM network maps the ATM
CLP values to the internal service classes and colors on upstream board, and maps
back to the priorities of packets on downstream board.
You can enable ATM simple traffic classification on the ingress node, configure the
ingress node to map the ATM priorities to PSN priorities, and configure the egress
node to map the PSN priorities to ATM priorities.
The following lists priority mapping references:
가 For more information about the mapping from PSN priorities to internal
service classes and colors, see 3.3.2QoS Priority Mapping.
나 For more information about the mapping from ATM CLP values to internal
service classes and colors, see Step 1Table 3.1.
다 For more information about the mapping from internal service classes and
colors to ATM CLP values, see Step 1Table 3.2.
라 For more information about the mapping from internal service classes and
colors to PSN priorities, see 3.3.2QoS Priority Mapping.
− ATM Forced Traffic Classification
ATM forced traffic classification in PSNoATM is similar to that in ATMoPSN.
− ATM MF Classification
ATM Multiple Field (MF) classification in PSNoATM is similar to complex traffic
classification in IP QoS. The only difference is that the traffic policies used in ATM
complex traffic classification must be configured on ATM interfaces (including
ATM sub-interfaces) or VE interfaces.
For more information about complex traffic classification in IP QoS, see the section
3.4MF Classification.
ATM Traffic Shaping
ATM traffic shaping enables cells to be sent at a relatively even rate by adjusting the
traffic characteristics of cells transmitted over a VCC or VPC.
ATM traffic shaping uses the following methods:
− Reducing the peak cell rate
− Limiting the burst traffic size
− Adjusting the cell transmission interval
− Queuing cells
ATM traffic shaping is similar to IP QoS traffic shaping. The differences are:
− IP QoS traffic shaping applies to IP packets, whereas ATM traffic shaping apply to
ATM cells.
− IP QoS traffic shaping uses token bucket algorithms, whereas ATM traffic shaping
uses leaky bucket algorithms.
Leaky bucket algorithms forcibly limit traffic rates, whereas token bucket
algorithms allow burst traffic transmission while enabling existing traffic to be
evenly transmitted.
Although ATM traffic shaping can be implemented on any parts of an ATM network, it is
usually used on the egress of an ATM network.
ATM PVC Congestion Management
In ATM PVC congestion management, packets exceeding the PVC bandwidth are not
dropped. Instead, these packets are cached, and transmitted when the PVC is idle, using
queuing mechanisms.
A PVC supports eight queues. The first queue uses the strict priority (SP) scheduling
algorithm and is called the priority queuing (PQ) queue. The other queues use the
weighted fair queuing (WFQ) algorithm and are called WFQ queues. Currently, an ATM
PVC supports only one-level queue scheduling. The queue scheduling mechanism used
by a PQ queue on an ATM PVC is similar to the queue scheduling mechanism used by a
PQ queue in IP QoS. For more information, see 5.2Queues and Congestion Management.
By default, an ATM PVC is not configured with queue scheduling. If PQ or WFQ
scheduling is configured for a queue on an ATM PVC, the other queues on the ATM
PVC use WFQ scheduling by default, with the weight 20. It is recommended that the
weight be greater than 10.
Huawei routers allow you to adjust the internal service classes of UBR services
transmitted over a PVC or PVP to guarantee the quality of high-priority services.
The number of the passing packets in the display port-queue statistics command output may
be greater than the number of packets that are actually sent from the interface because certain
packets are dropped during CAR, filter, and multicast prune on the downstream packet
forwarding engine (PFE).
On Huawei routers, some Physical Interface Cards (PICs) are equipped with a Traffic
Manager (TM) chip, which is called an egress Traffic Manager (eTM) subcard.
To check a PIC is an eTM sub-card or not, run the display device pic-status command in any
view. If the PIC is an eTM card, the Type field in the output information includes
"_T_CARD".
<HUAWEI> display device pic-status
Pic-status information in Chassis 1:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SLOT PIC Status Type Port_count Init_result Logic_down
If the downstream PIC is not equipped with an eTM subcard, downstream packet-based queue
management is implemented on the downstream TM. If the downstream PIC is equipped with
an eTM subcard, downstream packet-based queue management is implemented on the eTM
subcard.
Figure 1.1 Packet forwarding process when the PIC is not equipped with an eTM subcard
q. The inbound interface processing module on the upstream PFE parses the link layer
protocol and identifies the packet type.
r. The traffic classification module on the upstream PFE implements BA and MF
traffic classification in sequence based on the configuration on the inbound
interface.
s. The upstream PFE searches the forwarding table for an outbound interface and next
hop based on packet information (such as MAC address, destination IP address, and
MPLS label). The upstream PFE drops the packets with the forwarding behavior
drop, and CAR is not implemented for these packets.
t. The upstream PFE implements rate limit for upstream traffic based on the CAR
configuration on the inbound interface or in the MF traffic classification profile.
CAR does not apply to CPU packets to prevent packet loss in the case of traffic congestion.
u. The upstream PFE sends packets to the upstream TM.
v. The upstream TM processes flow queues (optional) based on the user-queue
configuration on the inbound interface or in the MF classification profile, and then
implements VOQ processing. After that, the upstream TM sends packets to the
upstream Flexible Interface Card (FIC).
w. The upstream FIC fragments packets and encapsulates them into micro cells before
sending them to the switch fabric unit (SFU).
Similar to an ATM module, the SFU forwards packets based on a fixed cell length. Therefore, packets
are fragmented before being sent to the SFU.
Packet forwarding process for downstream traffic
Micro cells are sent from the SFU to the downstream TM.
x. The downstream FIC encapsulates the micro cells into packets again.
y. The downstream TM duplicates multicast packets.
z. The downstream TM processes flow queues based on the user-queue configuration
on the outbound interface (including the VLANIF interface) if needed, and
processes class queues (CQs) before sending them to the downstream PFE.
aa. The downstream PFE searches the forwarding table for packet encapsulation
information. For example, for an IPv4, the PFE searches the forwarding table based
on the next hop. For an MPLS packet, the PFE searches the MPLS forwarding
table.
bb. The downstream PFE implements MF classification based on the outbound
interface configuration and then BA traffic classification (only mapping from the
service class and drop precedence to the external priority).
cc. The downstream PFE implements rate limit for downstream traffic based on the
CAR configuration on the outbound interface or in the MF traffic classification
profile.
dd. For packets to be sent to the CPU, the downstream PFE implements CP-CAR
before sending them to the CPU. For packets not to be sent to the CPU, the
downstream PFE sends them to the outbound interface processing module for an
additional Layer 2 header (Layer 2 header and MPLS header are added for an
MPLS packet). After that, these packets are sent to the PIC.
ee. The PIC converts packets to optical/electrical signals and sends them to the physical
link.
Figure 1.2 shows how a packet is forwarded when the PIC is equipped with an eTM subcard.
The operation for the upstream traffic is the same as that when the PIC is not equipped with
an eTM subcard. The difference in operations for downstream traffic lies in that the
downstream flow queues are processed in the eTM subcard when the PIC is equipped with an
eTM subcard and the downstream flow queues are processed on the downstream TM when
the PIC is not equipped with an eTM subcard. In addition, five-level scheduling (FQ -> SQ ->
GQ -> VI -> port) is implemented for downstream flow queues when the PIC is equipped
with an eTM subcard, whereas three-level scheduling + two-level scheduling are implemented
for downstream flow queues when the PIC is not equipped with an eTM subcard.
Figure 1.2 Packet forwarding process when the PIC is equipped with an eTM subcard
The remark command, qos default-service-class command, service-class command, car command and
the qos car command with service-class parameter may reset the Service-class & Color. If these
commands are configured together in upstream board, then their executed order are: remark -> qos
default-service-class (interface view) -> service-class (traffic behavior view) -> qos car (interface
view)-> car (traffic behavior view), no matter what the configuration order is.
ii. The upstream PFE searches the routing table for an outbound interface of a packet
based on its destination IP address.
jj. The upstream PFE implements CAR for packets based on the inbound interface
configuration or MF traffic classification profile. If both interface-based CAR and
MF traffic classification-based CAR are configured, MF traffic classification-based
CAR takes effect. In a CAR operation, a pass, drop, or pass+re-mark behavior can
be performed for incoming traffic. If the behavior is pass+re-mark, the upstream
PFE modifies the internal priority of packets (service class and color).
kk. Then, packets are sent to the upstream TM.
On the upstream TM:
ll. The upstream TM processes flow queues based on the inbound interface
configuration or MF traffic classification configuration. If both interface-based
user-queue and MF traffic classification-based user-queue are configured, MF
traffic classification-based user-queue takes effect. Packets are put into different
flow queues based on the service class, and WRED drop policy is implemented for
flow queues based on the color if needed.
mm. The upstream TM processes VOQs. VOQs are classified based on the destination
board. The information about the destination board is obtained based on the
outbound interface of packets. Then, packets are put into different VOQs based on
the service class.
nn. After being scheduled in VOQs, packets are sent to the SFU and then forwarded to
the destination board on which the outbound interface is located.
oo. Then, packets are sent to the downstream TM.
On the downstream TM
pp. (This step is skipped when the downstream PIC is equipped with an eTM subcard)
The downstream TM processes flow queues based on the user-queue configuration
on the outbound interface. Packets are put into different flow queues based on the
service class, and WRED drop policy is implemented for flow queues based on the
color if needed.
qq. (This step is skipped when the downstream PIC is equipped with an eTM subcard)
The downstream TM processes port queues (CQs). Packets are put into different
CQs based on the service class, and WRED drop policy is implemented for CQs
based on the color if WRED is configured.
rr. Then, packets are sent to the downstream PFE.
On the downstream PFE:
ss. The downstream PFE implements MF traffic classification based on the outbound
interface configuration. MF traffic classification requires the downstream PFE to
obtain multiple field information for traffic classification. Behaviors, such as filter
and re-mark, are performed based on traffic classification results. If the behavior is
re-mark, the downstream PFE modifies the internal priority of packets (service class
and color).
tt. The downstream PFE implements CAR for packets based on the outbound interface
configuration or MF traffic classification configuration. If both interface-based
CAR and MF traffic classification-based CAR are configured, MF traffic
classification-based CAR takes effect. In a CAR operation, a pass, drop, or pass+re-
mark behavior can be performed for incoming traffic. If the behavior is pass+re-
mark, the downstream PFE modifies the internal priority of packets (service class
and color).
uu. Executes the downstream PHB action: the priorities of outgoing packets are set for
newly added packet headers and are modified for existing packet headers, based on
the service class and color.
The remark command, service-class command and the qos car command with service-class parameter
may reset the Service-class & Color. If these commands are configured together in upstream board, then
their executed order are: service-class (traffic behavior view)->qos car (traffic behavior view)->car
(interface view)-> remark (traffic behavior view), no matter what the configuration order is.
vv. Then, packets are sent to the downstream PIC.
가 When the PIC is not equipped with an eTM subcard, the PIC adds the link-
layer CRC to the packets before sending them to the physical link.
나 When the PIC is equipped with an eTM subcard, the PIC adds the link-layer
CRC to the packets and performs a round of flow queue scheduling before
sending the packets to the physical link. Downstream flow queues are
processed based on the user-queue configuration on the outbound interface.
Packets are put into different FQs based on the service class, and WRED drop
policy is implemented for FQs based on the color if WRED is configured.
When the PIC is equipped with an eTM subcard, downstream packets are not
scheduled on the downstream TM.
CAR calculates the bandwidth of packets based on the entire packet. For example, CAR counts the
length of the frame header and CRC field but not the preamble, inter frame gap, or SFD of an
Ethernet frame in the bandwidth. The following figure illustrates a complete Ethernet frame (bytes).
The bandwidth covers the CRC field but not the IFG field.
The upstream PFE adds a Frame Header, which is removed by the downstream PFE. The Frame
header is used to transfer information between chips. NPtoTM and TMtoNP fields are used to
transfer information between the NP and TM.
When the PIC is not equipped with an eTM subcard, the length of a packet scheduled on the
downstream TM is different from that of the packet sent to the link. To ensure more accurate traffic
shaping, you are recommended to run the network-header-length command to compensate the
packet with a specific length.
On the downstream interface on the network side:
For a Type-A or Type-B board, the packet scheduled on the downstream TM does not contain the
IFG, L2 Header, two MPLS Labels, or CRC fields but contains an additional Frame Header,
compared with the packet sent to the link. The Frame Header length is equal to the L2 Header
length. Therefore, a +12-byte compensation (not including the IFG field) or a +32-byte
compensation (including the IFG field) can be performed for the packet.
For a Type-C board, the packet scheduled on the downstream TM does not contain a Frame Header.
Therefore, a +26-byte compensation (not including the IFG field) or a +46-byte compensation
(including the IFG field) can be performed for the packet.
When the PIC is equipped with an eTM subcard, no packet length compensation is required.
Figure 1.1 QoS Process for Network Control Packets To Local CPU
Therefore, the CP-CAR action, rather than the CAR action, is performed on the network
control packets on downstream board.
For more details about QoS Process, see Packet Forwarding Process.
Figure 1.1 QoS Process for Local Generated Network Control Packets
LPUF-101, LPUF-101-B
LPUI-101, LPUI-101-B
LPUS-101
LPUF-102, LPUF-102-E
LPUI-102, LPUI-102-E
LPUF-120, LPUF-120-B, LPUF-
120-E
LPUF-120 with P120-H
LPUI-120, LPUI-120-B, LPUI-
120-E, LPUI-120-L
LPUS-120
LPUF-200
LPUI-200, LPUI-200-L
LPUF-400
LPUF-240, LPUF-240-B, LPUF-
240-E
LPUF-240 with P240-H
LPUI-240, LPUI-240-B, LPUI-
240-L
LPUF-480, LPUI-480
LPUI-1T, LPUI-1T-B
NPU-50, NPU-50-E
NPU-120, NPU-120-E
Integrated NPU (80G) in NE40E-
M2E/CX600-M2E
Integrated NPU (160G) in NE40E-
M2F/CX600-M2F
11 References
Notification (ECN) to IP
RFC 3209 RSVP-TE: Extensions to RSVP for LSP http://www.ietf.org/rfc/rfc3209
Tunnels
RFC 3246 An Expedited Forwarding PHB (Per- http://www.ietf.org/rfc/rfc3246
Hop Behavior)
RFC 3260 New Terminology and Clarifications for http://www.ietf.org/rfc/rfc3260
Diffserv
RFC 3270 Multi-Protocol Label Switching http://www.ietf.org/rfc/rfc3270
(MPLS) Support of Differentiated
Services
RFC 3545 Enhanced Compressed RTP (CRTP) for http://www.ietf.org/rfc/rfc3545
Links with High Delay, Packet Loss
and Reordering
RFC 3564 Requirements for Support of http://www.ietf.org/rfc/rfc3564
Differentiated Services-aware MPLS
Traffic Engineering
RFC 4124 Protocol Extensions for Support of http://www.ietf.org/rfc/rfc4124
Diffserv-aware MPLS Traffic
Engineering
RFC 4125 Maximum Allocation Bandwidth http://www.ietf.org/rfc/rfc4125
Constraints Model for Diffserv-aware
MPLS Traffic Engineering
RFC 4127 Russian Dolls Bandwidth Constraints http://www.ietf.org/rfc/rfc4127
Model for Diffserv-aware MPLS
Traffic Engineering
RFC 4717 Encapsulation Methods for Transport of http://www.ietf.org/rfc/rfc4717
Asynchronous Transfer Mode (ATM)
over MPLS Networks
RFC 4816 Pseudowire Emulation Edge-to-Edge http://www.ietf.org/rfc/rfc4816
(PWE3) Asynchronous Transfer Mode
(ATM) Transparent Cell Transport
Service
12 Abbreviations
3
3G 3rd Generation
A
AAL ATM Adaptation Layer
ABR Available Bit Rate
ACL Access Control List
AF Assured Forwarding
ATM Asynchronous Transfer Mode
B
BA Behavior Aggregation
BC Bandwidth Control
BE Best-Effort
BGP Border Gateway Protocol
BRAS Broadband Remote Access Server
C
CAC Call Admission Control
CAR Committed Access Rate
CBR Constant Bit Rate
CBS Committed Burst Size
CDVT Cell Delay Variation Tolerance
CE Customer Edge
V
VBR Variable Bit Rate
VC Virtual Circuit
VCC Virtual Circuit Connection
VCI Virtual Channel Identifier
VE Virtual Ethernet
VI Virtual Interface
VLAN Virtual Local Area Network
VLL Virtual Leased Line
VoD Video on Demand
VoIP Voice over IP
VOQ Virtual Output Queue
VP Virtual Path
VPI Virtual Path Identifier
VPN Virtual Private Network
W
WFQ Weighted Fair Queuing
WRED Weighted Random Early Detection
WRR Weighted Round Robin
WWW World Wide Web