On Mon, Jul 28, 2008 at 03:39:10PM -0700, Garrett D'Amore wrote:
> Nicolas Williams wrote:
> >On Mon, Jul 28, 2008 at 01:31:51PM -0700, Garrett D'Amore wrote:
> >  
> >>I confess that I didn't realize we lacked client side caching in our 
> >>NFSv4.  I thought client side caching was one of the significant 
> >>benefits that NFSv4 brought to the table (mainly to compete with the 
> >>likes of AFS and DFS).
> >>    
> >
> >Let's be precise.  The NFSv4 client caches plenty, just not on long-term
> >local storage (which is what cachefs was for).
> >  
> How much data is cached  by NFSv4?   With cachefs you could set up 
> fairly large (100's or 1000's of MB) local cache, so for data that 
> didn't change often you almost never had to go to the network for 
> anything (other than a stat()-like check.)

NFSv4's cache is limited by RAM.  It goes away on reboot.

> >It's a small gap.
> >
> >I think where it really matters one might use ZFS with iSCSI vdevs and a
> >local L2ARC device.
> 
> An interesting idea.   I am not too familiar with iSCSI, but don't you 
> need an iSCSI target?  I'm not sure, is iSCSI seeing deployment outside 
> of the data center?  (NFS is designed to support concurrent network use 
> and reasonably handles multiple "intiators".  How does iSCSI deal with 
> such a situation?)

Right.  If the filesystems in question are read-only I think you can
share a target as read-only to many initiators.

> It would be nice to see a commitment to closing any remaining gap as 
> much as possible, perhaps by further development of NFSv4 -- as others 
> have suggested.
> 
> As a final note, I do recall that cachefs was supposed to be generic for 
> things like cdroms, etc.  I do agree with the proposal that cachefs like 
> behavior for anything *other than NFS* is probably not terribly interesting.

I don't.  cachefs like behaviour could be useful for CIFS as well (and
some day WebDAV too, why not, and maybe the AFS community would use the
infrastructure if available).

The problem with cachefs is that it needs to be a service provided to
filesystems that filesystems must use explicitly.

Nico
-- 

Reply via email to