Ethernet gadget

A linux device can be configured to act as a "USB Gadget".

This is a USB slave device which can communicate with a properly configured USB host. Devices like PDAs, etc can do this, and this is how Gumstix is configured by default. It uses the linux CDC ethernet gadget device to encapsulate ethernet frames inside USB frames, thereby simulating an ethernet device at the operating system level. You can then easily layer TCP/IP on top of the device to achieve transfer rates of ~1MB/s.

There's also a tutorial to get the USB connection working.

To be continued...