On Sun, 15 Dec 2002, Ragnar Kj�rstad wrote:

> On Sat, Dec 14, 2002 at 02:34:06PM -0800, Richard Sharpe wrote:
> > If those are your choices, then I would rank them:
> > 
> >   NetApp F870, Linux with ReiserFS and Samba, Win2K
> > 
> > John Terpstra has done some testing with a modified cifs_bm which confirms 
> > that Linux with EXT2/3 or ReiserFS outperforms Win2K on the same hardware.
> > 
> > However, my testing of the NetApp suggests it will outperform the other 
> > two choices.
> 
> What kind of benchmarks, and what were the results?

I was using cifs_bm, in both cases. We presented results at CIFS2002, and 
you can find the papers on the web. Also look for John Terpstra's paper at 
Sambaxp in Germany in April 2002. We tested a bunch of things, but we did 
not focus on comparative performance. cifs_bm is based around the 
NetBench-like tests from smbtorture. 

There is a CIFS benchmarking effort going on as part of SNIA, as well. We 
are working on something like SPECsfs for CIFS.
 
> > If you choose to use Samba, you will want to make sure that the sendfile 
> > stuff is implemented. Unfortunately, the directory indexing in Reiser does 
> > not help that much a lot of the time because Samba is forced to do 
> > directory scans because it has to implement case-independent 
> > lookups/searches.
> 
> Isn't that an configuration-option?

Well, yes it is, but if you want to be more like a Windows server, then 
you need to do it correctly.

> As a sidenote, I think it wouldn't be too hard to make reiserfs
> optionally case-insensitive, but still able to use indexes. Perhaps it
> would even be possible to have two virtual directories pr traditional
> directory? one that has a regular index and one that has a
> case-insensitive index. Of course this is not relevant for the
> right-here right-now choice of fileservers, but....

The namecache is system-wide. So, you will have to do it in the name cache 
code. One of the guys who worked for Quantum seems to have done some mods 
for XFS for that, and they added a lookup entry in the dcache ops table, 
it seems. This would allow a loadable file system to hook that entry and 
provide case independent lookups. There are some curly problems with 
negative entries. You would also want to make it a process settable 
feature, esp if you run NFS as well (guess who wants to do that :-)

Finally, if your goal is semantic equivalence with Windows, you will want 
two indexes in ReiserFS or EXT2/3 with the dirindex stuff anyway, since 
Windows actually has two name spaces (long names and 8.3 names) and you 
have to search both name spaces for at least some operations, and to 
ensure that you do the correct thing in the presence of names that differ 
only by the case of some characters, you must create 8.3 names on file 
creation (which is pretty much what NetApp do).

Regards
-----
Richard Sharpe, rsharpe[at]ns.aus.com, rsharpe[at]samba.org, 
sharpe[at]ethereal.com, http://www.richardsharpe.com

Reply via email to