diff --git a/helper/ndn-scenario-helper.cpp b/helper/ndn-scenario-helper.cpp
index 1d441d6..0c661da 100644
--- a/helper/ndn-scenario-helper.cpp
+++ b/helper/ndn-scenario-helper.cpp
@@ -62,6 +62,30 @@
 }
 
 void
+ScenarioHelper::disableRibManager()
+{
+  ndnHelper.disableRibManager();
+}
+
+void
+ScenarioHelper::disableFaceManager()
+{
+  ndnHelper.disableFaceManager();
+}
+
+void
+ScenarioHelper::disableStrategyChoiceManager()
+{
+  ndnHelper.disableStrategyChoiceManager();
+}
+
+void
+ScenarioHelper::disableStatusServer()
+{
+  ndnHelper.disableStatusServer();
+}
+
+void
 ScenarioHelper::addRoutes(std::initializer_list<ScenarioHelper::RouteInfo> routes)
 {
   for (auto&& route : routes) {
