freescale powerpoint template - nxp semiconductors class scheduler ufq sp wq wq dual-rate shaper sp

33
TM November 2013

Upload: vutruc

Post on 10-May-2018

216 views

Category:

Documents


1 download

TRANSCRIPT

TM

November 2013

TM 2

• Intro: DPAA and TM principles & terminology

• QorIQ Ingress/Egress TM features overall description &

interaction

• Policing

• Queue Management (FQ and CG tail drop, RED/WRED,

CSCN)

• Flow Control

• T-serie Scheduling and Shaping (CEETM)

Note: features highlighted for T-series also apply to DPAA-based QorIQ Qonverge B4

3 TM

Eth

FMan classifies and distributes flows

BMan provides Buffer Pools services

QMan provides multi-producer/consumer queues services

1G/10G

Network Interfaces

Qman

PCD (Parse/Classif/Distrib)

BMan

FMan

DMA

1

4

5

2 3

Ingress

(Frame Queues) FQs

System

Memory

(Virtual Storage Profiles

= set of pools)) 4

Core Core Core

Portal Portal Portal Portal Portal Portal

4 TM

Core Core Core

Eth

1G/10G

Network Interfaces

QMan

PCD

BMan

FMan

5

1

4

3 (Frame Queues) FQs

(Storage Profiles

= set of pools))

System

Memory

2

Portal Portal Portal

Internal RAM

DMA

Load from Buffer

Enqueue Descriptor

Dequeue Descriptor

Transmit packet

Release

Buffer

Egress

5 TM

Control traffic against network usage policies/rules

Manage congestion situations

Provide QoS

Parse/classify Buffering Policing Queue Mgmt Rx

Input queues

Flow control

(Back-pressure)

Ingress

Dequeue Scheduling

&

Shaping

Tx

Output queues

Egress

TM purposes

Flow control

(Back-pressure)

Tx

Rx

Input Port

Output Port

Controlled by

6 TM

AF: Assured Forwarding

BE: Best Effort

CBS: Committed Burst Size

CEETM: Customer Edge Egress Traffic Management

CG: Congestion Group

CIR: Committed Information Rate

CQ: Class Queue

CQCG: CQ Congestion Group

CR: Committed Rate

CS : Congestion State

CSCN: Congestion State Change Notification

ER: Excess Rate

ERN: Enqueue Rejection Notification

FQ: Frame Queue

LFQID: Logical Frame Queue ID

PBS: Peak Burst Size

PIR: Peak Information Rate

PFC: Priority-based Flow Control

QoS: Quality of Service

RED: Random Early Discard

WRED: Weighted RED

SLA: Service Level Agreement

SP: Strict Priority

TD: Tail Drop

TM: Traffic Management

WQ/WFQ: Weighted Queueing/Weighted Fair Queueing

TM 7

• Intro: DPAA and TM principles & terminology

• QorIQ Ingress/Egress TM features overall description &

interaction

• Policing

• Queue Management (FQ and CG tail drop, RED/WRED,

CSCN)

• Flow Control

• T-serie Scheduling and Shaping (CEETM)

Note: features highlighted for T-series also apply to DPAA-based QorIQ Qonverge B4

8 TM

Core/SW

QMan

SW Portal

Queue Congestion

1) management

2) avoidance

3) notification

(based on FQs & Congestion groups)

DC Portal

Policer

PCD

Internal FIFO

BMI

Tx Pause

Control frames

MAC

BMan

Pool depleted

FIFO threshold

Core/SW

SW Portal

FQ ID + R/G/Y

Congestion state change

notification - CSCN

Error Notify

If core is the producer

If FMan is the producer (option 2)

FMan Discard & dealloc.

Discard & dealloc.

Discard &

dealloc.

Discard

(no ext. Buffer)

Discard

(no int.. Buffer)

QMan status/Interrupts

(to Core/SW)

BMan status/Interrupts

(to Core/SW)

Tail Drop/

WRED Reject

ERN Queue

Flow Control

1

2

3

FQs

Enqueue Reject Notification

4

10 TM

Core/SW

QMan

SW Portal

Rx Pause frames

MAC

Core/SW

SW Portal

Egress Scheduling/Shaping optionnaly

Implemented at Core/SW

FMan

Tx Rate Limiter

Flow Control

Dedic-Ch

DC-Portal

T-series only CEETM Egress Enhanced

hierarchical scheduling & shaping

DMA and Tx Frames

One Sub-portal per port

MAC Tx Rate Limiter

Flow Control

QMan regular channel

basic scheduling

(4x SP levels, RR, no

shaping)

T-series only Support Priority Flow Control

(PFC, IEEE 802.1Qbb)

TM 12

• Intro: DPAA and TM principles & terminology

• QorIQ Ingress/Egress TM features overall description &

interaction

• Policing

• Queue Management (FQ and CG tail drop, RED/WRED,

CSCN)

• Flow Control

• T-serie Scheduling and Shaping (CEETM)

Note: features highlighted for T-series also apply to DPAA-based QorIQ Qonverge B4

13 TM

Burst

Size

Reference Rate increment (Bytes/sec) (up to BS)

?

Packets in

Tokens

Case of Policing Check ingress traffic w.r.t traffic profile

Case of Shaping Transmit egress traffic w.r.t traffic profile

Packets out

Traffic profile

14 TM

Burst

Size

Reference Rate increment (Bytes/sec) (up to BS)

?

Packets in

Tokens

Packets out

Input queues

Ingress

Input Port Discard / Drop

Traffic profile

Eligeability to enqueue

& coloring controlled by

profile

15 TM

Implements RFC2698, RFC4115

Three Color output "GREEN", "YELLOW", & "RED"

Four parameter policing

− CIR - Committed Information Rate

− PIR - Peak Information Rate

− CBS - Committed Burst Size

− PBS - Peak Burst Size

Color aware or color blind policing

Color passed to QMan on enqueue for further WRED congestion mgmt, passed to Core/SW through Frame Descriptor

Policing can be based on packet count or byte count

Quick drop mode on “RED” colored packets

Memory internal to policer holds 256 profiles

Statistics per profile

Packet colouring can be a combination of FMan classification and/or traffic characteristics

Po

lice

r #n

(0-2

55)

Packet pass thru

Policer ID#

resulting from

FMan classification

To Qman

Traffic profile = CIR, PIR, CBS, PBS

Principle:

- Dual token bucket meters a packet

stream according to two rates, a Peak

Rate and a Committed Rate and their

associated Burst size.

- mark as Red if exceeds PIR, otherwise

mark as Yellow or Green depending on

whether it exceeds or not CIR.

16 TM

P_Bucket

PBS

Tp

Incremented by

PIR bytes/sec

(up to PBS)

? Green

C_Bucket

CBS Tc

Incremented by

CIR bytes/sec

(up to CBS)

?

Yellow

Red

For each packet coming in (B bytes is size of packet) :

if B – Tp(t) > 0 then excess PIR, Packet marked as Red (then normally dropped)

Tp & Tc unchanged

else if B - Tc(t) > 0 then excess CIR, Packet marked as Yellow (and enqueued)

Tp Tp - B

else then Conformed traffic, Packet is marked as Green (and enqueued)

Tp Tp – B

Tc Tc - B

Packets in

PIR: Peak Information Rate

CIR; Committed Information Rate

PBS: Peak Burst Size

CBS: Committed Burst Size

To next

step

queueing

TM 17

• Intro: DPAA and TM principles & terminology

• QorIQ Ingress/Egress TM features overall description &

interaction

• Policing

• Queue Management (FQ and CG tail drop, RED/WRED,

CSCN)

• Flow Control

• T-serie Scheduling and Shaping (CEETM)

Note: features highlighted for T-series also apply to DPAA-based QorIQ Qonverge B4

19 TM

• On FQ Tail Drop:

− The threshold in bytes at which tail drop from this FQ occurs is TD_MANT * 2TD_EXP

configured in FQD[TD_MANT, TD_EXP]

− Tail drop enabled if FQD.FQ_CTRL[Tail_Drop_enable] bit set

− There is no hysteresis on tail drop congestion management,

− if the byte count of the FQ has exceeded the tail drop threshold and Tail Drop is enabled

then all subsequent enqueues are rejected

• On Congestion Group Tail Drop (or CS TD):

− Same principle as FQ TD but applies to CG aggregated queues content

− Supports both drop and/or notification

− CS tail drop enabled if CG[CSTD_EN] bit set, notification enabled if CG[CSCN_EN] bit set

− CS can be based on Byte or Frame count

− While it is possible to have both WRED and CSTD_EN enabled at the same time, it is

unlikely that this would be useful since the WRED algorithm effectively implements a tail

drop above MaxTH. CSTD_EN is more likely to be used in situations where WRED would

be considered as overkill, for management flows or non-traffic flows for example.

20 TM

RED (Random Early Discard) primarily for managing congestion in a way

appropriate to TCP end-to-end flow control

Current

average

length Trash

minTH maxTH

100% (minTH) 0% Dis

ca

rd p

rob

ab

ilit

y

0

100%

maxTH

slope maxP

100% 0% Dis

card

pro

bab

ilit

y

0

100%

(simple) RED W(eighted)RED

Apply different threshold+slope, depending on

how each packet is pre-marked /coloured thru

classification or policing

21 TM

RED (Random Early Discard) primarily for managing congestion in a way

appropriate to TCP end-to-end flow control

TCP Global Synchronization ‘’Issue’’

t

TC

P tra

ffic

Without Congestion Avoidance

t

TC

P tra

ffic

With Congestion Avoidance (RED)

multiple flows are throttling back followed by a

sustained period of lowered link utilization, thus

causing queue oscillation

packets are partially dropped before the queues

fill up, this gives flows such as TCP connections

the opportunity to slow down the sending rate

before the queues get full.

TM 22

• Intro: DPAA and TM principles & terminology

• QorIQ Ingress/Egress TM features overall description &

interaction

• Policing

• Queue Management (FQ and CG tail drop, RED/WRED,

CSCN)

• Flow Control

• T-serie Scheduling and Shaping (CEETM)

Note: features highlighted for T-series also apply to DPAA-based QorIQ Qonverge B4

23 TM

Flow control

Core/SW

QMan

SW Portal

Queue Congestion Mgmt

(based on FQ & Congestion group)

DC Portal

Policer

PCD

Internal FIFO

BMI

Tx Pause

Control frames

MAC

BMan

Pool depleted

FIFO threshold

Core/SW

SW Portal

FQ ID + R/G/Y

Congestion

notification

Error Notify

FMan Discard & dealloc.

Discard & dealloc.

Discard &

dealloc.

Discard

(no ext. Buffer)

Discard

(no int.. Buffer)

QMan status/Interrupts

(to Core/SW)

BMan status/Interrupts

(to Core/SW)

Tail Drop/

WRED Reject

ERN Queue

Flow Control

1

2

3

FQs

Enqueue Reject Notification

4

25 TM

802.1Qbb – Priority based Flow Control (PFC)

Ingress

• In T-series FMan & QMan implementation, the pause frame complies with ‘priority based flow

control’ 802.1Qbb, and contains an 8 bit ‘class enable vector’. Each congestion group has a class

enable vector associated with it. This vector is programmed in the congestion groups priority

mapping table

Egress

• In T-series FMan & QMan-CEETM implementation, each of the 16 class queues within a class

queue channel can be mapped to one of the 8 traffic classes

• An incoming PFC frame can specify which traffic class to pause for each priority signaled in. The

QMan traffic class corresponding to the bit in the ‘class enable vector’ of the pause frame is not

scheduled to transmit packets as long as the flow control condition is valid. One or more priorities

can be assigned to a Traffic Class (TC).

802.1Qaz – Enhanced Transmission Selection (ETS)

• Weighted bandwidth fairness is supported

• Meets standard performance requirement for ETS: bandwidth granularity of 1% and +/-10%

accuracy

TM 26

• Intro: DPAA and TM principles & terminology

• QorIQ Ingress/Egress TM features overall description &

interaction

• Policing

• Queue Management (FQ and CG tail drop, RED/WRED,

CSCN)

• Flow Control

• T-serie Scheduling and Shaping (CEETM)

27 TM

Core/SW

QMan

SW Portal

Rx Pause frames

MAC

Core/SW

SW Portal

Egress Scheduling/Shaping optionnaly

Implemented at Core/SW

FMan

Tx Rate Limiter

Flow Control

Dedic-Ch

DC-Portal

T-series only CEETM Egress Enhanced

hierarchical scheduling & shaping

BMI – DMA and Tx Frames

One Sub-portal per port

MAC Tx Rate Limiter

Flow Control

QMan regular

channel

basic

scheduling

(4x SP levels,

RR, no shaping)

28 TM

Class scheduler

SP

WQ

Dual-rate

Shaping

Class scheduler

SP

WQ

W

Q

Dual-rate

Shaping

SP

SP

WQ

Dual-rate

Shaping

Channel scheduler

WQ

Class scheduler

Egress Interface

Single-rate

Shaping

Channel 0

Channel 1

Channel n

SP: Strict Priority

WQ: Weighted Queuing

QMan egress queuing Hierarchical (2-level)

scheduling and dual rate shaping for Ethernet

interfaces

29 TM

Egress

Port 1

Dual-rate

Shaping

Ethernet

Interface

Dual-rate

Shaping

Ethernet

Interface

Egress

Port M

Scheduling/

shaping

Scheduling/

shaping FMan

FMan

VoIP

RT

AF

+

BE

30 TM

31 TM

• Same queue interface and semantics as the standard QMan scheme. Producer enqueues to a Logical FQ ID (LFQID) mapped to a CEETM CQ

• 32 Channels available for allocation across the 8 Ethernet interfaces within a Frame Manager (10G and 1G)

• Configurable combinations of strict priority and fair scheduling (weighted queuing) between the queues

• Dual-rate shaping (paired CR and ER shapers) at all shaping points to meet service-level agreements (SLAs) parameters (1 Kbps...10 Gbps range, 1 Kbps granularity across the entire range) .

• Algorithms for shaping and fair scheduling are based on bytes.

• No intermediate buffering between Class Queues and the FMan Tx hardware

• Performed in an atomic manner; all context at all levels is examined and updated synchronously.

• Dynamic re-configuration for lossless interface failover

• service-level agreements (SLAs) parameters (1 Kbps...10 Gbps range, 1 Kbps granularity across the entire range)

32 TM

Class scheduler

SP

WQ

Dual-rate

Shaper

Class scheduler

SP

WQ

W

Q

Dual-rate

Shaper

SP

SP

ShF

Q

Dual-rate

Shaper

Channel scheduler

for LNI #n

uF

Q

Class scheduler

Egress Interface

Single-rate

Shaping

Channel 0

Channel 1

Channel #n

• 32 channels (Class-Queue

Scheduler) per CEETM available for

allocation across the 8x Ethernet

interfaces within a Frame Manager

• One CEETM per FMan

16 class queues (CQs) per channel

• 8 Strict priority

• 8 (4+4) fair weighted

4K LFQID mapped to 512 CQs ( T4/T2)

Note: T104x has 8 channels,

128 CQs and 1K LFQIDs

x32

• 8 Channel Scheduler/Shapers per

CEETM available for allocation

across the 8x Ethernet interfaces

within a Frame Manager

• One CEETM per FMan

Eth Port

x8

( T4/T2)

33 TM

Class scheduler

SP

WQ

Dual-rate

Shaper

Class scheduler

SP

WQ

W

Q

Dual-rate

Shaper

SP

SP

ShF

Q

Dual-rate

Shaper

Channel scheduler

for LNI #n

uF

Q

Class scheduler

Egress Interface

Single-rate

Shaping

Channel 0

Channel 1

Channel #n

10-level Strict Priority among single Class Queues and Groups

WBFS (Weighted Bandwidth Fair

Scheduling) at lower sub-level among

group of 4 or 8 Class Queues

x32 Eth Port

Scheduling decisions triggered by transmit opportunities

Unshaped Aware Fair

Scheduling for equalized

traffic among unshaped

channels

Shaped Aware Fair

Scheduling propr. Algorithm to

for ensuring channels achieve

their shape to the highest

degree possible.

34 TM

Byte aware dual rate shaping

• Shapers are token bucket based with configurable rate and

burst limit

• Priority schedules CR packets over ER packets

• Paired CR/ER shapers may be configured as independent

or coupled on a per pair basis; coupled means that credits to

the CR shaper in excess of its token bucket limit is credited

to the ER bucket

Class scheduler

SP

WQ

Class scheduler

SP

WQ

W

Q

SP

SP

SF

Q

ER

Channel scheduler

uF

Q

Class scheduler

Egress Interface

Single-rate

Shaping

Dual-rate

Shaping

CR

ER

CR

ER

CR

Dual-rate

Shaping

Dual-rate

Shaping

The color green denotes logic units and

signal paths that relate to the request and

fulfillment of committed rate (CR) packet Tx

opportunities.

The color yellow denotes the same for

excess rate (ER).

Channel 0

Channel 1

Channel n

Per Eth port global shaper / Rate-limiter

37 TM

• 16 class queues per channel

− 8 Strict priority

− 8 (4+4) fair weighted

• T4240

− Number of channels per Frame Manager instance (e.g. total of 2 instances in T4240)

32 channels available for allocation across 8 Ethernet interfaces within a Frame Manager (10G and 1G)

• T1040

− Number of channels per Frame Manager instance (e.g. total of 1 instances in T1040)

8 channels available for allocation across 5 Ethernet interfaces within a Frame Manager

TM 38

… Questions ?

TM