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