mirror of
https://git.proxmox.com/git/mirror_corosync
synced 2025-08-06 08:19:12 +00:00

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com> Reviewed-by: Steven Dake <sdake@redhat.com>
124 lines
5.0 KiB
Plaintext
124 lines
5.0 KiB
Plaintext
--------------------------------------------------------
|
|
The Corosync Cluster Engine Topic Branches and Backlog
|
|
--------------------------------------------------------
|
|
|
|
----------------------------
|
|
Last Updated: January 2012
|
|
----------------------------
|
|
|
|
--------------------------------------
|
|
Current priority list for Needle 2.0
|
|
--------------------------------------
|
|
1. quorum improvements
|
|
2. allow a cluster name to autogenerate a mcastaddr
|
|
|
|
--------------------------------------
|
|
Current priority list for Needle 2.1
|
|
--------------------------------------
|
|
1. implement topic-onecrypt
|
|
2. implement add/remove nodes from udpu
|
|
3. logsys glue layer removal
|
|
4. implement topic-zerocopy
|
|
5. implement topic-rdmaud
|
|
6. harden and finish ykd algorithm
|
|
7. implement topic-xmlschema
|
|
|
|
We use topic branches in our git repository to develop new disruptive features
|
|
that define our future roadmap. This file describes the topic branches
|
|
the developers have interest in investigating further.
|
|
|
|
targets can be: whitetank, needle2.0, needle3.0, or future (3.0+).
|
|
Finished can be: percentage or date merged to master. Once in a shipped
|
|
version, please remove from the topic list.
|
|
|
|
------------------------------------------------------------------------------
|
|
topic-quorum
|
|
------------------------------------------------------------------------------
|
|
Main Developer: Fabio "the coding monkey" Di Nitto
|
|
Started: yes
|
|
Finished: 90%
|
|
target: needle2.0
|
|
This topic is about bringing votequorum/quorum up to speed and feature complete.
|
|
Current status:
|
|
- features are implemented, most of debugging done
|
|
- need to do:
|
|
* document new votequorum options once we are sure their behavior won't change
|
|
* configuration bits in corosync.conf for quorum related business
|
|
|
|
------------------------------------------------------------------------------
|
|
topic-xmlschema
|
|
------------------------------------------------------------------------------
|
|
Main Developer: Honza Friesse
|
|
Started: not started
|
|
Finished: 0%
|
|
target: needle2.1
|
|
XML configuration for corosync exists, but imput file is not checked against
|
|
XML schema. This topic is about implementing preferably RelaxNG schema of
|
|
corosync configuration.
|
|
|
|
------------------------------------------------------------------------------
|
|
topic-onecrypt
|
|
------------------------------------------------------------------------------
|
|
Main Developer: Honza Friesse
|
|
Started: not started
|
|
Finished: 0%
|
|
target: needle2.1
|
|
Description:
|
|
Currently encryption code is located in totemudp.c, totemudpu.c, and iba has
|
|
no encryption support. This topic merges the encryption code into a new
|
|
file such as totemcrp.c and provides a mechanism for totemnet.c to register
|
|
encrypt and decrypt functions with totem[udp|iba|udpu] and use them as
|
|
requested by the configuration.
|
|
|
|
------------------------------------------------------------------------------
|
|
topic-netmalloc
|
|
------------------------------------------------------------------------------
|
|
Main Developer: Honza Friesse
|
|
Started: not started
|
|
Finished: 0%
|
|
target: needle2.1
|
|
Description:
|
|
The totemiba.c driver must allocate memory and assign it to a protection domain
|
|
in order for an infiniband driver to transmit memory. In the current
|
|
implementation, totemsrp.c also allocates these same frames. This results in
|
|
an extra memcpy when transmitting with libibverbs technology. Memory copies
|
|
are to be avoided. The simple solution is to have each network driver provide
|
|
a memory allocation function. When totemsrp wants a free frame, it requests
|
|
it from the network driver.
|
|
|
|
------------------------------------------------------------------------------
|
|
topic-rdmaud
|
|
------------------------------------------------------------------------------
|
|
Main Developer: Honza Friesse Steven Dake
|
|
Started: not started
|
|
Finished: 0%
|
|
target: needle2.1
|
|
Description:
|
|
Currently our RDMA code uses librdmacm to setup connections. We are not
|
|
certain this extra library is needed, and may be able to use only ibverbs. If
|
|
this is possible, the totem code may be more reliable, especially around
|
|
failure conditions.
|
|
|
|
------------------------------------------------------------------------------
|
|
topic-zerocopy
|
|
------------------------------------------------------------------------------
|
|
Main Developer: Honza Friesse
|
|
Started: not started
|
|
Finished: 0%
|
|
target: needle2.1
|
|
Description:
|
|
Totem has many copies involved in messaging which we would like to investigate
|
|
removing. Our goal is to deliver wire speed performance for rdma networks,
|
|
and if this can be achieved by our other topic investigations, we may not
|
|
further investigate this topic. The basic idea of the topic is to handle
|
|
message assembly/fragmentation in libcpg, and have totem be responsible for
|
|
sending these pages that are shared via posix shared memory.
|
|
|
|
------------------------------------------------------------------------------
|
|
other topics not yet defined:
|
|
* disallow binding to localhost interfae in redundant ring configuation.
|
|
* doxygenize include and lib directories.
|
|
* sort out binding to localhost in general
|
|
* totem multiring
|
|
* load balancing over different speed links in RRP
|