The RTSP protocol is designed for providing streaming service. Streaming is a technique for transferring data in such a way that it is not necessary for user to wait for the entire file to arrive before it's played back. In other words, the client browser starts playing the streamed data while the data is still being sent from the server.
The RTSP protocol
RTSP is an application level protocol designed for the implementation of streaming service over the Internet. It provides VCR-type control over the playback of multimedia data. Similar to HTTP, RTSP is a client-server service involving a media server to provide the data. But unlike HTTP, which is stateless, RTSP has to maintain a session state for a stream such that the correct action can be taken when a command is issued. For example, when a movie is already playing, pressing the play button again should not invoke any action. Furthermore, HTTP requests are always initiated by clients, but in RTSP, both client and server can initiate requests. For example, the server may inform the clients to connect to another server.
Multimedia data requires a continuous data stream, and jitter is unavoidable on the Internet. A small buffer is therefore usually implemented on the client side so that data is played from the buffer while the buffer is being replenished. As long as the buffer is large enough, the effect of jitter can be smoothed out.
Incorporation of audio and video data within a Web document is now a common practice. However, ordinary Web servers are not designed to deliver streaming media. Therefore, a special class of server, called a 'streaming server' or 'media server', has been designed to do the job. The cooperation between a Web server and a streaming server is shown in Figure 1.1.
There are a number of streaming servers available either commercially or free of charge. In this module, we'll concentrate on introducing you to one of the most commonly-used streaming servers, i.e. Microsoft's Windows Media Server.