CMU-CS-99-107
Computer Science Department
School of Computer Science, Carnegie Mellon University



CMU-CS-99-107

A Real-Time Push-Pull Communications Model for
Distributed Real-Time and Multimedia Systems

Kanaka Juvva, Raj Rajkumar

January 1999

Produced by the Real-Time and Mulimedia Laboratory

CMU-CS-99-107.ps
CMU-CS-99-107.pdf


Keywords: Push communication, pull communication, distributed systems, real-time systems, QoS, proxy, end-to-end delay, multimedia systems


Real-time and multimedia applications like multi-party collaboration, internet telephony and distributed command control systems require the exchange of information over distributed and heterogeneous nodes. Multiple data types including voice, video, sensor data, real-time intelligence data and text are being transported widely across today's information, control and surveillance networks. All such applications can benefit enormously from middleware, operating system and networking services that can support QoS guarantees, high availability, dynamic reconfigurability and scalability.

In this paper, we propose a middleware layer called the "Real-Time Push-Pull Communications Service" to easily and quickly disseminate information across heterogeneous nodes with flexible communication patterns. Real-time push-pull communications represents both ``push'' (data transfer initiated by a sender) and "pull" (data transfer initiated by a receiver) communications. Nodes with widely differing processing power and networking bandwidth can coordinate and co-exist by the provision of appropriate and automatic support for transformation on data. In particular, different information sources and sinks can operate at different frequencies and also can choose another (intermediate) node to act as their proxy and and deliver data at the desired frequency. In addition to the synchronous communications of the publisher-subscriber model, information sinks can also choose to obtain data asynchronously. This service has been implemented on RT-Mach, a resource-centric kernel using resource kernel primitives. This paper presents an overview of the design, implementation and a performance evaluation of the model. We also test the applicability and versatility of this service using RT-Conference, a multi-party multimedia collaboration application built on top of this model. Finally, we summarize some key lessons learned in this process.

25 pages


Return to: SCS Technical Report Collection
School of Computer Science homepage

This page maintained by reports@cs.cmu.edu