A video-on-demand (VOD) server is a place where hundreds or thousands of movie files are stored, and movie watchers (clients) can connect their own machines to the server to browse, request and view the movies immediately . There are many challenges to a VOD server, and load balancing is the most important one. A server must have movie files organized in such a way that all clients can view the movies they want, regardless of the number of clients who are online. There may be peak time periods when many clients want to view the same movie, and the server must send different phases of the same movie file to them, since the clients do not all request the movie at the same time. The server must also minimize the waiting time for each client. The cost must be kept low, but the number of files and bandwidth must be large enough to service all clients promptly. The goal of load balancing is to maximize the ratio of the number of concurrent streams over the cost of the server.
Another challenge is the online functionalities at the client's end. A client must be able to perform the VCR-like functions, such as fast-forward, rewind, pause, etc... on the movies they are viewing, the same way as when they rent and watch a video tape with their VCR. Therefore, it's not enough if a steady stream of movie file comes to their house without the client being able to interfere with it.
In this talk, I will survey a number of articles which appeared recently about this type of multimedia. These are the contributions by the people who have studied the details of a VOD server, the problems that are involved, and the solutions for those problems.