Tuesday, April 22, 2008

Implementing Weighted Fair Queuing WFQ/ ...

Implementing Weighted Fair Queuing
Implementing Weighted Fair Queing (2) (ardenpackeer.com)

Weighted Fair Queue (WFQ) is an congestion management strategy, in that it does not need classification options configured. Traffic is automatically sorted and put into different queues without any kind of access-list or protocol matching configured by the user. It all happens automagically.
...

fair-queue [congestive-discard-threshold [dynamic-queues  [reservable-queues]]]

int serial0/0
fair-queue

int s0/0
fair-queue 2048 1024 0

int s0/0
fair-queue 2048 1024 0
hold-queue 4096 out


With the fair-queue qos-group command we can use a qos-group, which is an internal classification used by QoS features like Committed Access Rate (CAR).

Example 1:
interface serial0/0
ip address 150.1.13.1 255.255.255.0
rate-limit output 80000 10000 20000 conform-action set-qos-transmit 6 exceed-action drop
fair-queue qos-group
fair-queue qos-group 6 weight 40
fair-queue qos-group 6 limit 37





Example 2:

interface serial0/0
ip address 150.1.13.1 255.255.255.0
rate-limit output access-group rate-limit 1 80000 10000 20000 conform-action set-qos-transmit 1 exceed-action drop
rate-limit output access-group rate-limit 2 80000 10000 20000 conform-action set-qos-transmit 2 exceed-action drop
rate-limit output access-group rate-limit 3 80000 10000 20000 conform-action set-qos-transmit 2 exceed-action drop
fair-queue qos-group
fair-queue qos-group 1 weight 5
fair-queue qos-group 1 limit 20
fair-queue qos-group 2 weight 10
fair-queue qos-group 2 limit 30
!
access-list rate-limit 1 1
access-list rate-limit 2 2
access-list rate-limit 3 3




Example 3: ToS Based Weighted Fair Queue)
! ToS Based Weighted Fair Queue
int serial 0/0
ip address 150.1.13.1 255.255.255.0
fair-queue tos
fair-queue tos 1 weight 10
fair-queue tos 1 limit 20
fair-queue tos 2 weight 20
fair-queue tos 2 limit 30





Weighted Fair Queuing is a congestion management strategy
Queues are dynamically assigned based on flows
A flow is a train of packets with the same properties (source and destination ip address, protocol, source and destination ports etc).
There can be a maximum of 4096 queues.
We use the fair-queue command to define WFQ on an interface
It takes three parameters, the first is CDT (length of each queue), Maximum number of dynamic queues and RSVP queues
We can define an overall queue size with the hold-queue command.

QoS-group based WFQ places packet flows into QoS-groups. Bandwidth and queue limits can then be placed on those queues.
QoS-group based WFQ uses the fair-queue qos-group command
ToS based WFQ packets takes into account the ToS field in the IP header and schedules packet flows accordingly (higher ToS, higher chance of serviced by the WFQ scheduler).
ToS based WFQ uses the fair-queue tos command

No comments: