[FiST] Re: Overlayfs for FiST?

Erez Zadok ezk at cs.sunysb.edu
Fri Apr 25 13:12:30 PDT 2003


In message <20030424033353.GA4596 at afields.ca>, Allan Fields writes:
> Hi,
> 
> In my opinion...	(O.K. I'll take a dive into this.)
> 
> This all sounds a lot like (Free)BSD's unionfs.  I have tried using
> unionfs for various tasks, including some related to security.  It

Functionally, yes.  But IMHO, the fbsd unionfs made the mistake of using a
single stack design for the union.  It doesn't scale well, and it gives you
a limited ability to control the unioning-related algorithms: you have an
implied linear search list.

I think that a true fan-out stacking template will be a lot more flexible: a
file system ->method() would be able to _directly_ access any of the nodes
immediately below it, in any order.  Once such an infrastructure is in
place, you find that the various file systems that can be created are
permutations on a number of policies that one might decide on:

- if on error at branch N you move to search branch N+1, you got yourself a
  failover file system.

- if upon lookup you select one of N branches by a given algorithm (say,
  random) you get a load-balancing file system.

- if upon file-system-modifying operations you schedule the event to proceed
  onto all N branches, you have a replication file system.

- if, to process certain file system methods (esp. readdir), you invoke it
  on all N branches, you get a unioning file system.

The beauty of this is that I believe the fan-out template infrastructure can
remain pretty fixed (modulo getting it to work in the first place :-) And
the types of file systems will be determined by (implementation) policy
decisions, not necessarily hard-coded into the fan-out template.

Erez.


More information about the freebsd-fs mailing list