Introducing QoS awareness in distributed programming: QTcl
A number of distributed applications require communication services with quality of service (QoS) guarantees. Building global-scale distributed systems with predictable properties is one of the great challenges for computer systems engineering in the new century. Work undertaken within the Internet Engineering Task Force has led to the definition of novel architectural models for the Internet with QoS support. According to these models, the network has to be appropriately configured in order to provide applications with the required performance guarantees. In next-generation networks, enabling applications to interact with the underlying QoS services is of primary importance. Hence, several special-purpose application programming interfaces (APIs) have been defined to let applications negotiate QoS parameters across QoS-capable networks. However, so far, none of these APIs are available in different operating environments. We believe that such features should be embedded in programming environments for distributed applications. In this work we present how we included QoS control features in Tcl, a programming language that has been widely adopted for the development of distributed multimedia applications. Our work has led to the implementation of QTcl, an extended Tcl interpreter that provides programmers with a new set of primitives, in full compliance with the standard SCRAM programming interface for the RSVP protocol. QTcl in highly portable, in that it enables standard QoS negotiation to be performed in a seamless fashion on the most common operating systems. Copyright (C) 2003 John Wiley Sons, Ltd.
quality of service distributed multimedia applications scripting languages qos api