The RTMW application: bringing multicast audio/video to the Web

Myung-Ki Shina, Jae-Yong Leeb, Jung-Sook Baeb and Jin-Ho Hahma

aETRI
mkshin@pec.etri.re.kr and jhhahm@pec.etri.re.kr

bChungnam National University
jylee@datacom.chungnam.ac.kr and jsbae@datacom.chungnam.ac.kr

Abstract
As an access to the information on the Web is asynchronous, the Web based on a strict TCP/IP client–server model cannot provide real-time information sharing support. So, in order to bring multicast audio/video to the Web, architecture extension for real-time continuous media transmission and session directory services embedded into the Web is needed. This paper presents an implementation of a RTMW application, a prototype of integrating RTP/RTCP and SDP/SAP into the Web which allows Web users to join an MBone session and receive audio/video seamlessly. In addition, this enables minimal QoS control by monitoring. A RTMW is Internet community standards compliant and interoperable with other MBone applications.

Keywords
RTP/RTCP (Real-Time Transport Protocol/RTP Control Protocol); SDP (Session Description Protocol); SAP (Session Announcement Protocol); RTMW (Real Time Multimedia Web)

1. Introduction

The Web provides a simple and effective means for users to share information on the Internet. However, as an access to the information on the Web is asynchronous, the Web based on a strict TCP/IP client–server model can not provide real-time information sharing support. In order to bring multicast audio/video to the Web, architecture extension for real-time continuous media transmission and session directory services embedded into the Web is needed. Transmission of real-time multimedia data is not trivial under the best-effort service of today's Internet. Packets may be delayed or lost arbitrarily. To overcome some of these problems without any changes to the current Internet, the RTP/RTCP has been developed and standardized within the IETF. In addition, current real-time conference over the MBone (Multicast Backbone) is a light-weight session, which uses two mechanisms for session discovery: SDP and SAP. This paper presents an implementation of a RTMW application, a prototype of integrating RTP/RTCP and SDP/SAP into the Web for receiving audio/video via the MBone seamlessly. This enables the real-time delivery of continuous media on the Web without helper applications, and minimal Quality of Service (QoS) control of audio/video transmission.

2. RTMW application

2.1. WebSDR

The RTMW uses <application/x-sdp> MIME type for addressing multicast sessions in the Web. SDP is used to describe sessions and these packets are conveyed by SAP. We design the WebSDR program for session information which enables Web users to join an MBone session. WebSDR running at HTTP server plays the role of creation of session description pages as HTML format and .sdp files as text format. When creating a session page, the SDP MIME information is embedded to each session page. And, the <embed> tag is used for audio/video stream plug-in. An example is as follows: <embed src="mbone.sdp" type="application/x-sdp" height="800" width="400"> A .sdp file contains session information such as multicast address, port, media, format, etc., according to Internet SDP draft.

2.2. RTP/RTCP plug-in

We use RTP/RTCP plug-in to integrate multicast audio/video into the Web. The basic idea of this approach is to add an additional application, RTP/RTCP audio/video plug-in, then play using it on a Web browser easily and seamlessly. The traditional HTTP protocol is unsuitable for transmitting audio/video streams due to retransmission and high response time. So, we use HTTP to retrieve .sdp files, and RTP/RTCP plug-in to receive real-time audio/video stream. Plug-ins extend Web browsers such as Netscape Navigator to include a wide range of interactive and multimedia capabilities, while blending seamlessly into the Web browser interface. Our RTP/RTCP plug-in modules get session information, such as multicast address, port, media, format, etc. from a .sdp file, join an MBone session using IGMP, and open RTP and RTCP sockets for receiving audio/video stream respectively. The encoding formats currently implemented include H.261 for video and PCM for audio. Figure 1 shows an operation example of our RTP/RTCP plug-in. We show QoS information for each stream under the video window. They include SSID, fraction of RTP packets lost, cumulative number of packets lost, interarrival jitter, etc.

2.3. Quality of services in RTMW

Under the best-effort services of today's Internet, we design and implement received-based adaptation algorithm based on the idea that the sessions of large delay jitters would require large buffer for forced delay. So, we first measure delay jitters of a few packets at session start time at each receiver. Then, we determine the appropriate buffer size for forced delay. We present an experiment to determine an appropriate buffer size. As a buffer size increases, the amount of overflow and underflow decreases. But, improvement of service quality is saturated at some point. If we increase the buffer size, service quality is not improved and delay increases uselessly. Thus, the appropriate buffer size can be determined at this point. Experiments with various MBone session show that the appropriate buffer size needed is about 15 times of the size corresponding to delay jitter. Practically, we observed that hiccups are reduced in our RTMW than in MBone audio tools such as vat. Playback delay is also reduced in small TTL session such as LAN scope. Of course, this algorithm and others are not the fundamental solution to guarantee the QoS of real-time sessions. It is required to reserve bandwidth and perform traffic schedulings in order to guarantee or maintain the service quality of real-time sessions.

3. Conclusions and future works

The three major contributions of this work are to integrate RTP into the Web by applying plug-in embedded to browsers, enable Web users to join an MBone session without sdr session directory program, and provide minimal QoS control by monitoring the receiving status. We are currently working on several extensions to this work. One thing is to implement this application in 100% pure Java which allow this application is used for NC (Network Computer) or Java embedded systems. In order to do this, the Java Media APIs are used, which meet the increasing demand for multimedia by providing a unified, non-proprietary, platform-neutral solution. By providing standard players and integrating this technologies such as RTP, the Java Media APIs enable us to make RTMW real platform independent and scalable application on heterogeneous systems on the Internet/MBone. Next, we plan to extend this RTMW using the coming RSVP (Resource Reservation Setup Protocol) networks to provide an excellent QoS to real-time sessions. In order to do this, RSVP networks is deployed (in near future) and RTMW application adopts RSVP APIs.

A complete paper and programs are available at: http://www.mbone.or.kr/rtmw/