Network pipes

Diomidis Spinellis dds at aueb.gr
Fri Jul 25 03:30:31 PDT 2003


Kirk Strauser wrote:
>     # ssh -f remotehost "nc -l -p 54321 | dd of=/dev/st0 bs=32k"
>     # tar cvf - / | nc remotehost 54321
> 
> Netcat implements a TCP/UDP transports and basically nothing else.  Isn't
> that what you're trying to achieve?

You still have the overhead of two nc instances copying data and context
switching.  The same is also the problem with the "ssh -c none"
approach.  My original proposal would setup a direct socket connection
from tar to dd.

I think I can package the proposed sh changes as a separate command,
following Luigi's suggestion.  The syntax will not include a pipe symbol
and layout, but the performance benefits will still be there.  It will
also be a lot more portable and also usable within any shell.

Many thanks to all for your feedback.

Diomidis - http://www.spinellis.gr




More information about the freebsd-hackers mailing list