From: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
To: linux-kernel@vger.kernel.org
Cc: netdev@vger.kernel.org, linux-fsdevel@vger.kernel.org
Subject: [0/3] POHMELFS high performance network filesystem. First steps in parallel processing.
Date: Mon, 7 Jul 2008 22:07:36 +0400 [thread overview]
Message-ID: <20080707180736.GA15687@2ka.mipt.ru> (raw)
Hi.
I'm pleased to announce POHMEL high performance network parallel distributed filesystem.
POHMELFS stands for Parallel Optimized Host Message Exchange Layered File System.
Development status can be tracked in filesystem section [1].
This is a high performance network filesystem with local coherent cache of data
and metadata. Its main goal is distributed parallel processing of data.
System supports strong transaction model with failover recovery, allows to
encrypt/hash whole data channel and perform read load balancing and
write to multiple servers in parallel.
This release brings following features:
* Strong crypto support. One can specify encryption method (like
cbc(aes), hash or digest, or all of them to be performed on
whole data channel (except headers). If special mount option is
specified, then mount will file if server does not support
requested by client crypto options. By defalt that crypto
options will be skipped.
* Bug fixes.
Very likely it is one of the last non-bug-fixing release of the kernel
client side, next release will incorporate features, needed for distributed
parallel data processing (like ability to add new servers via network
command from another servers), so most of the work will be devoted to server
code.
Basic POHMELFS features:
* Local coherent (notes [2]) cache for data and metadata).
* Completely async processing of all events (hard and symlinks are the only
exceptions) including object creation and data reading/writing.
* Flexible object architecture optimized for network processing. Ability to
create long pathes to object and remove arbitrary huge directoris in
single network command.
* High performance is one of the main design goals.
* Very fast and scalable multithreaded userspace server. Being in userspace
it works with any underlying filesystem and still is much faster than
async ni-kernel NFS one.
* Client is able to switch between different servers (if one goes down,
client automatically reconnects to second and so on).
* Transactions support. Full failover for all operations. Resending
transactions to different servers on timeout or error.
* Strong encryption and/or hashing of the data channel with
autoconfiguration of the server/client supported crypto algorithms.
Roadmap includes:
* Server redundancy extensions (ability to store data in multiple locations
according to regexp rules, like '*.txt' in /root1 and '*.jpg' in /root1
and /root2.
* Async writing of the data from receiving kernel thread into userspace
pages via copy_to_user() (check development tracking blog for results).
* Client dynamical server reconfiguration: ability to add/remove servers
from working set by server command (as part of development distributed
server facilities).
* Generic parallel distributed server algorithms.
One can grab sources from archive or git [2] or check homepage [3].
Thank you.
1. POHMELFS development status.
http://tservice.net.ru/~s0mbre/blog/devel/fs/index.html
2. Source archive.
http://tservice.net.ru/~s0mbre/archive/pohmelfs/
Git tree.
http://tservice.net.ru/~s0mbre/archive/pohmelfs/pohmelfs.git/
3. POHMELFS homepage.
http://tservice.net.ru/~s0mbre/old/?section=projects&item=pohmelfs
4. POHMELFS vs NFS benchmark [iozone results are coming].
Plain async NFS vs sha1+cbc(aes) POHMELFS
http://tservice.net.ru/~s0mbre/blog/devel/fs/2008_07_07.html
Plain filesystems.
http://tservice.net.ru/~s0mbre/blog/devel/fs/2008_06_25.html
5. Cache-coherency notes.
http://tservice.net.ru/~s0mbre/blog/devel/fs/2008_05_17.html
Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
--
Evgeniy Polyakov
next reply other threads:[~2008-07-07 18:07 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-07 18:07 Evgeniy Polyakov [this message]
2008-07-07 18:08 ` [1/3] POHMELFS: VFS trivial change Evgeniy Polyakov
2008-07-07 18:10 ` [2/3] POHMELFS: Documentation Evgeniy Polyakov
2008-07-12 7:01 ` Pavel Machek
2008-07-12 7:26 ` Evgeniy Polyakov
2008-07-07 18:11 ` [3/3] POHMELFS: core files Evgeniy Polyakov
2008-07-07 18:15 ` [0/3] POHMELFS high performance network filesystem. Strong crypto support Evgeniy Polyakov
-- strict thread matches above, loose matches on Subject: below --
2008-06-13 16:37 [0/3] POHMELFS high performance network filesystem. First steps in parallel processing Evgeniy Polyakov
2008-06-14 9:52 ` Jeff Garzik
2008-06-14 10:10 ` Evgeniy Polyakov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080707180736.GA15687@2ka.mipt.ru \
--to=johnpol@2ka.mipt.ru \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).