Transcript

Shunra\STX

StormQoS In a Nutshell

Background

StormQoS implementation is based on Cisco DiffServ and QoS models.

StormQoS is implemented in the emulation through a dedicated QoS Gateway shape

StormQoS policies are designed through an XML script that defines all aspects of the QoS implementation

Storm QoS Model

1st Step - Classifying

Identify incoming packets

Filter packets based on a set of rules

Rules are based on several fields from the IP and TCP headers: IP (source/destination), ToS (DSCP), Protocol, Port (source/destination)..

1st Step - Classifying

Samples:– Packets coming from IP X– ICMP Packets going to IP X– All TCP packets on port 21 – All packets where DSCP = 60

2nd Step - Marking

After filtering the packets we mark them, to reflect the different classes

DSCP – Differentiated Services Code Point

Modify 6 of the 8 ToS bits in the IP header

2nd Step - Marking

Samples:– Set DSCP = 10 to all packets coming from IP X– Set DSCP = 5 to all ICMP Packets going to IP X– Set DSCP = 60 to all TCP packets on port 21– Set DSCP = 62 to all packets with DSCP = 60

3rd Step - Queuing

After the packets are classified and marked they are sent to the queuesQueues define several traffic profilesPackets enter different queues based on the priority that was set by the user3 types of queues can be set globally:– Priority Queuing – Custom Queuing– Custom Based Weighted Fair Queuing (CBWFQ)

Priority Queuing

4 levels of priority• 1 = Highest Priority• 2 = Medium Priority• 3 = Normal Priority• 4 = Lowest Priority

All packets must be classified in one of the above 4 levelsIf a packet doesn’t have a default policy it is classified as ‘Normal’Exhaustive priority (‘starvation’ mode) from High to low, FIFO within priority

Priority Queuing - Example

Custom Queuing

Divide the available bandwidth between several queues

The user determines how many priorities/queues there are

The user determines what portion of the bandwidth is allocated for each queue

5% are kept for unmarked packets

Weighted Round Robin between priorities, FIFO within priority

Custom Queuing - Example

Custom Based Weighted Fair Queue (CBWFQ)

A managed set of queues Defines up to 64 queuesEach queue can be managed through a different policy (RED, Drop Tail etc..)Bandwidth is assigned per queueBandwidth of queue determines the relative weight of the class, as an input to WFQ schedulingPriority Queue gets guaranteed delivery delay of 50ms or less

CBWFQ - Example

StormQoS User Interface

StormQoS User Interface

top related