190 likes | 303 Views
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.
E N D
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, value-added 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 Co-reservation 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 domain-specific 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.