[streaming] streaming over tcp vs udp

Warren Young warren at etr-usa.com
Sat Sep 22 01:22:06 CEST 2007


Brandon Dohman wrote:
> is there another way i can do this so that the stream will be sent over 
> tcp.  

If you must have multicast, then, the answer is "no".  Multicast 
absolutely requires UDP.

If it's okay to unicast, then the best option would probably be HTTP. 
That will fix more firewall problems than any other TCP-based protocol.

HTTP is not "streaming" per se, in that a 300 kbit/s video will not go 
out at a constant 300 kbit/s.  It will either go out faster than real 
time, or slower than real time, depending on connection speeds.  The 
client copes either way.

This behavior can be advantageous.  This is how podcasting work, for 
example, and people like it.

On the other hand, perhaps you have a very popular real-time video 
service with new "shows" being available at a fixed time to all users. 
Such a service will get slammed for a time after the release of each 
show, so that peak bandwidth usage becomes a resource problem.  This 
sort of thing can cause you to have to overpay for hosting services 
because you need a certain amount of bandwidth to deal with the peaks 
even though you don't use most of it most of the time.  In that case, 
true streaming lets you throttle all users to only the bandwidth they 
actually need at a given moment in time.  It doesn't prevent you from 
getting slammed, it just means you're not paying for any more bandwidth 
than you really must have.



More information about the streaming mailing list