The RTMW application: bringing multicast audio/video to the Web
Myung-Ki Shina, Jae-Yong Leeb,
Jung-Sook Baeb and Jin-Ho Hahma
bChungnam National University
As an access to the information on the Web is asynchronous,
the Web based on a strict TCP/IP clientserver 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.
RTP/RTCP (Real-Time Transport Protocol/RTP Control Protocol); SDP (Session
Description Protocol); SAP (Session Announcement Protocol); RTMW (Real Time
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 clientserver 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
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
Fig. 1. Operation example of RTP/RTCP player plug-in in RTMW.
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/