[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Nbd] [Qemu-devel] Transforming stdin and stdout pair into a socket



Paul Brook wrote:
    I've seen socat, and I could use it as you described. My only
objection to this solution is that there is an unneeded process in the
middle that just pipes data around...

   (Instead of socat, I think it would be more efficient to just write
a simple application that uses the "new" Linux syscall "splice" that
I've just found by mistake yesterday...)

In that case you need to fix socat to use splice() when available. I have a hard time believing socat adds measurable overhead, especially if you're already tunnelling over ssh.

splice() doesn't really buy you anything when copying from a socket to another socket. The data is going to get copied just like it would if you dropped to userspace. It's useful if you introduce pipe-to-pipe copies because they'll be eliminated but if you're going from socket -> pipe -> socket it'll be the same as using socat.

Regards,

Anthony Liguori
Paul




Reply to: