Simula Research Laboratory /
Center for Resilient Networks and Applications /
NorNet
Homepage of Thomas Dreibholz /
RTP Audio Homepage
🇩🇪Zur deutschen Version dieses Dokumentes🇩🇪
RTP Audio
The RTP Audio System contains a server and several clients, which are served
with audio data from the server. The transmission is realized using the
RTP protocol (Real-Time Protocol, see
RFC 1889) based on UDP. RTP
Audio supports IPv4 and IPv6 including flowlabels and traffic classes. Three
versions of clients are available: A shell version, a version using the
Qt GUI and a Java version using Swing.
The RTP Audio Server control is realized using RTCP messages. This includes
login/logout, quality and position changes, and feedbacks of the clients to the
server. The server reads audio files grouped to audio lists. Audio lists may
contain WAV and MP3 files. MP3 files are decompressed by the server using
libmpegsound.
For audio transmission, two encodings habe been developed: Simple Audio Encoding
and Advanced Audio Encoding. The last one splits the stream into 1, 2 or 3 layers having
descending priorities and may therefore have different DiffServ classes and probability of
packet loss. It is now possible to do an error correction by
replacing missing data of one audio channel by the data of the other channel. The IP
packets are marked with IPv4 TOS/IPv6 Traffic Class byte given by the QoS management
to support DiffServ usage. Using IPv6, flowlabels are also used to support bandwidth
reservation.
Measurement Tools
For network bandwidth measurement and the evaluation of the developed system, measurement
tools have been developed: netlogger records aggregated traffic statistics using libpcap,
netanalyzer generates GNUplot output from the recordings. rttp does
round trip time measurements using ICMP.
Quality of Service Management
RTP Audio provides QoS requirements to the QoS manager of
Simon Vey and the reservation module of
.
The QoS manager returns bandwidth and traffic classes
for the stream's layers.