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

Re: [Nbd] NBD wishlist items?



On Tue, Jun 26, 2007 at 11:18:27AM -0400, Paul Clements wrote:
> Wouter Verhelst wrote:
> > A protocol extension that lets both the server and the client initiate
> > this keepalive probe would deal with both issues (provided we do not
> > somehow swap out nbd-client).
> 
> Do we need the server to do this keepalive stuff, though?

It becomes an issue if the server needs to maintain copy-on-write
tempfiles (which are cleaned up after close()) and clients write a lot.
Though, granted, that might not be a very good idea regardless.

> I mean, it's really the client that cares if the connection goes down.
> The server ought to be happy to just sit there -- if it's not getting
> any requests, it shouldn't matter.

If it's sitting on resources, however, that could end up being a
problem. And, really, it's silly to have a server sitting on resources
if the client doesn't need it anymore.

[...]
> >> There'd probably be an ioctl to enable this ping packet, so you could 
> >> just call the ioctl and ignore failure (for older kernels). Then there'd 
> >> be a new packet flag for this ping packet (or maybe just use a 
> >> zero-length read or write, assuming the nbd-server just ignores those 
> >> and returns a response). That way it would almost completely backward 
> >> compatible.
> > 
> > Sorry, I'm not sure I understand that bit. Could you elaborate?
> 
> I was just thinking out loud. Basically, an easy and backward compatible 
> way to do this (client-side) ping is to periodically send a zero-length 
> read or write, and as long as the server just ignores it (i.e., doesn't 
> crash or do something otherwise stupid) and sends a response, everything 
> will work and the protocol doesn't have to change.

Right.

-- 
<Lo-lan-do> Home is where you have to wash the dishes.
  -- #debian-devel, Freenode, 2004-09-22



Reply to: