TODO 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. --------------------------------------------------------
  2. The Corosync Cluster Engine Topic Branches and Backlog
  3. --------------------------------------------------------
  4. ----------------------------
  5. Last Updated: January 2012
  6. ----------------------------
  7. --------------------------------------
  8. Current priority list for Needle 2.0
  9. --------------------------------------
  10. 1. quorum improvements
  11. 2. allow a cluster name to autogenerate a mcastaddr
  12. --------------------------------------
  13. Current priority list for Needle 2.1
  14. --------------------------------------
  15. 1. implement topic-onecrypt
  16. 2. implement add/remove nodes from udpu
  17. 3. logsys glue layer removal
  18. 4. implement topic-zerocopy
  19. 5. implement topic-rdmaud
  20. 6. harden and finish ykd algorithm
  21. 7. implement topic-xmlschema
  22. We use topic branches in our git repository to develop new disruptive features
  23. that define our future roadmap. This file describes the topic branches
  24. the developers have interest in investigating further.
  25. targets can be: whitetank, needle2.0, needle3.0, or future (3.0+).
  26. Finished can be: percentage or date merged to master. Once in a shipped
  27. version, please remove from the topic list.
  28. ------------------------------------------------------------------------------
  29. topic-quorum
  30. ------------------------------------------------------------------------------
  31. Main Developer: Fabio "the coding monkey" Di Nitto
  32. Started: yes
  33. Finished: 75%
  34. target: needle2.0
  35. This topic is about bringing votequorum/quorum up to speed and feature complete.
  36. Current status:
  37. - features are implemented, most of debugging done
  38. - need to do:
  39. * man pages
  40. * documentation
  41. * votequorum lib/core cleanup
  42. * configuration bits in corosync.conf for quorum related business
  43. * improve corosync-quorumtool to show more details in some cases
  44. (config flags/votequorum info in monitoring at least)
  45. ------------------------------------------------------------------------------
  46. topic-xmlschema
  47. ------------------------------------------------------------------------------
  48. Main Developer: Honza Friesse
  49. Started: not started
  50. Finished: 0%
  51. target: needle2.1
  52. XML configuration for corosync exists, but imput file is not checked against
  53. XML schema. This topic is about implementing preferably RelaxNG schema of
  54. corosync configuration.
  55. ------------------------------------------------------------------------------
  56. topic-onecrypt
  57. ------------------------------------------------------------------------------
  58. Main Developer: Honza Friesse
  59. Started: not started
  60. Finished: 0%
  61. target: needle2.1
  62. Description:
  63. Currently encryption code is located in totemudp.c, totemudpu.c, and iba has
  64. no encryption support. This topic merges the encryption code into a new
  65. file such as totemcrp.c and provides a mechanism for totemnet.c to register
  66. encrypt and decrypt functions with totem[udp|iba|udpu] and use them as
  67. requested by the configuration.
  68. ------------------------------------------------------------------------------
  69. topic-netmalloc
  70. ------------------------------------------------------------------------------
  71. Main Developer: Honza Friesse
  72. Started: not started
  73. Finished: 0%
  74. target: needle2.1
  75. Description:
  76. The totemiba.c driver must allocate memory and assign it to a protection domain
  77. in order for an infiniband driver to transmit memory. In the current
  78. implementation, totemsrp.c also allocates these same frames. This results in
  79. an extra memcpy when transmitting with libibverbs technology. Memory copies
  80. are to be avoided. The simple solution is to have each network driver provide
  81. a memory allocation function. When totemsrp wants a free frame, it requests
  82. it from the network driver.
  83. ------------------------------------------------------------------------------
  84. topic-rdmaud
  85. ------------------------------------------------------------------------------
  86. Main Developer: Honza Friesse Steven Dake
  87. Started: not started
  88. Finished: 0%
  89. target: needle2.1
  90. Description:
  91. Currently our RDMA code uses librdmacm to setup connections. We are not
  92. certain this extra library is needed, and may be able to use only ibverbs. If
  93. this is possible, the totem code may be more reliable, especially around
  94. failure conditions.
  95. ------------------------------------------------------------------------------
  96. topic-zerocopy
  97. ------------------------------------------------------------------------------
  98. Main Developer: Honza Friesse
  99. Started: not started
  100. Finished: 0%
  101. target: needle2.1
  102. Description:
  103. Totem has many copies involved in messaging which we would like to investigate
  104. removing. Our goal is to deliver wire speed performance for rdma networks,
  105. and if this can be achieved by our other topic investigations, we may not
  106. further investigate this topic. The basic idea of the topic is to handle
  107. message assembly/fragmentation in libcpg, and have totem be responsible for
  108. sending these pages that are shared via posix shared memory.
  109. ------------------------------------------------------------------------------
  110. other topics not yet defined:
  111. * disallow binding to localhost interfae in redundant ring configuation.
  112. * doxygenize include and lib directories.
  113. * sort out binding to localhost in general
  114. * totem multiring
  115. * load balancing over different speed links in RRP