- read data from network
- process that data into instructions
- do the instructions say to read data? If so, lseek to the right place on disk, read data into a buffer, copy a reply (header) plus the data into another buffer, and send that whole buffer back to the client.
- do the instructions say to write data? If so, read more data from the network into a buffer, lseek to the right place on disk, and write it. Construct a reply and send that back.
- Other instructions processed here....
Monday, December 8, 2008
NBD performance enhancements
As I blogged about earlier, I've been making use of NBD lately as my block-device-over-network exporter of choice (previously AoE). I got pretty reasonable performance out of NBD, easily in the 10s of MB/s - basically the limit of my iffy network hardware, however I wanted to know if there was more to be found. And there is! nbd-server, for one, uses the following basic paradigm:
Posted by Jon at 6:18 PM