Abstract
The problem of employing multiple servers to serve a pool of clients on a network based multimedia service is addressed. We have designed and practically implemented a prototype system employing multiple servers to render a long duration movie to the customers. We have employed a multiple server retrieval strategy proposed in the literature [39] to realize this system. In the system, server coordination, client behavior and service facilities are completely controlled by an Agent based approach in which we have used the recent Jini technology. Several issues, ranging from data retrieval from individual server, behavior of the underlying network infrastructure, to client management and resource (client buffers) management, are considered in this implementation. We describe in detail our experiences in this complete design process of every module in the software architecture, its purpose, and working style. Further, the system is shown to be robust amidst unpredictable failures, i.e., in the event of server crashes. The load balancing capability is built-in as a safe guard measure to assure a continuous presentation. We present a comprehensive discussion on the software architecture to realize this working system and present our experiences. A system comprising a series of Pentium III PCs on a fast Ethernet network is built as a test-bed. Through this prototype, a wider scope of research challenges ahead are highlighted as possible extensions.
Similar content being viewed by others
References
C.C. Aggarwal, J.L. Wolf, and P.S. Yu, “On optimal batching policies for video-on-demand storage servers,” in Proceedins of the International Conference on Multimedia Computing and Systems (ICMCS '96), pp. 253–258, 1996.
C.C. Aggarwal, J.L. Wolf and P.S. Yu, “Design and analysis of permutation-based pyramid broadcasting,” Multimedia system, Vol. 7, pp. 439–448, 1999.
C. Bernhardt and E. Biersack, “A Scalable Video Server: Architecture, Design and Implementation,” in Proceedings of the Realtime Systems Conference, 1995., Paris, France, January 1995, pp. 63–72.
C.C. Bisdikian and B.V. Patel, “Cost-Based Program Allocation for Distributed Multimedia-on-Demand Systems,” IEEE Multimedia, pp. 62–72, Fall issue, 1996.
Ariel Cohen, Walter A. Burkhard, P., and Venkat Rangan, “Pipelined disk arrays for digital movie retrieval,” in Proceedings of the International Conference on Multimedia Computing and Systems, 1995., Washington, DC, USA, 1995, pp. 312–317.
Y. Cai, K. Hua, and K. Vu, “Optimizing patching performance,” in Proceeding of SPIE/ACM Conference on Multimedia Computing and Networking 1999, January 1999, pp. 204–215.
A. Dan and D. Sitaram, “Multimedia Caching Strategies for Heterogeneous Application and Server Environments,” Multimedia Tools and Applications, Vol. 4, No. 3, pp. 279–312, May 1997.
A. Dan, D. Sitaram, and P. Shahabuddin, “Dynamic batching policies for an on-demand video server,” ACM Multimedia Systems, Vol. 4, No. 3, pp. 112–121, 1996.
Li-gang Dong, B. Veeravalli, and C.C. Ko, “Efficient Movie Retrieval Strategies for Movie-on-Demand Multimedia Services on Distributed Networks,” Multimedia Tools and Applications, Vol. 20, Iss. June 2003, 2.
H. Fahmi, S. Baqai, A. Bashandy, and A. Ghafoor, “Dynamic Resource Allocation for Multimedia Document Retrieval over High Speed LANs,” Multimedia Tools and Applications, Vol. 8, No. 1, pp. 91–114, 1999.
L. Gao, Z.L. Zhang, and D. Towsley, “Catching and selective catching: Efficient latency reduction techniques for delivering continuous multimedia streams,” in Proceedings of the 7th ACM International Conference on Multimedia '99, Vol. 1, 1999, pp. 203–206.
D. Ghose and H-J. Kim, “Scheduling Video Streams in Video-on-Demand Systems: A Survey,” Multimedia Tools and Applications, Vol. 11, No. 2, pp. 167–195, 2000.
L. Golubchik, J.C.S. Lui, and R.R. Muntz, “Reducing I/O demand in video-on-demand storage servers,” in Proceedings of the 1995 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems, Vol. 23, Iss. 1, 1995, pp. 25–36.
L. Golubchik, J.C.S. Lui, and R.R. Muntz, “Adaptive piggybacking: A novel technique for data sharing in video-on-demand storage servers,” ACM Multimedia Systems, Vol. 4, No. 3, 1996, pp. 140–155.
Sungjune Hong, Youngjae Kim, Minsoon Kweon, Dugki Min, and Sunyoung Han “Object-oriented real-time CORBA naming service on distributed environment,” in Proceedings of Twelfth International Conference on Information Networking, January 1998, pp. 637–640,.
K.A. Hua, Y. Cai, and S. Sheu, “Patching: A multicast technique for true video-on-demand services,” in Proceedings of ACM Multimedia 1998, September 1998, pp. 191–200.
K.A. Hua and S. Sheu, “Skyscraper broadcasting: A New Broadcasting Scheme for Metropolitan Video-on-Demand Systems,” in Proceedings of the ACM SIGCOMM '97, Cannes France, September 1997, pp. 89–100.
D. Jadav, A.N. Choudhary, and P.B. Berra, “Techniques for Increasing the Stream Capacity of a High-Performance Multimedia Server,” IEEE Transactions on Knowledge and Data Engineering, Vol. 11, No. 2, March/April 1999, pp. 284–302.
V. Kalogeraki, L.E. Moser, and P.M. Melliar-Smith, “A CORBA Framework for Managing Real-Time Distributed Multimedia Applications,” in Proceedings of the 33rd Hawaii International Conference on System Sciences, Vol. 8, 2000.
J.Y.B. Lee, “Parallel Video Servers: A tutorial”, IEEE Multimedia, Vol. 5, No. 2, pp. 20–28, April—June 1998.
J.Y.B. Lee, “Concurrent Push—A Scheduling Algorithm for Push-Based Parallel Video Servers”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 9, No. 3, April 1999, pp. 467-477.
J.Y.B. Lee, “On a unified architecture for video-on-demand services,” IEEE Transaction on Multimedia, Vol. 4, March 2002, pp. 38–47.
J.Y.B. Lee and P.C Wong, “server array approach for video-on-demand service on local area networks”, Proceedings of INFOCOM '96., Vol. 1, March 1996, pp. 27–34.
J.Y.B. Lee and P.C. Wong, “Performance Analysis of a Pull-Based Parallel Video Server”, IEEE Transactions on Parallel and Distributed Systems, Vol. 11, No. 12, pp. 1217–1231, December 2000.
P. Lougher, P. Pegler, and D. Shepherd, “Scalable storage servers for digital audio and video,” International Conference on Storage and Recording Systems, 1994, pp. 140–143.
Huadong Ma, and K.G. Shin, “Multicast video-on-demand services,” ACM Computer Communication Review, Vol. 32, No. 1, pp. 31–43, 2002.
J.P. Nussbaumer, B.V. Patel, F. Schaffa, and J. P. G. Sterbenz, “Networking requirements for interactive video on demand,” IEEE Journal on Selected Areas in Communications, Vol. 13, No. 5, pp. 779–787, 1995.
J.H. Oh, K.A. Hua, and K. Vu, “An adaptive hybrid technique for video multicast,” Proceeding of the 7th International Conference on Computer Communications and Networks, 1998, pp. 227–234.
B. Ozden, A. Biliris, R. Rastogi, and A. Silberschatz, “A Disk-Based Storage Architecture for Movie on Demand Servers,” Information Systems, Vol. 20, No. 6, pp. 465-482, 1995.
C. Papadimitriou, S. Ramanathan, P. Venkat Rangan and S. Sampath Kumar, “Multimedia information caching for personalized video-on-demand,” Computer Communications, Vol. 18, No. 3, pp. 204–216, March 1995.
B. Ping, B. Prabhakaran, and A. Srinivasan, “Retrieval Scheduling for Collaborative Multimedia Presentations,” Multimedia Systems, ACM/Springer-Verlag, No. 8, pp. 146–155, 2000.
P.V. Rangan and H.M. Vin, “Efficient Storage Techniques for Digital Continuous Multimedia,” IEEE Transactions on Knowledge and Data Engineering, Vol. 5, No. 4, pp. 564–573, 1993.
Douglas C. Schmidt, David L. Levine, and Sumedh Mungee, “The Design of the TAO Real-Time Object Request Broker,” Computer Communications, Vol. 21, No. 4, pp. 294–324, 1998.
S. Sheu and K. A. Hua, “Virtual batching: A new scheduling technique for video-on-demand servers,” in Proceedings of the 5th International Conference on Database Systems for Advanced Applications, Melbourne, Australia, April 1997, pp. 481–490.
S. Sheu, K. A. Hua, and W. Tavanapong, “Chaining: A generalized batching technique for video-on-demand systems,” in Proceedings of the IEEE International Conference on Multimedia Computing and Systems, Ottawa, Ontario, Canada, June 1997, pp. 110–117.
A.P. Sistla and J.L. Welch, “Efficient distributed recovery using message logging,” in Proceedings of the 8th ACM Symposium on Principles of Distributed Computing, August 1989, pp. 223–238.
Sun Microsystems Inc. “Jini Technology Core Platform Specification,” http://wwws.sun.com/software/jini/specs/jini1.1html/core-title.html
Andrew S. Tanenbaum and Robbert Van Renesse, “Distributed operating systems,” ACM Computing Surveys (CSUR), Vol. 17, Issue. 4, pp. 419–470, December 1985.
B. Veeravalli and G.D. Barlas, “Access Time Minimization for Distributed Multimedia Applications,” Multimedia Tools and Applications, Kluwer Academic Publishers, Vol. 12, Nos. 2/3, November 2000, pp. 235–256.
H.M. Vin, A. Goyal, and P. Goyal, “Algorithms for Designing Large-Scale Multimedia Servers,” Computer Communications, Vol. 18, No. 3, pp. 192–203, March 1995.
S. Viswanathan and T. Imielinski, “Metropolitan area video-on-demand service using pyramid broadcasting,” Multimedia Systems, Vol. 4, pp. 197–208, 1996.
Y. Won, and J. Srivastava, “SMDP: Minimizing Buffer Requirements for Continuous Media Servers,” Multimedia Systems, ACM/Springer-Verlag, No. 8, pp. 105–117, 2000.
Y. Won and J. Srivastava, “Strategic Replication of Video Files in a Distributed Environment,” International Journal of Multimedia Tools and Applications, Vol. 8, No. 1, pp. 249–283, March 1999.
S. Yucel, and T. Saydam, “An Architecture for Realizing CORBA Audio/Video Stream Specification over IP Technologies,” IEEE Globecom 2001, Vol. 4, San Antonio, Texas, November 25–29, 2001.
Author information
Authors and Affiliations
Corresponding author
Additional information
Bharadwaj Veeravalli Member, IEEE & IEEE-CS, received his BSc in Physics, from Madurai-Kamaraj Uiversity, India in 1987, Master's in Electrical Communication Engineering from Indian Institute of Science, Bangalore, India in 1991 and PhD from Department of Aerospace Engineering, Indian Institute of Science, Bangalore, India in 1994. He did his post-doctoral research in the Department of Computer Science, Concordia University, Montreal, Canada, in 1996. He is currently with the Department of Electrical and Computer Engineering, Computer and Information Engineering (CIE) division, at The National University of Singapore, Singapore, as a tenured Associate Professor. His main stream research interests include, Multiprocessor systems, Cluster/Grid computing, Scheduling in parallel and distributed systems, Bioinformatics & Computational Biology, and Multimedia computing. He is one of the earliest researchers in the field of divisible load theory. He has published over 75 papers in high-quality International Journals and Conferences. He had secured several externally funded projects. He has co-authored three research monographs in the areas of Parallel and Distributed Systems, Distributed Databases, and Multimedia systems, in the years 1996, 2003, and 2005, respectively. He had guest edited a special issue on Cluster/Grid Computing for IJCA, USA journal in 2004. He has been recently invited to contribute to Multimedia Encyclopedia, Kluwer Academic Publishers, 2005. He is currently serving the Editorial Board of IEEE Transactions on Computers, IEEE Transactions on SMC-A and International Journal of Computers & Applications, USA, as an Associate Editor. He had served as a program committee member and as a session chair in several International Conferences.
Long Chen received the B.E. degree in Electrical Engineering and M.E. degree in Electrical Engineering from the Northwestern Polytechnic University, P. R. China, in 1998 and 2001, respectively, and the M.E. degree in Computer Engineering from the National University of Singapore, Singapore, in 2004. He is currently a Ph.D. candidate at the Department of Electrical and Computer Engineering, the University of Delaware, United States. His research interests include multimedia systems, distributed system, network security, and computer architecture.
Rights and permissions
About this article
Cite this article
Veeravalli, B., Chen, L., Kwoon, H.Y. et al. Design, analysis, and implementation of an agent driven pull-based distributed video-on-demand system. Multimed Tools Appl 28, 89–118 (2006). https://doi.org/10.1007/s11042-006-5116-7
Issue Date:
DOI: https://doi.org/10.1007/s11042-006-5116-7