11
CprE 458/558: Real-Time Systems (G. Manimaran) 1 CprE 458/558: Real-Time Systems Real-Time Networks – WAN Packet scheduling (contd.)

CprE 458/558: Real-Time Systems

  • Upload
    tivona

  • View
    15

  • Download
    0

Embed Size (px)

DESCRIPTION

CprE 458/558: Real-Time Systems. Real-Time Networks – WAN Packet scheduling (contd.). Work-conserving vs. Non work-conserving. Work conserving scheduler Never leaves the link idle if there is a packet to be transmitted Offers better link utilization E.g., RR, WRR, WFQ - PowerPoint PPT Presentation

Citation preview

Page 1: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 1

CprE 458/558: Real-Time Systems

Real-Time Networks – WAN

Packet scheduling (contd.)

Page 2: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 2

Work-conserving vs. Non work-conserving

• Work conserving scheduler– Never leaves the link idle if there is a packet to be

transmitted– Offers better link utilization– E.g., RR, WRR, WFQ

• Non work-conserving scheduler– Associate eligibility time with each packet and

transmits packets only when they are eligible– Can provide delay-jitter control, easier

implementation– E.g., HRR

Page 3: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 3

Fair Queuing (FQ) : Byte-by-Byte RR emulation

1 6 11 15 19 20

2 7 12 16

3 8

4 9 13 17

5 10 14 18

A

B

C

D

E

Packet Finish

Time

C 8

B 16

D 17

E 18

A 20

Earliest Finish Time FQ Schedule

Problem: Gives all the flows the

same priority

Page 4: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 4

Weighted Fair Queuing (WFQ)

1 2 3 12 13 14

4 5 15 16

6 17

7 8 18 19

9 10 11 20

A (3)

B (2)

C (1)

D (2)

E (3)

Packet Finish

Time

A 14

B 16

C 17

D 19

E 20

Earliest Finish Time WFQ Schedule

Page 5: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 5

Finish time/number expressions (1)

• Round Number [ R(t) ]: number of rounds of service a bit-by-bit round-robin scheduler has completed at a given time.– Eg: round number 3.5 means, three full rounds and

fourth round is half-way through

• A connection is said to be active if the largest finish number of a packet either in its queue or last served from its queue is larger than the current round number

• Thus, the length of a round, that is, the time taken to serve one bit from each active connection, is proportional to the number of active connections

Page 6: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 6

Finish time/number expressions (2)

• Finish time for an inactive connection is:– F(i, k, t) = R(t) + P(i,k,t) * øi

– Where F(i, k, t) is the finish number for the kth packet on connection “i’

– Where, R(t) is the round number– P(i,k,t) is the size of the kth packet that arrives on

connection “i” at time “t”– Where øi is the normalized weight ratio of the connection

“i”.

• Finish time for an active connection is:– F(i, k, t) = F(i, k-1,t) + P(i,k,t) * øi

• The general expression for finish time is:– F(i, k, t) = Max ( F(i, k-1,t) , R(t) ) + P(i,k,t) * øi

Page 7: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 7

Hierarchical Round Robin (HRR)

• In HRR, there are number of levels, each with a fixed number of slots serviced in a round-robin fashion

• A channel is allocated a given number of service slots at a selected level

• The scheduler cycles through the slots at each level

• The time taken to service all the slots at a given level is called the “frame time” at that level

• The total link bandwidth is partitioned in among these levels

• The key to HRR lies in its ability to give each level a constant share of the link’s bandwidth

Page 8: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 8

Hierarchical Round Robin – contd.

• The frame time for level 1, which is the smallest of all the levels, is the basic cycle time.

• If there are n1 slots in a level 1 frame, then b1 slots are allocated to higher levels, and the remaining (n1 – b1) slots are used for the level 1 connections

• The frame time for level-1 = FT1 = n1

• The frame time for level-2 = FT2 = (n1 / b1) * n2

• The frame time for level-I = FTi =

(n1 / b1) * (n2 / b2) * … (ni-1 / bi-1) * ni

• Bandwidth allocated to each slot in level i = Link_BW / FTi

where Link_BW is the total link bandwidth

Page 9: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 9

HRR design for a 4Mbps link

Level i ni bi FTi Slot b/w

1 4 1 4 1 Mbps

2 4 1 16 250 Kbps

3 2 0 32 125 Kbps

L2 slot

L3 slot

b1

n1

Level 1

Level 2

Level 3

b2

Page 10: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 10

HRR – connection allocation example

Channel Bandwidth

need

Level Assigned

# of slots

C1 2 Mbps 1 2

C2 1 Mbps 1 1

C3 250 Kbps 2 1

C4 500 Kbps 2 2

C5 125 Kbps 3 1

C6 100 Kbps 3 1Level 3

c1 c1 c2 L2

c3 c4 c4 L3

c5 c6

b1

n1

Level 1

Level 2 b2

c1 c1 c2 c3 c1 c1 c2 c4 c1 c1 c2 c4 c1 c1 c2 c5

HRR Schedule up to 16 slots

Page 11: CprE 458/558: Real-Time Systems

CprE 458/558: Real-Time Systems (G. Manimaran) 11

Real-Time WAN -- Summary

• QoS parameters – bandwidth, delay, delay jitter, packet loss

• Traffic types – CBR and VBR

• Traffic models – Peak rate model, LBAP

• Real-time channel setup– QoS routing and Resource reservation

• Data transmission phase– Traffic shaping: Leaky bucket, Token bucket– Packet scheduling: RR, WRR, WFQ, HRR