beautypg.com

H3C Technologies H3C SecPath F1000-E User Manual

Page 310

background image

285

{

Short packets and long packets are fairly scheduled: if both long packets and short packets exist

in queues, statistically the short packets are scheduled preferentially to reduce the jitter between
packets on the whole.

Compared with FQ, WFQ takes weights into account when determining the queue scheduling
order. Statistically, WFQ gives high priority traffic more scheduling opportunities than low priority

traffic. WFQ can automatically classify traffic according to the "session" information of traffic

(protocol type, TCP or UDP source/destination port numbers, source/destination IP addresses, IP
precedence bits in the ToS field, and so on), and try to provide as many queues as possible so that

each traffic flow can be put into these queues to balance the delay of every traffic flow on a whole.

When dequeuing packets, WFQ assigns the outgoing interface bandwidth to each traffic flow by

precedence. The higher precedence value a traffic flow has, the more bandwidth it gets.
For example, assume that five flows exist in the current interface with precedence 0, 1, 2, 3, and
4 respectively. The total bandwidth quota is the sum of all the (precedence value + 1)s, 1 + 2 + 3
+ 4 + 5 = 15.
The bandwidth percentage assigned to each flow is (precedence value of the flow + 1)/total
bandwidth quota. The bandwidth percentages for flows are 1/15, 2/15, 3/15, 4/15, and 5/15

respectively.
Because WFQ can balance the delay and jitter of each flow when congestion occurs, it is suitable
for handling some special occasions. For example, WFQ is used in the assured forwarding (AF)

services of the Resource Reservation Protocol (RSVP). In Generic Traffic Shaping (GTS), WFQ
schedules buffered packets.

3.

CBQ
Class-based queuing (CBQ) extends WFQ by supporting user-defined classes. CBQ assigns an
independent reserved FIFO queue for each user-defined class to buffer data of the class. When

network congestion occurs, CBQ enqueues packets by user-defined traffic classification rules.

Before that, congestion avoidance actions such as tail drop or weighted random early detection

(WRED) and bandwidth restriction check are performed. When being dequeued, packets are
scheduled by WFQ.
CBQ provides an emergency queue to enqueue emergent packets. The emergency queue is a
FIFO queue without bandwidth restriction. However, real-time packets (such as voice and video

packets, which are delay-sensitive) may not be transmitted timely in CBQ since packets are fairly

treated. To solve this issue, Low Latency Queuing (LLQ) was introduced to transmit real-time

packets preferentially.
When defining traffic classes for LLQ, you can configure a class of packets to be transmitted
preferentially. Such a class is called a "priority class". The packets of all priority classes are

assigned to the same priority queue. Bandwidth restriction on each class of packets is checked

before the packets are enqueued. During the dequeuing operation, packets in the priority queue

are transmitted first. WFQ dequeues packets in the other queues.
In order to reduce the delay of the other queues except the priority queue, LLQ assigns the

maximum available bandwidth for each priority class. The bandwidth value polices traffic during
congestion. When no congestion is present, a priority class can use more than the bandwidth

assigned to it. During congestion, the packets of each priority class exceeding the assigned

bandwidth are discarded. LLQ can also specify burst-size.
The system matches packets with classification rules in the following order:

{

Match packets with priority classes and then the other classes.

{

Match packets with priority classes in the configuration order.

{

Match packets with other classes in the configuration order.