Project

General

Profile

Task #4922

Updated by Davide Pesavento over 5 years ago

The current NFD's source code layout is the product of historical design choices that were made at the beginning of the project. While many of those choices still apply to the codebase, a few others have been superseded and are no longer relevant today. Some notable examples of major design changes that rendered (or will render) the current source code layout partially obsolete are #2489, #4683, and #4528. 

 This task proposes the following reorganizations. 

 * Move `rib/` to `daemon/rib/` (already done in commit 1b077f6028543f4304d1e5afe383823d79305ce1) 
 * Move `RibManager` to `daemon/mgmt/` (already done in commit 8a05c7fd2a00e7c8b53d5c57ccb3c53a756b4997) 
 * Move `core/` files that are only used by the `nfd` binary to `daemon/common/` or any other appropriate subdir of `daemon/` 
   * `RttEstimator` can be left alone since it will be superseded by ndn-cxx's estimator and removed soon in #4887 

 The split between `unit-tests-daemon` and `unit-tests-rib` also doesn't make much sense anymore. I see two possible approaches here: (a) merge `unit-tests-rib` into `unit-tests-daemon`, or (b) further split `unit-tests-daemon` into `-face`, `-table`, `-mgmt`, etc.

Back