CS 194: Distributed Systems Resource Allocation - PowerPoint PPT Presentation

1 / 40
About This Presentation
Title:

CS 194: Distributed Systems Resource Allocation

Description:

Department of Electrical Engineering and Computer Sciences ... If Sk wk = C, flow i is guaranteed to be allocated a rate = wi ... Properties of WFQ ... – PowerPoint PPT presentation

Number of Views:55
Avg rating:3.0/5.0
Slides: 41
Provided by: camp206
Category:

less

Transcript and Presenter's Notes

Title: CS 194: Distributed Systems Resource Allocation


1
CS 194 Distributed SystemsResource Allocation
Scott Shenker and Ion Stoica Computer Science
Division Department of Electrical Engineering and
Computer Sciences University of California,
Berkeley Berkeley, CA 94720-1776
2
Goals and Approach
  • Goal achieve predicable performance (service)
  • Three steps
  • Estimate applications resource needs (not in
    this lecture)
  • Admission control
  • Resource allocation

3
Type of Resources
  • CPU
  • Storage memory, disk
  • Bandwidth
  • Devices (e.g., vide camera, speakers)
  • Others
  • File descriptors
  • Locks

4
Allocation Models
  • Shared multiple applications can share the
    resource
  • E.g., CPU, memory, bandwidth
  • Non-shared only one application can use the
    resource at a time
  • E.g., devices

5
Not in this Lecture
  • How application determine their resource needs
  • How users pay for resources and how they
    negotiate resources
  • Dynamic allocation, i.e., application allocates
    resources as it needs them

6
In this Lecture
  • Focus on bandwidth allocation
  • CPU similar
  • Storage allocation usually done in fixed chunks
  • Assume application requests all resources at once

7
Two Models
  • Integrated Services
  • Fine grained allocation per-flow allocation
  • Differentiated services (not in this lecture)
  • Coarse grained allocation
  • Flow a stream of packets between two
    applications or endpoints

8
Integrated Services Example
  • Achieve per-flow bandwidth and delay guarantees
  • Example guarantee 1MBps and lt 100 ms delay to a
    flow

Receiver
Sender







9
Integrated Services Example
  • Perform per-flow admission control

Receiver
Sender







10
Integrated Services Example
  • Install per-flow state

Receiver
Sender







11
Integrated Services Example
  • Install per flow state

Receiver
Sender







12
Integrated Services Example Data Path
  • Per-flow classification

Receiver
Sender











13
Integrated Services Example Data Path
  • Per-flow buffer management

Receiver
Sender











14
Integrated Services Example
  • Per-flow scheduling

Receiver
Sender











15
Service Classes
  • Multiple service classes
  • Service contract between network and
    communication client
  • End-to-end service
  • Other service scopes possible
  • Three common services
  • Best-effort (elastic applications)
  • Hard real-time (real-time applications)
  • Soft real-time (tolerant applications)

16
Hard Real Time Guaranteed Services
  • Service contract
  • Network to client guarantee a deterministic
    upper bound on delay for each packet in a session
  • Client to network the session does not send more
    than it specifies
  • Algorithm support
  • Admission control based on worst-case analysis
  • Per flow classification/scheduling at routers

17
Soft Real Time Controlled Load Service
  • Service contract
  • Network to client similar performance as an
    unloaded best-effort network
  • Client to network the session does not send more
    than it specifies
  • Algorithm Support
  • Admission control based on measurement of
    aggregates
  • Scheduling for aggregate possible

18
Role of RSVP in the Architecture
  • Signaling protocol for establishing per flow
    state
  • Carry resource requests from hosts to routers
  • Collect needed information from routers to hosts
  • At each hop
  • Consult admission control and policy module
  • Set up admission state or informs the requester
    of failure

19
RSVP Design Features
  • IP Multicast centric design (not discussed here)
  • Receiver initiated reservation
  • Soft state inside network

20
RSVP Basic Operations
  • Sender sends PATH message via the data delivery
    path
  • Set up the path state each router including the
    address of previous hop
  • Receiver sends RESV message on the reverse path
  • Specifies the reservation style, QoS desired
  • Set up the reservation state at each router
  • Things to notice
  • Receiver initiated reservation
  • Decouple routing from reservation
  • Two types of state path and reservation

21
RSVP Protocol
  • Problem asymmetric routes
  • You may reserve resources on R?S3?S5?S4?S1?S, but
    data travels on S?S1?S2?S3?R !
  • Solution use PATH to remember direct path from S
    to R, i.e., perform route pinning

S2
R
S
S1
S3
S5
S4
22
PATH and RESV messages
  • PATH also specifies
  • Source traffic characteristics
  • Use token bucket
  • Reservation style specify whether a RESV
    message will be forwarded to this server
  • RESV specifies
  • Queueing delay and bandwidth requirements
  • Source traffic characteristics (from PATH)
  • Filter specification, i.e., what senders can use
    reservation
  • Based on these routers perform reservation

23
Token Bucket and Arrival Curve
  • Parameters
  • r average rate, i.e., rate at which tokens fill
    the bucket
  • b bucket depth
  • R maximum link capacity or peak rate (optional
    parameter)
  • A bit is transmitted only when there is an
    available token
  • Arrival curve maximum number of bits
    transmitted within an interval of time of size t

Arrival curve
r bps
bits
slope r
bR/(R-r)
b bits
slope R
lt R bps
time
regulator
24
How Is the Token Bucket Used?
  • Can be enforced by
  • End-hosts (e.g., cable modems)
  • Routers (e.g., ingress routers in a Diffserv
    domain)
  • Can be used to characterize the traffic sent by
    an end-host

25
Traffic Enforcement Example
  • r 100 Kbps b 3 Kb R 500 Kbps

26
Source Traffic Characterization
  • Arrival curve maximum amount of bits
    transmitted during an interval of time ?t
  • Use token bucket to bound the arrival curve

bits
bps
Arrival curve
?t
time
27
Source Traffic Characterization Example
  • Arrival curve maximum amount of bits
    transmitted during an interval of time ?t
  • Use token bucket to bound the arrival curve

Arrival curve
bits
4
bps
3
2
2
1
1
?t
0
1
2
3
4
5
1
2
3
4
5
time
28
QoS Guarantees Per-hop Reservation
  • End-host specify
  • The arrival rate characterized by token-bucket
    with parameters (b,r,R)
  • The maximum maximum admissible delay D
  • Router allocate bandwidth ra and buffer space Ba
    such that
  • No packet is dropped
  • No packet experiences a delay larger than D

slope ra
slope r
bits
Arrival curve
bR/(R-r)
D
Ba
29
End-to-End Reservation
  • When R gets PATH message it knows
  • Traffic characteristics (tspec) (r,b,R)
  • Number of hops
  • R sends back this information worst-case delay
    in RESV
  • Each router along path provide a per-hop delay
    guarantee and forward RESV with updated info
  • In simplest case routers split the delay

S2
R
(b,r,R)
S
(b,r,R,2,D-d1)
S1
S3
(b,r,R,1,D-d1-d2)
(b,r,R,0,0)
PATH
RESV
30
Weighted Fair Queueing (WFQ)
  • Scheduler of choice to enforce bandwidth and CPU
    allocation
  • Implements max-min fairness each flow receives
    min(ri, f) , where
  • ri flow arrival rate
  • f link fair rate (see next slide)
  • Weighted Fair Queueing (WFQ) associate a weight
    with each flow

31
Fair Rate Computation Example 1
  • If link congested, compute f such that

f 4 min(8, 4) 4 min(6, 4) 4 min(2, 4)
2
8
10
4
6
4
2
2
32
Fair Rate Computation Example 2
  • Associate a weight wi with each flow i
  • If link congested, compute f such that

f 2 min(8, 23) 6 min(6, 21) 2 min(2,
21) 2
8
(w1 3)
10
4
6
(w2 1)
4
2
2
(w3 1)
33
Fluid Flow System
  • Flows are served one bit at a time
  • WFQ can be implemented using bit-by-bit weighted
    round robin
  • During each round from each flow that has data to
    send, send a number of bits equal to the flows
    weight

34
Fluid Flow System Example 1
Packet Size (bits) Packet inter-arrival time (ms) Rate (C) (Kbps)
Flow 1 1000 10 100
Flow 2 500 10 50
Flow 1 (w1 1)
100 Kbps
Flow 2 (w2 1)
1
2
4
5
Flow 1 (arrival traffic)
3
time
Flow 2 (arrival traffic)
1
2
3
4
5
6
time
Service in fluid flow system
time (ms)
0
10
20
30
40
50
60
70
80
Area (C x transmission_time) packet size
35
Fluid Flow System Example 2
link
  • Red flow has sends packets between time 0 and 10
  • Backlogged flow ? flows queue not empty
  • Other flows send packets continuously
  • All packets have the same size

flows
weights
5
1
1
1
1
1
0
15
2
10
4
6
8
36
Implementation In Packet System
  • Packet (Real) system packet transmission cannot
    be preempted.
  • Solution serve packets in the order in which
    they would have finished being transmitted in the
    fluid flow system

37
Packet System Example 1
Service in fluid flow system
3
4
5
1
2
1
2
3
4
5
6
time (ms)
  • Select the first packet that finishes in the
    fluid flow system

Packet system
time
38
Packet System Example 2
Service in fluid flow system
0
2
10
4
6
8
  • Select the first packet that finishes in the
    fluid flow system

Packet system
0
2
10
4
6
8
39
Properties of WFQ
  • Guarantee that any packet is transmitted within
    packet_lengt/link_capacity of its transmission
    time in the fluid flow system
  • Can be used to provide guaranteed services
  • Achieve max-min fair allocation
  • Can be used to protect well-behaved flows against
    malicious flows

40
Hierarchical Link Sharing
  • Resource contention/sharing at different levels
  • Resource management policies should be set at
    different levels, by different entities
  • Resource owner
  • Service providers
  • Organizations
  • Applications

155 Mbps
Link
55 Mbps
100 Mbps
Provider 1
Provider 2
50 Mbps
50 Mbps
Stanford.
Berkeley
20 Mbps
10 Mbps
Math
Campus
EECS
seminar video
WEB
seminar audio
Write a Comment
User Comments (0)
About PowerShow.com