5
It seems to me that most network "file sharing" protocols are one or more of old, slow, and insecure. The most used protocols seem to be SMB, NFS, and WebDAV.
I'm sitting here, looking at iTunes trying to scan a media library over SMB, and it's going at about 2 MB per second. It's hooked up through wired gigabit networking, and the share lives on a RAID array that can do 50x as much throughput, even when searching. This is ludicrous!
Some file sharing protocols from the past might include:
- Andrew File System
- 9P/Styx protocol from Plan9 / Inferno
- RFS from old System V
- AppleShare protocol
- Novell Netware protocol
My requirements are reasonably simple:
- Modern security -- ideally, uses public/private keys like SSH. Tunneling over TLS would be great.
- High performance -- scanning a file system or reading bulk data should run at the speed that the server and network can support.
- Native clients for Windows and Linux -- others would be gravy but not interesting to me.
- File locking compatible with Linux and Windows.
- Change notification compatible with Linux and Windows.
- Ideally, high quality open source implementations are available, but I'd be OK with a small license fee. (And, no, not enterprise-wide "small" -- I'm a regular guy with a family and a mortgage)
Am I missing something?
2Two things: (1) this isn't a programming question, and (2) you have competing requirements. Security is always at odds with performance. You want fast, use NFS. – Chris Eberle – 2011-12-18T22:51:29.373
Have you tried tuning the transport layer's performance first? (note: the text that looks like broken links [more][less] etc is not broken, they just don't know how to style links properly)
– None – 2011-12-18T23:37:08.483Does Kerberos count as "modern security"? If so, Samba with SMB2 enabled might work. – user1686 – 2011-12-19T15:48:26.013
1Given how much faster CPUs are than long-haul wires, security doesn't need to be opposed to performance. – Jon Watte – 2011-12-20T06:27:56.703