[asterisk-dev] RTP Bridging optimization

Kevin P. Fleming kpfleming at digium.com
Mon May 14 12:31:19 MST 2007


Vadim Lebedev wrote:

> The trick is that the pipe is ALWAYS empty.... And when we push
> something to the pipe, we pull the data from it immideately afterwards.

So you've replaced a pair of read()/write() calls with two calls to
splice()? It's the same number of userspace/kernelspace boundary
crossings, I can't see how this would be any significant improvement at all.

The whole point of splice() and tee() are to allow *streams* of data to
be copied without having to bring the data from kernelspace to
userspace; doing it one packet at a time will probably defeat the
purpose of using them entirely.


More information about the asterisk-dev mailing list