From: Evgeniy Polyakov <zbr@ioremap.net>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
linux-fsdevel@vger.kernel.org, Evgeniy Polyakov <zbr@ioremap.net>
Subject: [resend take 3 0/4] Distributed storage.
Date: Tue, 25 Nov 2008 17:37:46 +0300 [thread overview]
Message-ID: <12276238703113-git-send-email-zbr@ioremap.net> (raw)
Hello.
Distributed storage is a feature-rich network block device.
Supported features:
* Kernel-side client and server. No need for any special tools for data processing
(like special userspace applications) except for configuration.
* Bullet-proof memory allocations via memory pools for all temporary objects
(transaction and so on). All clients structures are allocated as single transaction
from the memory pool and except this there is no allocation overhead.
Network adds own though. Server uses memory pools too, but number of allocations is
higher (bio, transaction and pages for IO).
* Zero-copy sending (except header) if supported by device using sendpage().
* Failover recovery in case of broken link (reconnection if remote node is down).
* Full transaction support (resending of the failed transactions on timeout of after
reconnect to failed node).
* Dynamically resizeable pool of threads used for data receiving and crypto processing.
* Initial autoconfiguration. Ability to extend it with additional attributes if needed.
* Support for barriers and other block io request flags.
* Support for any kind of network media (not limited to tcp or inet protocols) higher
MAC layer (socket layer). Out of the box kernel-side IPv6 support (needs to extend
configuration utility, check how it was done in POHMELFS).
* Security attributes for local export nodes (list of allowed to connect addresses
with permissions). Read-only connections.
* Ability to use any supported cryptographically strong checksums.
Ability to encrypt data channel.
* Keepalive messages to early detect failed nodes.
This release changes only in name, which reflects inclusion and feedback process.
One can grab sources (various configuration examples can be found in 'userspace' dir)
from archive, or via kernel and userspace GIT trees.
Consider for inclusion.
Thank you.
1. POHMELFS homepage.
http://www.ioremap.net/projects/pohmelfs
2. DST homepage.
http://www.ioremap.net/projects/dst
3. DST archive.
http://www.ioremap.net/archive/dst/
4. DST git trees.
http://www.ioremap.net/cgi-bin/gitweb.cgi
Signed-off-by: Evgeniy Polyakov <zbr@ioremap.net>
drivers/block/Kconfig | 2 +
drivers/block/Makefile | 2 +
drivers/block/dst/Kconfig | 14 +
drivers/block/dst/Makefile | 3 +
drivers/block/dst/crypto.c | 731 +++++++++++++++++++++++++++++
drivers/block/dst/dcore.c | 972 +++++++++++++++++++++++++++++++++++++++
drivers/block/dst/export.c | 664 ++++++++++++++++++++++++++
drivers/block/dst/state.c | 839 +++++++++++++++++++++++++++++++++
drivers/block/dst/thread_pool.c | 345 ++++++++++++++
drivers/block/dst/trans.c | 335 ++++++++++++++
include/linux/connector.h | 4 +-
include/linux/dst.h | 587 +++++++++++++++++++++++
12 files changed, 4497 insertions(+), 1 deletions(-)
next reply other threads:[~2008-11-25 14:48 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-25 14:37 Evgeniy Polyakov [this message]
2008-11-25 14:37 ` [resend take 3 1/4] DST core files Evgeniy Polyakov
2008-11-25 14:37 ` [resend take 3 2/4] DST network files Evgeniy Polyakov
2008-11-25 14:37 ` [resend take 3 3/4] DST crypto thread pool Evgeniy Polyakov
2008-11-25 14:37 ` [resend take 3 4/4] DST Makefile/Kconfig files Evgeniy Polyakov
2008-11-25 23:47 ` [resend take 3 0/4] Distributed storage Frederik Deweerdt
2008-11-26 8:31 ` 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=12276238703113-git-send-email-zbr@ioremap.net \
--to=zbr@ioremap.net \
--cc=akpm@linux-foundation.org \
--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).