[BC] introduction and RE: multiple ISDN's

Johannes G. Rietschel jr
Mon Dec 4 17:03:23 CST 2006


Hello, 

my name is Johannes Rietschel, I am CEO of Barix, and thanks to Jim Peck's 
pointer I subscribed to this list.
I will be happy to answer questions regarding IP in general and specific 
techniques or protocols in particular.
I have done IP based "streaming" implementations since about 20 years now 
(sold my first company doing serial-
to-ethernet to Lantronix and served as their CTO a couple of years ago, if 
you have a Lantronix device it's a high
chance Johannes' designed technology is in there).
So - enough of the personal and introductory stuff - this is "onetime" 
only. I would like to explain a bit further about UDP/TCP,RTP, BRTP etc:

Most internet radio stations and many STL applications use TCP - the 
"reliable" part of the IP protocol suite, for streaming.
This makes sense where receivers can buffer - you need to buffer because 
eventually lost data needs to be retransmitted.
Typical shoutcast/icecast servers (software solutions running on a variety 
of operating systems, free) use TCP/IP to receive a stream
from a source (such as the Barix Instreamer, $395 device, or a software 
solution such as the winamp plugin). The server then
buffers and "replicates" the stream to a large number of "listeners" - 
these can be hardware devices (like the Barix Exstreamer, 
$195) or PC's with a media player software (winamp, windows media player 
etc).
Service providers like streamguys (www.streamguys.com) offer such servers 
"for rent" very cheap, they charge typically per stream
per month and operate the server. A big advantage is that for a typical 
"STL" or one-to-many link, no static IP address is required on
either side - you can stream from the studio directly to the service and 
the listeners can "pull" the stream from the service.
Disadvantage is the relatively high latency (typically more than 10 
seconds) due to server buffering AND player buffering.

A direct link can be much faster - but with TCP ("reliable" transmission) 
there will be still some latency - it is necessary that the receiver 
buffers, 
otherwise the retransmission function cannot work.

RTP - in contrast, is a "UDP" (nonreliable packet delivery) protocol. Each 
block sent by the server either makes it to the destination or is lost.
Only UDP based protocols can be "multicast/broadcast" (addressed to 
many/all devices) on a network. And as Tom Hartnett already pointed out, 
the public internet typically does not support multicast. Local networks 
and VPN's however often do.
Barix products are, for example, used by Clear Channel to do exactly that 
- take an audio feed, convert it to IP/Multicast, then distribute to a 
large
number of sites (equipped with the Exstreamer) via a satellite based IP 
network. For satellite applications, IP/Multicast or broadcast is ideal, 
because
every receiver gets the same signal. One feed then can address a very 
large number of devices/sites/receivers.
Disadvantage is that if a block is lost, the receiver has to deal with 
this fact (and typically cannot ask for retransmission), different vendors 
have different
tricks/schemes on how to react on block loss.

RTP packets can of course also be sent to a particular IP address. For 
example, if you have 5 destinations you want the stream to go to, you can 
enter
multiple destinations into the encoder (this works on Barix as well as on 
Comrex). But, again, as Tom pointed out, this means n times uplink 
capacity need.

You can get around this problem (as you can with TCP/IP) by using a 
rebroadcasting service provider or a "hosting" center where you put a 
rebroadcasting
server. Barix offers a control device which can duplicate a stream from 
one source to up to 100 destinations (at 64kbps), it's inexpensive ($295) 
and non-PC 
based. The device rebroadcasts standard RTP with less than 20ms (!) 
latency. Streamguys is currently testing a software implementation and 
likely will offer
RTP rebroadcasting with Barix for low-latency applications - because that 
is a big benefit of an RTP based implementation - it is - compared to 
TCP/IP - very
low latency because no buffering for retransmissions is needed.

RTP has still one disadvantage. It is a "push" protocol. Which means that 
targets need to be "well known" (public IP address) and with typical NAT 
servers, routers
etc, "forwarding" configuration is needed so the router knows to which 
device on the local network to send the feed.
BRTP (B stands for Barix) overcomes this problem/limitation. This protocol 
is plain RTP with a simple extension. The stream is "pulled" from a 
server, which solves
the "pass-through" issue on most NAT/firewalls and also allows the 
destinations to be on dynamic IP addresses.
With BRTP you have the advantage of low latency, and all the advantages of 
the "shoutcast/icecast" solution - no need for a static IP address on 
either sender or
receiver sites. Of course supported by the streamguys hosted replicator ;)


I hope this was not a too long post and can help to shed some light on 
these things. Please forgive if too verbous - if so, let me know and I 
will be quiet or terse in the future. If too commercial, please let me 
know too - I am new to the list here. I hope my presence is welcome.

Greetings !

Johannes Rietschel
CEO, Barix AG






More information about the Broadcast mailing list