DVB Streaming Question

Florian Lohoff flo at rfc822.org
Tue Mar 3 12:02:40 CET 2009


On Mon, Mar 02, 2009 at 11:26:24PM +0100, Ondřej Caletka wrote:
> Frederik Kriewitz napsal(a):
> > On Mon, Mar 2, 2009 at 5:14 PM, Ondřej Caletka <O.Caletka at sh.cvut.cz> wrote:
> >   
> >> You can try rtp2httpd, simple program of mine for just this purpose.
> >> http://shell.sh.cvut.cz/~oskar/blog/index.php?entry=entry090107-213013
> >>     
> >
> > Thank you. Too late for me now, I already hacked something together myself.
> >
> > I took a quick look at I and noticed that you're forking a new process
> > for each connection.
> > Did you ever test it with a lot of clients?
> >   
> No, I did not test more than cca. 6 clients. In my setup, the limiting 
> factor is Fast Ethernet :), CPU usage is very low.

Typically all threaded/forked models fall apart because the working set
gets bigger than the caches. Just think about 600 stacks, buffers, fd
tables etc

So a single threaded (per cpu), non blocking, event driven approach most of the
time scales much better. 

My guess is that with getstream on a half way modern cpu the TS packet
never actually gets read twice from memory - It gets received by DMA
from the DVB card, gets copied to the userspace buffer which also puts
it into the cache. And before it gets evicted from the cache the TS
packet will be written to the kernel buffers which will on any decent
hardware be sent by DMA to the networking card.

Flo
-- 
Florian Lohoff                  flo at rfc822.org             +49-171-2280134
	Those who would give up a little freedom to get a little 
          security shall soon have neither - Benjamin Franklin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://gt.owl.de/pipermail/getstream/attachments/20090303/012741cd/attachment.pgp 


More information about the Getstream mailing list