TODO 4.4 KB

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