1 / 27

A Distributed Resource Controller for QoS Applications

Yechiam Yemini, Danilo Florissi Computer Science Dept Columbia University New York, NY10027 USA {yemini,df}@cs.columbia.edu. Phil Wang Nortel Networks 3500 Carling Avenue Ottawa, ON K1Y 4H7 Canada pywang@nortelnetworks.com. John Zinky BBN Technologies 10 Moulton Street

eudora
Download Presentation

A Distributed Resource Controller for QoS Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Yechiam Yemini, Danilo Florissi Computer Science Dept Columbia University New York, NY10027 USA {yemini,df}@cs.columbia.edu Phil Wang Nortel Networks 3500 Carling Avenue Ottawa, ON K1Y 4H7 Canada pywang@nortelnetworks.com John Zinky BBN Technologies 10 Moulton Street Cambridge, MA 02138 USA jzinky@bbn.com A Distributed Resource Controller for QoS Applications

  2. Contents • Key Challenges in Providing QoS to Applications • State of Application QoS • Key Challenges • Related Work • The DRC (Distributed Resource Control) • Goals • Architecture • User Interfaces • The CRC CORBA-based DRC Implementation • System Overview • Prototype system description • IDL Interfaces • Status • Summary and Future Work Distributed Resource Controller for QoS Applications, P. Wang et al

  3. Key Challenges in Providing QoS to Applications • State of Application QoS • Key Challenges • Related Work

  4. State of the Art in Application QoS Provisioning • Significant diversity in QoS provisioning paradigms • ATM: resource allocation for virtual paths/circuits via UNI • DiffServ: priority classification for packets via BB • Intserv/RSVP: flow-based resource reservation via RAPI • Significant diversity in application requirements • Guarantees: bandwidth, delay, jitter, loss, etc. • Custom specification for given QoS provisioning service Distributed Resource Controller for QoS Applications, P. Wang et al

  5. Example: Provisioning with IntServ/RSVP • Custom set of APIs for UDP application • RAPI: RSVP API for signaling • SAPI: Socket API for data transfer Distributed Resource Controller for QoS Applications, P. Wang et al

  6. Key Challenges • Complex customization of QoS specification • Portability is sacrificed • Varied QoS paradigms with inconsistent resource uses • Legacy applications need to acquire QoS delivery • Need QoS control and management for adaptation • QoS APIs available for a few platforms/languages • QoS control from systems that do not support QoS Distributed Resource Controller for QoS Applications, P. Wang et al

  7. Related Work • Work on integration efforts • Intserv and RSVP over ATM, RFC 2382, 98 • Intserv Operation Over Diffserv, Internet Draft, 99 • Diffserv Bandwidth Broker (BB), Internet2 BBAC, 99 • QoS Broker (for ATM service), Nahrstedt et al, 95 • WinSock2 (for ATM and Intsev), WinSock Group, 96 • A QoS API Proposal, Riddle et al, 98 • Previous work from the authors • QoS performances of TCP and UDP applications using Intserv, Wang et al, 99 • QoSockets (for ATM and Intserv), Florrisi et al, 96 Distributed Resource Controller for QoS Applications, P. Wang et al

  8. A Distributed Resource Controller for QoS Applications • Goals • Architecture • User Interfaces

  9. DRC Goals • Uniform interface for QoS requests • Eases development of applications • Platform independent • QoS-based resource control in a distributed model • Portability across • Platforms, services, languages, and applications Distributed Resource Controller for QoS Applications, P. Wang et al

  10. DRC Functionality • Distributed middleware system • Main components • Distributed service managers • Distributed Resource agents • Main mechanisms • Delivery of application QoS requests to networks • Control for utilization of network services/resources • Utilities • Generic APIs and QoS specifications • Utility to request QoS off-line for legacy applications Distributed Resource Controller for QoS Applications, P. Wang et al

  11. DRC Architecture Overview Domain 1 Domain 1 Domain 2 Domain 2 IS: Intserv DS: Diffsev DA: DRC Agent DM: DRC Manager r DRC DRC - - Based Based Non Non - - DRC DRC Console Console App 1 App 1 App 2 App 2 QoS Mgmt QoS Mgmt User Middleware Middleware DM 1 DM 1 DM 2 DM 2 DRC Manager DRC Manager DRC Agent DRC Agent DSDA1 DSDA1 ISDA1 ISDA1 DSDA2 DSDA2 ISDA2 ISDA2 ATMDA ATMDA Resource Resource RSVPD RSVPD BB BB RSVPD RSVPD ATM Signal ATM Signal Policy Server Policy Server Manager Manager Carrier Carrier Router Router Host Host Router Router Host Host Switch Switch Network Network Distributed Resource Controller for QoS Applications, P. Wang et al

  12. DRC User Layer • Components • QoS demanding applications • DRC user-end utilities • Off-line QoS allocation (Console) • QoS control and management (QoS Mgmt) • Applications can be • DRC-based (App1) • Non-DRC-based (App2) Domain 1 Domain 1 Domain 2 Domain 2 DRC DRC - - Based Based Non Non - - DRC DRC Console Console App 1 App 1 App 2 App 2 QoS Mgmt QoS Mgmt User Distributed Resource Controller for QoS Applications, P. Wang et al

  13. DRC Middleware Layer • Goal: to bridge • Applications needs • Underlying resource provisioning mechanisms • Main components • DRC Managers (DM): services • DRC Agents (DA): resources Middleware Middleware DM 1 DM 1 DM 2 DM 2 DRC Manager DRC Manager DRC Agent DRC Agent DSDA1 DSDA1 ISDA1 ISDA1 DSDA2 DSDA2 ISDA2 ISDA2 ATMDA ATMDA Distributed Resource Controller for QoS Applications, P. Wang et al

  14. DRC DMs and DAs • DRC service Manager (DM) • Distributed in network domains • Accepts application QoS requests and queries • Selects provisioning services • Generates QoS requirements for specific services • Locates DAs to request QoS and query info • DRC resource Agent (DA) • Maps QoS requirements to service-specific QoS • Interacts with DMs • Monitors utilization of network resources and services Distributed Resource Controller for QoS Applications, P. Wang et al

  15. DRC Resource Layer • Includes underlying network resources and services • Resource carriers: hosts, switches and routers • Services: Diffserv, Intserv and ATM • Resource managers • DiffServ • Bandwidth Broker (BB) • Policy Server (PS) • IntServ • RSVP signaling Daemon (RSVPD) • ATM • ATM signaling (manager) Resource Resource RSVPD RSVPD BB BB RSVPD RSVPD ATM Signal ATM Signal Policy Server Policy Server Manager Manager Carrier Carrier Router Router Host Host Router Router Host Host Switch Switch Network Network Distributed Resource Controller for QoS Applications, P. Wang et al

  16. QoS Specification in DRC (I) • Traffic Profile: QoS description • Stream characteristics Common for both QoS-demanding and non-QoS communications • Source address (e.g., an IP address and a port number) • Destination address • Transport protocol (e.g., TCP or UDP) • Network performance requirements Quantitatively QoS of the traffic stream or session • Throughput, e.g., transmitting rates and message size • Latency, e.g., packet or message delay • Jitter, e.g., packet or message delay variance • Reliability, e.g., message loss and connection fail Distributed Resource Controller for QoS Applications, P. Wang et al

  17. QoS Specification in DRC (II) • User Expectation: QoS Mapping • Service type (e.g., Intserv or Intserv/Controlled-Load) • Service period • Service priority • Traffic conditioning(shaping traffic ?) • Authentication and payment • Extra information from a service contract • E.g., the service level agreement (SLA) in Diffserv Distributed Resource Controller for QoS Applications, P. Wang et al

  18. DRC QoS APIs • Five functional abstractions • Open and close a DRC connection • Drc_Handler open(Drc_Name): create or open a new DRC handler • Drc_Status close(Drc_Handler): close a DRC handler • Resource query • Drc_Infoquery(Drc_Src, Drc_Dst): available service and resource • QoS specification • Drc_Status specify(Drc_Handler, Drc_QSpec): assign or modify • QoS request • Drc_Status request(Drc_Handler): commit or re-commit • Error and status • Drc_Status status(Drc_Handler): check the status • Drc_Error error(Drc_Handler): process an error Distributed Resource Controller for QoS Applications, P. Wang et al

  19. CRC: A CORBA-based DRC • System Overview • Prototype system description • IDL Interfaces • Status

  20. CRC System Overview CRC Agent CRC Agent CRC Agent ORB ORB ORB System Administrator Diffserv DRC-based User CRC Console Intserv App 1 CORBA RTP/UDP CRC IDL CRC Manager Socket ORB ORB Intserv Intserv Diffserv Non-DRC User Rsvpd Rsvpd App 2 BB BB BB Distributed Resource Controller for QoS Applications, P. Wang et al

  21. CRC Prototype System … App 1 App N ORB Server … … Resource Agents ORB Server … RSVPD M RSVPD M … Host M Host M Console ORB Client RMgr 1 RMgr 2 Reservation Managers RAgt 1 RAgt 2 RAgt M Underlying RSVPD 1 RSVPD 1 RSVPD 2 RSVPD 2 Host 1 Host 1 Host 2 Host 2 Distributed Resource Controller for QoS Applications, P. Wang et al

  22. CRC CORBA IDL Interfaces Reservation Manager Module module RMM { enum STATUS { UNKNOWN, // No such a flow ? INITOK, … RESVOK, }; enum ERROR { NOFLOW, // No such a flow … RSVPRESVERR // Caused by a // RAPI_RESV_ERROR event // from rsvpd }; Rmanager Object interface Rmgr { STATUS specify(…); // assign // or modify the QoS // specification STATUS request(…); // // commit or update a QoS // request STATUS status(…); // return // the status of a flow ERROR error(…); // return // the error of a flow }; Rmanager Factory interface Rfct { long init(…); // init a flow, return a // flow ID Rmgr create(…); // create an // Rmgr object STATUS stop(…); // stop an // Rmgr service }; Distributed Resource Controller for QoS Applications, P. Wang et al

  23. CRC: Status • CRC 1.0 released • Written in C++ under Linux 2.2 • Uses the TAO real-time CORBA ORB • Uses the Linux RSVP package • Available at http://www.cs.columbia.edu/dcc/crc • Developed several CRC applications • In C, C++, and Java • On Solaris and Linux • Used for the bandwidth management of QuO 2.0 Distributed Resource Controller for QoS Applications, P. Wang et al

  24. Future Work and Summary

  25. Future Work • Mulit-service integration in CRC • Diffserv: DSDA to incorporate SLA and/or SLS • ATM: ATMDA to incorporate UNI • Application adaptation to effective QoS delivery • Monitoring of network resource usage • Dynamic adaptation according to application semantics • Extension for policy-based services • Need DAs and DMs extended Distributed Resource Controller for QoS Applications, P. Wang et al

  26. Summary • New unified distributed resource control framework • Middleware system with user interfaces and utility • Prototype system implemented using CORBA • Allows application QoS specification on or off-line • Uses generic QoS specifications and APIs • Independent of • platform, provisioning service, language, or application. • Available for downloading at • http://www.cs.columbia.edu/dcc/crc Distributed Resource Controller for QoS Applications, P. Wang et al

  27. Thank You ! A Distributed Resource Controller for QoS Applications Distributed Resource Controller for QoS Applications, P. Wang et al

More Related