Transcript Document

Resource Management – a Solution for
Providing QoS over IP
Tudor Dumitraş, Frances Jen-Fung Ning and Humayun Latif
Outline
• Motivation
• QoS solutions
– Int-Serv
– Diff-Serv
• Darwin
– Darwin mechanisms
– Xena
• Globus
– Components
– Operation
• Comparison
• Q&A
Motivation
• IP was not originally designed for QoS
– Datagram oriented, variable-length packets
– Best-effort service: make better use of
bandwidth
– Cannot give any QoS guarantees
(bandwidth, jitter, latency)
– Streaming multimedia needs QoS
– Need a circuit switched – like paradigm
QoS Solutions: Int-Serv
• Reserves resources for every flow at
every router hop
• Uses the Resource Reservation
Protocol (RSVP) for signaling
• Needs to maintain soft states at every
router along the path
• Requires a lot of signaling: scalability is
a key concern
QoS Solutions: Diff-Serv (1)
• Light-weight alternative
to Int-Serv
• Consistent policies will
be applied inside each
trusted domain
• Traffic is classified at
edge routers
• Uses the ToS field from
IP headers to indicate
the class of service
Diff-Serv framework
QoS Solutions: Diff-Serv (2)
• Bandwidth brokers
– Establish relationships
of limited trust with
their peers in adjacent
domains
– Allocate traffic within
the domain
– Maintain a policy
database
– Configure leaf routers
Diff-Serv with bandwidth broker
Darwin
• A CMU Project
• Resource Management mechanisms that
support deployment of customizable, valueadded services in a network.
• Supports application oriented QoS via:
–
–
–
–
Application oriented service brokers
Delegates – to customize runtime management
Hierarchical scheduling
Signaling protocol
Darwin Mechanisms…
•
Resource Brokers:
– Perform global resource
allocation.
– App. Specifies QoS value
metric
– Use domain knowledge for
optimizations
– Coordinate allocations for
interdependent resources
– Darwin : Xena
•
Delegates:
– Enable service specific dynamic
behavior in network.
– Runtime adaptation at switching
points in interior network (as
opposed to flow endpoints).
– Darwin : Java code segments
executing on routers.
Darwin Mechanisms
•
Hierarchical Scheduling
–
–
–
•
Resource, contention exists at many
levels; physical ~ among service
providers; provider level ~ lower
level providers; application level ~
individual flows
Hierarchical scheduler allows all
entities to specify independent
sharing policies and ensures they
are met.
Darwin : HFSC (Fair Service Curve)
Signaling Protocol:
–
–
–
–
Provides interface between resource
broker’s abstract network view and
low level network resources.
Allocates “real” resources e.g.
bandwidth, buffers, cycles, memory.
Hides network heterogeneity details
from Xena.
Darwin : Beagle
Darwin at work
•
•
•
•
•
•
•
Applications (1) submit requests to Xena (2)
Xena identifies resources needed & passes
request to Beagle (3)
Beagle allocates resources (4)
For each resource, Beagle interacts
with local resource manager.
Resource Manager modifies local state:
classifier and scheduler to guarantee
appropriate service
Beagle can set up delegates
Xena – A closer look
• Resource Discovery : Locating resources that can potentially be
used
• Optimization: Satisfy requirement while min. cost and max.
quality
• Apps request resources in varying degrees of abstraction
– Abstract: Service of class S needed
– Specific: Place this node at network address X
• App. can even specify flow semantic content (e.g. Motion JPEG
with specific frame rate)
• Allows Xena to insert semantic preserving transformations e.g.
transcoders at two ends of network segment
• Xena optimization criteria: application-specified objective
function that maps candidate solutions to numeric value
• Allows application to customize definition of service quality
Globus Architecture for Reservation
and Allocation (GARA)
• Provides End to End QoS guarantees in
network applications
• Enables construction of application-level
reservation libraries that applications use to
assemble resource collections guided by
application QoS requirements and resource
administration policies.
• Supports:
Dynamic Discovery and Immediate Reservation of Heterogeneous
Resources that are Independently Administered and Controlled
GARA Components
•
•
•
•
•
•
•
Generic Resource Object
Information Service
Co-Reservation Agent
Co-Allocation Agent
Global Resource Allocation Manager
Local Resource Managers
Physical Resources
GARA – Reservation vs. Allocations
•
•
•
•
•
GARA Introduces Generic Resource
Object to address heterogeneous
physical resources in a generalized
way
Reservation made via “Create
Object” request
Create Object returns Reservation
Handle to application. No
“allocation” made at this point.
Allocation made later by passing
resource handle to co-allocation
agent.
Advantage of separating reservation
VS allocation ~ enables advance
reservations of resources when a
resource is in high demand.
GARA – Operation
•
•
•
•
•
Application passes request with
description of service to Coreservation agent
CR-Agent maps QoS
requirements to resources by
queries to Information Service
and app. Specific knowledge.
CR-Agent creates reservation
by directing request to Globus
Resource Allocation Manager
(GRAM).
GRAM authenticates request,
creates reservation and returns
handle.
Handle used to allocate
resources later.
GARA Example
• Candidate resources for Data Analysis Application include
multiple cached copies of data set
• Right: Physical location of resources
• Left: Search tree constructed by the co-reservation agent.
• “R”s represent reservations
Comparison – Reservation
Requests & Resource Allocations
• Darwin
+ Very flexible in QoS metric specification
+ Avoids duplication of effort & expertise in areas where there
are specialized SPs
+ Allows customized mgt that supports tasks that require
detailed network knowledge while others require domainspecific knowledge
- Only supports immediate reservations ~ not optimal in timing
of resource allocation
• Globus
+ Advance reservation possibility - guarantees resource
availability for high contention resources
- Not a very flexible way to specify app. QoS level.
Conclusion
• Neither really better/worse than other
• Darwin:
– More flexible for specifying degree of abstraction
in resource requirement of different types of
services
• Globus:
– Provides advance reservations
– Doesn’t leave decision making to resource mgrs in
network architecture.
Questions