build: Fixing of includes
diff --git a/apps/ndn-app.cpp b/apps/ndn-app.cpp
index 4a32734..1c62745 100644
--- a/apps/ndn-app.cpp
+++ b/apps/ndn-app.cpp
@@ -18,17 +18,17 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-app.h"
+#include "ndn-app.hpp"
 #include "ns3/log.h"
 #include "ns3/assert.h"
 #include "ns3/packet.h"
 
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
-#include "ns3/ndn-l3-protocol.h"
-#include "ns3/ndn-fib.h"
-#include "ns3/ndn-app-face.h"
-#include "ns3/ndn-forwarding-strategy.h"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
+#include "ns3/ndn-l3-protocol.hpp"
+#include "ns3/ndn-fib.hpp"
+#include "ns3/ndn-app-face.hpp"
+#include "ns3/ndn-forwarding-strategy.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.App");
 
diff --git a/apps/ndn-consumer-batches.cpp b/apps/ndn-consumer-batches.cpp
index 584c04f..db158c5 100644
--- a/apps/ndn-consumer-batches.cpp
+++ b/apps/ndn-consumer-batches.cpp
@@ -18,7 +18,7 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-consumer-batches.h"
+#include "ndn-consumer-batches.hpp"
 #include "ns3/ptr.h"
 #include "ns3/log.h"
 #include "ns3/simulator.h"
@@ -28,7 +28,7 @@
 #include "ns3/uinteger.h"
 #include "ns3/double.h"
 
-#include "../utils/batches.h"
+#include "../utils/batches.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.ConsumerBatches");
 
diff --git a/apps/ndn-consumer-batches.hpp b/apps/ndn-consumer-batches.hpp
index 2871bf2..979108e 100644
--- a/apps/ndn-consumer-batches.hpp
+++ b/apps/ndn-consumer-batches.hpp
@@ -21,9 +21,9 @@
 #ifndef NDN_CONSUMER_BATCHES_H
 #define NDN_CONSUMER_BATCHES_H
 
-#include "ndn-consumer.h"
+#include "ndn-consumer.hpp"
 #include "ns3/traced-value.h"
-#include "../utils/batches.h"
+#include "../utils/batches.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/apps/ndn-consumer-cbr.cpp b/apps/ndn-consumer-cbr.cpp
index b0b5137..90e46d5 100644
--- a/apps/ndn-consumer-cbr.cpp
+++ b/apps/ndn-consumer-cbr.cpp
@@ -18,7 +18,7 @@
  * Author: Ilya Moiseenko <iliamo@cs.ucla.edu>
  */
 
-#include "ndn-consumer-cbr.h"
+#include "ndn-consumer-cbr.hpp"
 #include "ns3/ptr.h"
 #include "ns3/log.h"
 #include "ns3/simulator.h"
@@ -30,9 +30,9 @@
 #include "ns3/integer.h"
 #include "ns3/double.h"
 
-#include "ns3/ndn-app-face.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
+#include "ns3/ndn-app-face.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.ConsumerCbr");
 
diff --git a/apps/ndn-consumer-cbr.hpp b/apps/ndn-consumer-cbr.hpp
index 0f875c8..ebe015f 100644
--- a/apps/ndn-consumer-cbr.hpp
+++ b/apps/ndn-consumer-cbr.hpp
@@ -22,7 +22,7 @@
 #ifndef NDN_CONSUMER_CBR_H
 #define NDN_CONSUMER_CBR_H
 
-#include "ndn-consumer.h"
+#include "ndn-consumer.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/apps/ndn-consumer-window.cpp b/apps/ndn-consumer-window.cpp
index 7de4784..a4a6ad5 100644
--- a/apps/ndn-consumer-window.cpp
+++ b/apps/ndn-consumer-window.cpp
@@ -18,7 +18,7 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-consumer-window.h"
+#include "ndn-consumer-window.hpp"
 #include "ns3/ptr.h"
 #include "ns3/log.h"
 #include "ns3/simulator.h"
@@ -27,8 +27,8 @@
 #include "ns3/string.h"
 #include "ns3/uinteger.h"
 #include "ns3/double.h"
-#include "ns3/ndn-data.h"
-#include "ns3/ndn-interest.h"
+#include "ns3/ndn-data.hpp"
+#include "ns3/ndn-interest.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.ConsumerWindow");
 
diff --git a/apps/ndn-consumer-window.hpp b/apps/ndn-consumer-window.hpp
index 79211e5..886621e 100644
--- a/apps/ndn-consumer-window.hpp
+++ b/apps/ndn-consumer-window.hpp
@@ -22,7 +22,7 @@
 #ifndef NDN_CONSUMER_WINDOW_H
 #define NDN_CONSUMER_WINDOW_H
 
-#include "ndn-consumer.h"
+#include "ndn-consumer.hpp"
 #include "ns3/traced-value.h"
 
 namespace ns3 {
diff --git a/apps/ndn-consumer-zipf-mandelbrot.cpp b/apps/ndn-consumer-zipf-mandelbrot.cpp
index ba5a828..a88befb 100644
--- a/apps/ndn-consumer-zipf-mandelbrot.cpp
+++ b/apps/ndn-consumer-zipf-mandelbrot.cpp
@@ -18,13 +18,13 @@
  * Author: Xiaoke Jiang <shock.jiang@gmail.com>
  */
 
-#include "ndn-consumer-zipf-mandelbrot.h"
+#include "ndn-consumer-zipf-mandelbrot.hpp"
 
-#include "ns3/ndn-app-face.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
+#include "ns3/ndn-app-face.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
 
-#include "ns3/ndnSIM/utils/ndn-fw-hop-count-tag.h"
+#include "ns3/ndnSIM/utils/ndn-fw-hop-count-tag.hpp"
 
 #include <math.h>
 
diff --git a/apps/ndn-consumer-zipf-mandelbrot.hpp b/apps/ndn-consumer-zipf-mandelbrot.hpp
index d9333b3..302427b 100644
--- a/apps/ndn-consumer-zipf-mandelbrot.hpp
+++ b/apps/ndn-consumer-zipf-mandelbrot.hpp
@@ -22,7 +22,7 @@
 #ifndef NDN_CONSUMER_ZIPF_MANDELBROT_H_
 #define NDN_CONSUMER_ZIPF_MANDELBROT_H_
 
-#include "ndn-consumer.h"
+#include "ndn-consumer.hpp"
 #include "ns3/ptr.h"
 #include "ns3/log.h"
 #include "ns3/simulator.h"
@@ -31,7 +31,7 @@
 #include "ns3/string.h"
 #include "ns3/uinteger.h"
 #include "ns3/double.h"
-#include "ndn-consumer-cbr.h"
+#include "ndn-consumer-cbr.hpp"
 #include "ns3/random-variable.h"
 
 namespace ns3 {
diff --git a/apps/ndn-consumer.cpp b/apps/ndn-consumer.cpp
index 188c531..e94f751 100644
--- a/apps/ndn-consumer.cpp
+++ b/apps/ndn-consumer.cpp
@@ -18,7 +18,7 @@
  * Author: Ilya Moiseenko <iliamo@cs.ucla.edu>
  */
 
-#include "ndn-consumer.h"
+#include "ndn-consumer.hpp"
 #include "ns3/ptr.h"
 #include "ns3/log.h"
 #include "ns3/simulator.h"
@@ -30,11 +30,11 @@
 #include "ns3/integer.h"
 #include "ns3/double.h"
 
-#include "ns3/ndn-app-face.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
-#include "ns3/ndnSIM/utils/ndn-fw-hop-count-tag.h"
-#include "ns3/ndnSIM/utils/ndn-rtt-mean-deviation.h"
+#include "ns3/ndn-app-face.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
+#include "ns3/ndnSIM/utils/ndn-fw-hop-count-tag.hpp"
+#include "ns3/ndnSIM/utils/ndn-rtt-mean-deviation.hpp"
 
 #include <boost/ref.hpp>
 
diff --git a/apps/ndn-consumer.hpp b/apps/ndn-consumer.hpp
index eea5fda..d0f82cc 100644
--- a/apps/ndn-consumer.hpp
+++ b/apps/ndn-consumer.hpp
@@ -22,12 +22,12 @@
 #ifndef NDN_CONSUMER_H
 #define NDN_CONSUMER_H
 
-#include "ndn-app.h"
+#include "ndn-app.hpp"
 #include "ns3/random-variable.h"
-#include "ns3/ndn-name.h"
+#include "ns3/ndn-name.hpp"
 #include "ns3/nstime.h"
 #include "ns3/data-rate.h"
-#include "ns3/ndn-rtt-estimator.h"
+#include "ns3/ndn-rtt-estimator.hpp"
 
 #include <set>
 #include <map>
diff --git a/apps/ndn-producer.cpp b/apps/ndn-producer.cpp
index cbe4a39..605b082 100644
--- a/apps/ndn-producer.cpp
+++ b/apps/ndn-producer.cpp
@@ -19,19 +19,19 @@
  *         Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-producer.h"
+#include "ndn-producer.hpp"
 #include "ns3/log.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
 #include "ns3/string.h"
 #include "ns3/uinteger.h"
 #include "ns3/packet.h"
 #include "ns3/simulator.h"
 
-#include "ns3/ndn-app-face.h"
-#include "ns3/ndn-fib.h"
+#include "ns3/ndn-app-face.hpp"
+#include "ns3/ndn-fib.hpp"
 
-#include "ns3/ndnSIM/utils/ndn-fw-hop-count-tag.h"
+#include "ns3/ndnSIM/utils/ndn-fw-hop-count-tag.hpp"
 
 #include <boost/ref.hpp>
 #include <boost/lambda/lambda.hpp>
diff --git a/apps/ndn-producer.hpp b/apps/ndn-producer.hpp
index d705a2a..7905b9b 100644
--- a/apps/ndn-producer.hpp
+++ b/apps/ndn-producer.hpp
@@ -22,11 +22,11 @@
 #ifndef NDN_PRODUCER_H
 #define NDN_PRODUCER_H
 
-#include "ndn-app.h"
+#include "ndn-app.hpp"
 
 #include "ns3/ptr.h"
-#include "ns3/ndn-name.h"
-#include "ns3/ndn-data.h"
+#include "ns3/ndn-name.hpp"
+#include "ns3/ndn-data.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/examples/custom-apps/custom-app.cpp b/examples/custom-apps/custom-app.cpp
index 68f65e2..71ca87e 100644
--- a/examples/custom-apps/custom-app.cpp
+++ b/examples/custom-apps/custom-app.cpp
@@ -26,11 +26,11 @@
 #include "ns3/simulator.h"
 #include "ns3/packet.h"
 
-#include "ns3/ndn-app-face.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
+#include "ns3/ndn-app-face.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
 
-#include "ns3/ndn-fib.h"
+#include "ns3/ndn-fib.hpp"
 #include "ns3/random-variable.h"
 
 NS_LOG_COMPONENT_DEFINE ("CustomApp");
diff --git a/examples/custom-apps/custom-app.hpp b/examples/custom-apps/custom-app.hpp
index d1f85f7..86f7bb4 100644
--- a/examples/custom-apps/custom-app.hpp
+++ b/examples/custom-apps/custom-app.hpp
@@ -23,7 +23,7 @@
 #ifndef CUSTOM_APP_H_
 #define CUSTOM_APP_H_
 
-#include "ns3/ndn-app.h"
+#include "ns3/ndn-app.hpp"
 
 namespace ns3 {
 
diff --git a/examples/custom-apps/dumb-requester.cpp b/examples/custom-apps/dumb-requester.cpp
index 0c4c9f4..eca1cf2 100644
--- a/examples/custom-apps/dumb-requester.cpp
+++ b/examples/custom-apps/dumb-requester.cpp
@@ -20,7 +20,7 @@
 
 // dumb-requester.cc
 
-#include "dumb-requester.h"
+#include "dumb-requester.hpp"
 #include "ns3/ptr.h"
 #include "ns3/log.h"
 #include "ns3/simulator.h"
@@ -28,9 +28,9 @@
 #include "ns3/random-variable.h"
 #include "ns3/string.h"
 
-#include "ns3/ndn-app-face.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
+#include "ns3/ndn-app-face.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("DumbRequester");
 
diff --git a/examples/custom-apps/dumb-requester.hpp b/examples/custom-apps/dumb-requester.hpp
index 7b728c7..7a1272d 100644
--- a/examples/custom-apps/dumb-requester.hpp
+++ b/examples/custom-apps/dumb-requester.hpp
@@ -23,8 +23,8 @@
 #ifndef DUMB_REQUESTER_H_
 #define DUMB_REQUESTER_H_
 
-#include "ns3/ndn-app.h"
-#include "ns3/ndn-name.h"
+#include "ns3/ndn-app.hpp"
+#include "ns3/ndn-name.hpp"
 
 namespace ns3 {
 
diff --git a/examples/custom-apps/hijacker.cpp b/examples/custom-apps/hijacker.cpp
index a908dd0..f1852d4 100644
--- a/examples/custom-apps/hijacker.cpp
+++ b/examples/custom-apps/hijacker.cpp
@@ -20,8 +20,8 @@
 
 // hijacker.cc
 
-#include "hijacker.h"
-#include "ns3/ndn-name.h"
+#include "hijacker.hpp"
+#include "ns3/ndn-name.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("Hijacker");
 
diff --git a/examples/ndn-simple-with-cs-lfu.cpp b/examples/ndn-simple-with-cs-lfu.cpp
index 0ed9079..4025763 100644
--- a/examples/ndn-simple-with-cs-lfu.cpp
+++ b/examples/ndn-simple-with-cs-lfu.cpp
@@ -24,7 +24,7 @@
 #include "ns3/ndnSIM-module.h"
 
 #include <sys/time.h>
-#include "ns3/ndnSIM/utils/mem-usage.h"
+#include "ns3/ndnSIM/utils/mem-usage.hpp"
 
 using namespace ns3;
 
diff --git a/examples/ndn-simple-with-link-failure.cpp b/examples/ndn-simple-with-link-failure.cpp
index 161e735..c96103d 100644
--- a/examples/ndn-simple-with-link-failure.cpp
+++ b/examples/ndn-simple-with-link-failure.cpp
@@ -25,7 +25,7 @@
 #include "ns3/ndnSIM-module.h"
 
 // for LinkStatusControl::FailLinks and LinkStatusControl::UpLinks
-#include "ns3/ndn-link-control-helper.h"
+#include "ns3/ndn-link-control-helper.hpp"
 
 using namespace ns3;
 
diff --git a/helper/boost-graph-ndn-global-routing-helper.hpp b/helper/boost-graph-ndn-global-routing-helper.hpp
index a85e9c9..e615494 100644
--- a/helper/boost-graph-ndn-global-routing-helper.hpp
+++ b/helper/boost-graph-ndn-global-routing-helper.hpp
@@ -28,11 +28,11 @@
 #include <boost/graph/properties.hpp>
 #include <boost/ref.hpp>
 
-#include "ns3/ndn-face.h"
-#include "ns3/ndn-limits.h"
+#include "ns3/ndn-face.hpp"
+#include "ns3/ndn-limits.hpp"
 #include "ns3/node-list.h"
 #include "ns3/channel-list.h"
-#include "../model/ndn-global-router.h"
+#include "../model/ndn-global-router.hpp"
 #include <list>
 #include <map>
 
diff --git a/helper/ndn-app-helper.cpp b/helper/ndn-app-helper.cpp
index d835da4..b181f3b 100644
--- a/helper/ndn-app-helper.cpp
+++ b/helper/ndn-app-helper.cpp
@@ -18,11 +18,11 @@
  * Author: Ilya Moiseenko <iliamo@cs.ucla.edu>
  */
 
-#include "ndn-app-helper.h"
+#include "ndn-app-helper.hpp"
 #include "ns3/log.h"
 #include "ns3/string.h"
 #include "ns3/names.h"
-#include "ns3/ndn-app.h"
+#include "ns3/ndn-app.hpp"
 
 #ifdef NS3_MPI
 #include "ns3/mpi-interface.h"
diff --git a/helper/ndn-face-container.cpp b/helper/ndn-face-container.cpp
index 888b9a8..69e90c9 100644
--- a/helper/ndn-face-container.cpp
+++ b/helper/ndn-face-container.cpp
@@ -18,11 +18,11 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-face-container.h"
+#include "ndn-face-container.hpp"
 
 #include <algorithm>
 
-#include "ns3/ndn-face.h"
+#include "ns3/ndn-face.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/helper/ndn-face-container.hpp b/helper/ndn-face-container.hpp
index e1566e6..f430c96 100644
--- a/helper/ndn-face-container.hpp
+++ b/helper/ndn-face-container.hpp
@@ -26,7 +26,7 @@
 
 #include "ns3/ptr.h"
 #include "ns3/simple-ref-count.h"
-#include "ns3/ndn-face.h"
+#include "ns3/ndn-face.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/helper/ndn-global-routing-helper.cpp b/helper/ndn-global-routing-helper.cpp
index eee399c..ac462c0 100644
--- a/helper/ndn-global-routing-helper.cpp
+++ b/helper/ndn-global-routing-helper.cpp
@@ -24,13 +24,13 @@
 #pragma clang diagnostic ignored "-Wunneeded-internal-declaration"
 #endif
 
-#include "ndn-global-routing-helper.h"
+#include "ndn-global-routing-helper.hpp"
 
-#include "ns3/ndn-l3-protocol.h"
-#include "../model/ndn-net-device-face.h"
-#include "../model/ndn-global-router.h"
-#include "ns3/ndn-name.h"
-#include "ns3/ndn-fib.h"
+#include "ns3/ndn-l3-protocol.hpp"
+#include "../model/ndn-net-device-face.hpp"
+#include "../model/ndn-global-router.hpp"
+#include "ns3/ndn-name.hpp"
+#include "ns3/ndn-fib.hpp"
 
 #include "ns3/node.h"
 #include "ns3/node-container.h"
@@ -50,7 +50,7 @@
 // #include <boost/graph/adjacency_list.hpp>
 #include <boost/graph/dijkstra_shortest_paths.hpp>
 
-#include "boost-graph-ndn-global-routing-helper.h"
+#include "boost-graph-ndn-global-routing-helper.hpp"
 
 #include <math.h>
 
diff --git a/helper/ndn-link-control-helper.cpp b/helper/ndn-link-control-helper.cpp
index cf2b99d..1c43666 100644
--- a/helper/ndn-link-control-helper.cpp
+++ b/helper/ndn-link-control-helper.cpp
@@ -19,7 +19,7 @@
  *       : Saran Tarnoi <saran.tarnoi@gmail.com>
  */
 
-#include "ndn-link-control-helper.h"
+#include "ndn-link-control-helper.hpp"
 
 #include "ns3/assert.h"
 #include "ns3/names.h"
@@ -28,8 +28,8 @@
 #include "ns3/channel.h"
 #include "ns3/log.h"
 
-#include "ns3/ndn-l3-protocol.h"
-#include "ns3/ndn-net-device-face.h"
+#include "ns3/ndn-l3-protocol.hpp"
+#include "ns3/ndn-net-device-face.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.LinkControlHelper");
 
diff --git a/helper/ndn-stack-helper.cpp b/helper/ndn-stack-helper.cpp
index 085078b..fe736b3 100644
--- a/helper/ndn-stack-helper.cpp
+++ b/helper/ndn-stack-helper.cpp
@@ -36,22 +36,22 @@
 #include "ns3/point-to-point-helper.h"
 #include "ns3/callback.h"
 
-#include "../model/ndn-net-device-face.h"
-#include "../model/ndn-l3-protocol.h"
+#include "../model/ndn-net-device-face.hpp"
+#include "../model/ndn-l3-protocol.hpp"
 
-#include "ns3/ndn-forwarding-strategy.h"
-#include "ns3/ndn-fib.h"
-#include "ns3/ndn-pit.h"
-#include "ns3/ndn-name.h"
-#include "ns3/ndn-content-store.h"
+#include "ns3/ndn-forwarding-strategy.hpp"
+#include "ns3/ndn-fib.hpp"
+#include "ns3/ndn-pit.hpp"
+#include "ns3/ndn-name.hpp"
+#include "ns3/ndn-content-store.hpp"
 
 #include "ns3/node-list.h"
 // #include "ns3/loopback-net-device.h"
 
 #include "ns3/data-rate.h"
 
-#include "ndn-face-container.h"
-#include "ndn-stack-helper.h"
+#include "ndn-face-container.hpp"
+#include "ndn-stack-helper.hpp"
 
 #include <limits>
 #include <map>
diff --git a/model/cs/content-store-impl.cpp b/model/cs/content-store-impl.cpp
index dce3924..225d137 100644
--- a/model/cs/content-store-impl.cpp
+++ b/model/cs/content-store-impl.cpp
@@ -18,14 +18,14 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "content-store-impl.h"
+#include "content-store-impl.hpp"
 
-#include "../../utils/trie/random-policy.h"
-#include "../../utils/trie/lru-policy.h"
-#include "../../utils/trie/fifo-policy.h"
-#include "../../utils/trie/lfu-policy.h"
-#include "../../utils/trie/multi-policy.h"
-#include "../../utils/trie/aggregate-stats-policy.h"
+#include "../../utils/trie/random-policy.hpp"
+#include "../../utils/trie/lru-policy.hpp"
+#include "../../utils/trie/fifo-policy.hpp"
+#include "../../utils/trie/lfu-policy.hpp"
+#include "../../utils/trie/multi-policy.hpp"
+#include "../../utils/trie/aggregate-stats-policy.hpp"
 
 #define NS_OBJECT_ENSURE_REGISTERED_TEMPL(type, templ)  \
   static struct X ## type ## templ ## RegistrationClass \
diff --git a/model/cs/content-store-impl.hpp b/model/cs/content-store-impl.hpp
index 403ceef..1254bb2 100644
--- a/model/cs/content-store-impl.hpp
+++ b/model/cs/content-store-impl.hpp
@@ -21,7 +21,8 @@
 #ifndef NDN_CONTENT_STORE_IMPL_H_
 #define NDN_CONTENT_STORE_IMPL_H_
 
-#include "ndn-content-store.h"
+#include "ndn-content-store.hpp"
+
 #include "ns3/packet.h"
 #include "ns3/ndn-interest.h"
 #include "ns3/ndn-data.h"
@@ -31,7 +32,7 @@
 #include "ns3/uinteger.h"
 #include "ns3/string.h"
 
-#include "../../utils/trie/trie-with-policy.h"
+#include "../../utils/trie/trie-with-policy.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/model/cs/content-store-nocache.cpp b/model/cs/content-store-nocache.cpp
index 001dc58..61515c1 100644
--- a/model/cs/content-store-nocache.cpp
+++ b/model/cs/content-store-nocache.cpp
@@ -20,12 +20,10 @@
  *         
  */
 
-#include "content-store-nocache.h"
+#include "content-store-nocache.hpp"
+
 #include "ns3/log.h"
 #include "ns3/packet.h"
-#include "ns3/ndn-name.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.cs.Nocache");
 
diff --git a/model/cs/content-store-nocache.hpp b/model/cs/content-store-nocache.hpp
index ca3afe2..ac7ced7 100644
--- a/model/cs/content-store-nocache.hpp
+++ b/model/cs/content-store-nocache.hpp
@@ -22,7 +22,7 @@
 #ifndef NDN_CONTENT_STORE_NOCACHE_H
 #define	NDN_CONTENT_STORE_NOCACHE_H
 
-#include "ns3/ndn-content-store.h"
+#include "ns3/ndnSIM/model/cs/ndn-content-store.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/model/cs/content-store-with-freshness.cpp b/model/cs/content-store-with-freshness.cpp
index 3691891..e132a78 100644
--- a/model/cs/content-store-with-freshness.cpp
+++ b/model/cs/content-store-with-freshness.cpp
@@ -18,12 +18,12 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "content-store-with-freshness.h"
+#include "content-store-with-freshness.hpp"
 
-#include "../../utils/trie/random-policy.h"
-#include "../../utils/trie/lru-policy.h"
-#include "../../utils/trie/fifo-policy.h"
-#include "../../utils/trie/lfu-policy.h"
+#include "../../utils/trie/random-policy.hpp"
+#include "../../utils/trie/lru-policy.hpp"
+#include "../../utils/trie/fifo-policy.hpp"
+#include "../../utils/trie/lfu-policy.hpp"
 
 #define NS_OBJECT_ENSURE_REGISTERED_TEMPL(type, templ)  \
   static struct X ## type ## templ ## RegistrationClass \
diff --git a/model/cs/content-store-with-freshness.hpp b/model/cs/content-store-with-freshness.hpp
index e53cbba..2bd74de 100644
--- a/model/cs/content-store-with-freshness.hpp
+++ b/model/cs/content-store-with-freshness.hpp
@@ -23,8 +23,10 @@
 
 #include "content-store-impl.h"
 
-#include "../../utils/trie/multi-policy.h"
-#include "custom-policies/freshness-policy.h"
+#include "content-store-impl.hpp"
+
+#include "../../utils/trie/multi-policy.hpp"
+#include "custom-policies/freshness-policy.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/model/cs/content-store-with-probability.cpp b/model/cs/content-store-with-probability.cpp
index f3def33..bf5c181 100644
--- a/model/cs/content-store-with-probability.cpp
+++ b/model/cs/content-store-with-probability.cpp
@@ -18,12 +18,12 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "content-store-with-probability.h"
+#include "content-store-with-probability.hpp"
 
-#include "../../utils/trie/random-policy.h"
-#include "../../utils/trie/lru-policy.h"
-#include "../../utils/trie/fifo-policy.h"
-#include "../../utils/trie/lfu-policy.h"
+#include "../../utils/trie/random-policy.hpp"
+#include "../../utils/trie/lru-policy.hpp"
+#include "../../utils/trie/fifo-policy.hpp"
+#include "../../utils/trie/lfu-policy.hpp"
 
 #define NS_OBJECT_ENSURE_REGISTERED_TEMPL(type, templ)  \
   static struct X ## type ## templ ## RegistrationClass \
diff --git a/model/cs/content-store-with-probability.hpp b/model/cs/content-store-with-probability.hpp
index 42ad716..55266e8 100644
--- a/model/cs/content-store-with-probability.hpp
+++ b/model/cs/content-store-with-probability.hpp
@@ -23,8 +23,10 @@
 
 #include "content-store-impl.h"
 
-#include "../../utils/trie/multi-policy.h"
-#include "custom-policies/probability-policy.h"
+#include "content-store-impl.hpp"
+
+#include "../../utils/trie/multi-policy.hpp"
+#include "custom-policies/probability-policy.hpp"
 #include "ns3/double.h"
 #include "ns3/type-id.h"
 
diff --git a/model/cs/content-store-with-stats.cpp b/model/cs/content-store-with-stats.cpp
index ad179e4..7d6e567 100644
--- a/model/cs/content-store-with-stats.cpp
+++ b/model/cs/content-store-with-stats.cpp
@@ -18,12 +18,12 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "content-store-with-stats.h"
+#include "content-store-with-stats.hpp"
 
-#include "../../utils/trie/random-policy.h"
-#include "../../utils/trie/lru-policy.h"
-#include "../../utils/trie/fifo-policy.h"
-#include "../../utils/trie/lfu-policy.h"
+#include "../../utils/trie/random-policy.hpp"
+#include "../../utils/trie/lru-policy.hpp"
+#include "../../utils/trie/fifo-policy.hpp"
+#include "../../utils/trie/lfu-policy.hpp"
 
 #define NS_OBJECT_ENSURE_REGISTERED_TEMPL(type, templ)  \
   static struct X ## type ## templ ## RegistrationClass \
diff --git a/model/cs/content-store-with-stats.hpp b/model/cs/content-store-with-stats.hpp
index a3f5fdd..542b88c 100644
--- a/model/cs/content-store-with-stats.hpp
+++ b/model/cs/content-store-with-stats.hpp
@@ -23,8 +23,10 @@
 
 #include "content-store-impl.h"
 
-#include "../../utils/trie/multi-policy.h"
-#include "custom-policies/lifetime-stats-policy.h"
+#include "content-store-impl.hpp"
+
+#include "../../utils/trie/multi-policy.hpp"
+#include "custom-policies/lifetime-stats-policy.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/model/cs/ndn-content-store.cpp b/model/cs/ndn-content-store.cpp
index ecc9de8..4d3bb65 100644
--- a/model/cs/ndn-content-store.cpp
+++ b/model/cs/ndn-content-store.cpp
@@ -20,12 +20,10 @@
  *         
  */
 
-#include "ndn-content-store.h"
+#include "ndn-content-store.hpp"
+
 #include "ns3/log.h"
 #include "ns3/packet.h"
-#include "ns3/ndn-name.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.cs.ContentStore");
 
diff --git a/model/ndn-app-face.cpp b/model/ndn-app-face.cpp
index 1de26e3..9125e2c 100644
--- a/model/ndn-app-face.cpp
+++ b/model/ndn-app-face.cpp
@@ -20,7 +20,7 @@
  *
  */
 
-#include "ndn-app-face.h"
+#include "ndn-app-face.hpp"
 
 #include "ns3/log.h"
 #include "ns3/packet.h"
@@ -28,11 +28,11 @@
 #include "ns3/assert.h"
 #include "ns3/simulator.h"
 
-#include "ns3/ndn-header-helper.h"
-#include "ns3/ndn-app.h"
+#include "ns3/ndn-header-helper.hpp"
+#include "ns3/ndn-app.hpp"
 
-#include "ndn-interest.h"
-#include "ndn-data.h"
+#include "ndn-interest.hpp"
+#include "ndn-data.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.AppFace");
 
diff --git a/model/ndn-app-face.hpp b/model/ndn-app-face.hpp
index 029dd0a..3663be0 100644
--- a/model/ndn-app-face.hpp
+++ b/model/ndn-app-face.hpp
@@ -22,7 +22,7 @@
 #ifndef NDN_APP_FACE_H
 #define NDN_APP_FACE_H
 
-#include "ndn-face.h"
+#include "ndn-face.hpp"
 #include "ns3/traced-callback.h"
 
 namespace ns3 {
diff --git a/model/ndn-face.cpp b/model/ndn-face.cpp
index 293a6d7..6b23dd7 100644
--- a/model/ndn-face.cpp
+++ b/model/ndn-face.cpp
@@ -19,7 +19,7 @@
  *
  */
 
-#include "ndn-face.h"
+#include "ndn-face.hpp"
 
 #include "ns3/packet.h"
 #include "ns3/log.h"
@@ -32,8 +32,8 @@
 #include "ns3/random-variable.h"
 #include "ns3/pointer.h"
 
-#include "ns3/ndn-header-helper.h"
-#include "ns3/ndnSIM/utils/ndn-fw-hop-count-tag.h"
+#include "ns3/ndn-header-helper.hpp"
+#include "ns3/ndnSIM/utils/ndn-fw-hop-count-tag.hpp"
 
 #include "ns3/ndn-wire.h"
 
diff --git a/model/ndn-face.hpp b/model/ndn-face.hpp
index a166a7b..bf0a9b2 100644
--- a/model/ndn-face.hpp
+++ b/model/ndn-face.hpp
@@ -29,7 +29,7 @@
 #include "ns3/nstime.h"
 #include "ns3/type-id.h"
 #include "ns3/traced-callback.h"
-#include "ns3/ndn-name.h"
+#include "ns3/ndn-name.hpp"
 
 namespace ns3 {
 
diff --git a/model/ndn-global-router.cpp b/model/ndn-global-router.cpp
index b3a0b1b..e29c055 100644
--- a/model/ndn-global-router.cpp
+++ b/model/ndn-global-router.cpp
@@ -18,11 +18,11 @@
  * Author:  Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-global-router.h"
+#include "ndn-global-router.hpp"
 
-#include "ns3/ndn-l3-protocol.h"
-#include "ns3/ndn-face.h"
-#include "ns3/ndn-name.h"
+#include "ns3/ndn-l3-protocol.hpp"
+#include "ns3/ndn-face.hpp"
+#include "ns3/ndn-name.hpp"
 
 #include "ns3/channel.h"
 
diff --git a/model/ndn-l3-protocol.cpp b/model/ndn-l3-protocol.cpp
index d2d2b29..5ab8cba 100644
--- a/model/ndn-l3-protocol.cpp
+++ b/model/ndn-l3-protocol.cpp
@@ -19,7 +19,7 @@
  *         Ilya Moiseenko <iliamo@cs.ucla.edu>
  */
 
-#include "ndn-l3-protocol.h"
+#include "ndn-l3-protocol.hpp"
 
 #include "ns3/packet.h"
 #include "ns3/node.h"
@@ -32,14 +32,14 @@
 #include "ns3/simulator.h"
 #include "ns3/random-variable.h"
 
-#include "ns3/ndn-pit.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
+#include "ns3/ndn-pit.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
 
-#include "ns3/ndn-face.h"
-#include "ns3/ndn-forwarding-strategy.h"
+#include "ns3/ndn-face.hpp"
+#include "ns3/ndn-forwarding-strategy.hpp"
 
-#include "ndn-net-device-face.h"
+#include "ndn-net-device-face.hpp"
 
 #include <boost/foreach.hpp>
 
diff --git a/model/ndn-net-device-face.cpp b/model/ndn-net-device-face.cpp
index eb2b357..af4baa0 100644
--- a/model/ndn-net-device-face.cpp
+++ b/model/ndn-net-device-face.cpp
@@ -19,8 +19,8 @@
  *
  */
 
-#include "ndn-net-device-face.h"
-#include "ndn-l3-protocol.h"
+#include "ndn-net-device-face.hpp"
+#include "ndn-l3-protocol.hpp"
 
 #include "ns3/net-device.h"
 #include "ns3/log.h"
@@ -31,7 +31,7 @@
 // #include "ns3/address.h"
 #include "ns3/point-to-point-net-device.h"
 #include "ns3/channel.h"
-#include "ns3/ndn-name.h"
+#include "ns3/ndn-name.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.NetDeviceFace");
 
diff --git a/model/ndn-net-device-face.hpp b/model/ndn-net-device-face.hpp
index d001015..6bf231c 100644
--- a/model/ndn-net-device-face.hpp
+++ b/model/ndn-net-device-face.hpp
@@ -21,7 +21,7 @@
 #ifndef NDN_NET_DEVICE_FACE_H
 #define NDN_NET_DEVICE_FACE_H
 
-#include "ndn-face.h"
+#include "ndn-face.hpp"
 #include "ns3/net-device.h"
 
 namespace ns3 {
diff --git a/plugins/ip-faces/ndn-ip-face-stack.cpp b/plugins/ip-faces/ndn-ip-face-stack.cpp
index da1b31d..17a0253 100644
--- a/plugins/ip-faces/ndn-ip-face-stack.cpp
+++ b/plugins/ip-faces/ndn-ip-face-stack.cpp
@@ -18,11 +18,11 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-ip-face-stack.h"
-#include "ndn-tcp-face.h"
-#include "ndn-udp-face.h"
+#include "ndn-ip-face-stack.hpp"
+#include "ndn-tcp-face.hpp"
+#include "ndn-udp-face.hpp"
 
-#include "ns3/ndn-l3-protocol.h"
+#include "ns3/ndn-l3-protocol.hpp"
 
 #include "ns3/log.h"
 #include "ns3/assert.h"
diff --git a/plugins/ip-faces/ndn-ip-face-stack.hpp b/plugins/ip-faces/ndn-ip-face-stack.hpp
index 95ea73d..6eb6ff3 100644
--- a/plugins/ip-faces/ndn-ip-face-stack.hpp
+++ b/plugins/ip-faces/ndn-ip-face-stack.hpp
@@ -26,7 +26,7 @@
 #include "ns3/socket.h"
 #include "ns3/inet-socket-address.h"
 #include "ns3/ptr.h"
-#include "ns3/ndn-name.h"
+#include "ns3/ndn-name.hpp"
 
 #include <map>
 
diff --git a/plugins/ip-faces/ndn-ip-faces-helper.cpp b/plugins/ip-faces/ndn-ip-faces-helper.cpp
index 26a766d..4194b68 100644
--- a/plugins/ip-faces/ndn-ip-faces-helper.cpp
+++ b/plugins/ip-faces/ndn-ip-faces-helper.cpp
@@ -19,15 +19,15 @@
  * Author:  Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-ip-faces-helper.h"
-#include "ndn-ip-face-stack.h"
+#include "ndn-ip-faces-helper.hpp"
+#include "ndn-ip-face-stack.hpp"
 
-#include "ns3/ndn-stack-helper.h"
+#include "ns3/ndn-stack-helper.hpp"
 #include "ns3/node-container.h"
 #include "ns3/log.h"
 #include "ns3/simulator.h"
-#include "ndn-tcp-face.h"
-#include "ndn-udp-face.h"
+#include "ndn-tcp-face.hpp"
+#include "ndn-udp-face.hpp"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.IpFacesHelper");
 
diff --git a/plugins/ip-faces/ndn-tcp-face.cpp b/plugins/ip-faces/ndn-tcp-face.cpp
index 07c3d4d..27e58b8 100644
--- a/plugins/ip-faces/ndn-tcp-face.cpp
+++ b/plugins/ip-faces/ndn-tcp-face.cpp
@@ -19,10 +19,10 @@
  *
  */
 
-#include "ndn-tcp-face.h"
-#include "ndn-ip-face-stack.h"
+#include "ndn-tcp-face.hpp"
+#include "ndn-ip-face-stack.hpp"
 
-#include "ns3/ndn-l3-protocol.h"
+#include "ns3/ndn-l3-protocol.hpp"
 
 #include "ns3/log.h"
 #include "ns3/packet.h"
@@ -30,7 +30,7 @@
 #include "ns3/pointer.h"
 #include "ns3/tcp-socket-factory.h"
 
-#include "ns3/ndn-name.h"
+#include "ns3/ndn-name.hpp"
 
 using namespace std;
 
diff --git a/plugins/ip-faces/ndn-tcp-face.hpp b/plugins/ip-faces/ndn-tcp-face.hpp
index 56cb0e9..249fd6a 100644
--- a/plugins/ip-faces/ndn-tcp-face.hpp
+++ b/plugins/ip-faces/ndn-tcp-face.hpp
@@ -21,7 +21,7 @@
 #ifndef NDN_TCP_FACE_H
 #define NDN_TCP_FACE_H
 
-#include "ns3/ndn-face.h"
+#include "ns3/ndn-face.hpp"
 #include "ns3/socket.h"
 #include "ns3/ptr.h"
 #include "ns3/callback.h"
diff --git a/plugins/ip-faces/ndn-udp-face.cpp b/plugins/ip-faces/ndn-udp-face.cpp
index 346c623..03d8ee4 100644
--- a/plugins/ip-faces/ndn-udp-face.cpp
+++ b/plugins/ip-faces/ndn-udp-face.cpp
@@ -19,8 +19,8 @@
  *
  */
 
-#include "ndn-udp-face.h"
-#include "ns3/ndn-l3-protocol.h"
+#include "ndn-udp-face.hpp"
+#include "ns3/ndn-l3-protocol.hpp"
 
 #include "ns3/log.h"
 #include "ns3/packet.h"
@@ -28,7 +28,7 @@
 #include "ns3/pointer.h"
 #include "ns3/udp-socket-factory.h"
 
-#include "ns3/ndn-name.h"
+#include "ns3/ndn-name.hpp"
 
 using namespace std;
 
diff --git a/plugins/ip-faces/ndn-udp-face.hpp b/plugins/ip-faces/ndn-udp-face.hpp
index f4b6a97..207eac0 100644
--- a/plugins/ip-faces/ndn-udp-face.hpp
+++ b/plugins/ip-faces/ndn-udp-face.hpp
@@ -21,7 +21,7 @@
 #ifndef NDN_UDP_FACE_H
 #define NDN_UDP_FACE_H
 
-#include "ns3/ndn-face.h"
+#include "ns3/ndn-face.hpp"
 #include "ns3/socket.h"
 #include "ns3/ptr.h"
 
diff --git a/plugins/topology/annotated-topology-reader.cpp b/plugins/topology/annotated-topology-reader.cpp
index 33549a7..7160dab 100644
--- a/plugins/topology/annotated-topology-reader.cpp
+++ b/plugins/topology/annotated-topology-reader.cpp
@@ -19,7 +19,7 @@
  *         Ilya Moiseenko <iliamo@cs.ucla.edu>
  */
 
-#include "annotated-topology-reader.h"
+#include "annotated-topology-reader.hpp"
 
 #include "ns3/nstime.h"
 #include "ns3/log.h"
@@ -38,8 +38,8 @@
 #include "ns3/pointer.h"
 #include "ns3/uinteger.h"
 #include "ns3/ipv4-address.h"
-#include "ns3/ndn-l3-protocol.h"
-#include "ns3/ndn-face.h"
+#include "ns3/ndn-l3-protocol.hpp"
+#include "ns3/ndn-face.hpp"
 #include "ns3/random-variable.h"
 #include "ns3/error-model.h"
 
diff --git a/plugins/topology/rocketfuel-map-reader.cpp b/plugins/topology/rocketfuel-map-reader.cpp
index f2b86b0..c9949d8 100644
--- a/plugins/topology/rocketfuel-map-reader.cpp
+++ b/plugins/topology/rocketfuel-map-reader.cpp
@@ -21,7 +21,7 @@
  *
  */
 
-#include "rocketfuel-map-reader.h"
+#include "rocketfuel-map-reader.hpp"
 
 #include "ns3/nstime.h"
 #include "ns3/log.h"
diff --git a/plugins/topology/rocketfuel-map-reader.hpp b/plugins/topology/rocketfuel-map-reader.hpp
index 7b357b8..99336fc 100644
--- a/plugins/topology/rocketfuel-map-reader.hpp
+++ b/plugins/topology/rocketfuel-map-reader.hpp
@@ -23,7 +23,7 @@
 #ifndef ROCKETFUEL_MAP_READER_H
 #define ROCKETFUEL_MAP_READER_H
 
-#include "ns3/annotated-topology-reader.h"
+#include "ns3/annotated-topology-reader.hpp"
 #include "ns3/net-device-container.h"
 #include "ns3/random-variable.h"
 #include <set>
diff --git a/plugins/topology/rocketfuel-weights-reader.cpp b/plugins/topology/rocketfuel-weights-reader.cpp
index 2047d69..4decb69 100644
--- a/plugins/topology/rocketfuel-weights-reader.cpp
+++ b/plugins/topology/rocketfuel-weights-reader.cpp
@@ -19,7 +19,7 @@
  *         Ilya Moiseenko <iliamo@cs.ucla.edu>
  */
 
-#include "rocketfuel-weights-reader.h"
+#include "rocketfuel-weights-reader.hpp"
 
 #include "ns3/nstime.h"
 #include "ns3/log.h"
diff --git a/plugins/topology/rocketfuel-weights-reader.hpp b/plugins/topology/rocketfuel-weights-reader.hpp
index 126c039..0026311 100644
--- a/plugins/topology/rocketfuel-weights-reader.hpp
+++ b/plugins/topology/rocketfuel-weights-reader.hpp
@@ -22,7 +22,7 @@
 #ifndef ROCKETFUEL_TOPOLOGY_WEIGHTS_READER_H
 #define ROCKETFUEL_TOPOLOGY_WEIGHTS_READER_H
 
-#include "annotated-topology-reader.h"
+#include "annotated-topology-reader.hpp"
 #include "ns3/net-device-container.h"
 
 namespace ns3 {
diff --git a/utils/batches.cpp b/utils/batches.cpp
index 6292b50..9eb92b3 100644
--- a/utils/batches.cpp
+++ b/utils/batches.cpp
@@ -18,7 +18,7 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "batches.h"
+#include "batches.hpp"
 
 namespace ns3 {
 
diff --git a/utils/ndn-fw-hop-count-tag.cpp b/utils/ndn-fw-hop-count-tag.cpp
index 8e4ba4c..f4d65db 100644
--- a/utils/ndn-fw-hop-count-tag.cpp
+++ b/utils/ndn-fw-hop-count-tag.cpp
@@ -18,7 +18,7 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-fw-hop-count-tag.h"
+#include "ndn-fw-hop-count-tag.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/utils/ndn-limits-rate.cpp b/utils/ndn-limits-rate.cpp
index 2c106c0..3d2ebc7 100644
--- a/utils/ndn-limits-rate.cpp
+++ b/utils/ndn-limits-rate.cpp
@@ -18,12 +18,12 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-limits-rate.h"
+#include "ndn-limits-rate.hpp"
 
 #include "ns3/log.h"
 #include "ns3/simulator.h"
 #include "ns3/random-variable.h"
-#include "ns3/ndn-face.h"
+#include "ns3/ndn-face.hpp"
 #include "ns3/node.h"
 
 NS_LOG_COMPONENT_DEFINE ("ndn.Limits.Rate");
diff --git a/utils/ndn-limits-rate.hpp b/utils/ndn-limits-rate.hpp
index 0823cc7..4b8c699 100644
--- a/utils/ndn-limits-rate.hpp
+++ b/utils/ndn-limits-rate.hpp
@@ -21,7 +21,7 @@
 #ifndef _NDN_LIMITS_RATE_H_
 #define	_NDN_LIMITS_RATE_H_
 
-#include "ndn-limits.h"
+#include "ndn-limits.hpp"
 #include <ns3/nstime.h>
 
 namespace ns3 {
diff --git a/utils/ndn-limits-window.cpp b/utils/ndn-limits-window.cpp
index a859be5..a2630a4 100644
--- a/utils/ndn-limits-window.cpp
+++ b/utils/ndn-limits-window.cpp
@@ -18,7 +18,7 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-limits-window.h"
+#include "ndn-limits-window.hpp"
 
 #include "ns3/log.h"
 
diff --git a/utils/ndn-limits-window.hpp b/utils/ndn-limits-window.hpp
index 1c1ed49..2fcea6f 100644
--- a/utils/ndn-limits-window.hpp
+++ b/utils/ndn-limits-window.hpp
@@ -21,7 +21,7 @@
 #ifndef _NDN_LIMITS_WINDOW_H_
 #define	_NDN_LIMITS_WINDOW_H_
 
-#include "ndn-limits.h"
+#include "ndn-limits.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/utils/ndn-limits.cpp b/utils/ndn-limits.cpp
index 1d7b283..4519500 100644
--- a/utils/ndn-limits.cpp
+++ b/utils/ndn-limits.cpp
@@ -18,7 +18,7 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-limits.h"
+#include "ndn-limits.hpp"
 
 #include "ns3/log.h"
 #include "ns3/simulator.h"
diff --git a/utils/ndn-rtt-estimator.cpp b/utils/ndn-rtt-estimator.cpp
index b0d2b83..9e63cef 100644
--- a/utils/ndn-rtt-estimator.cpp
+++ b/utils/ndn-rtt-estimator.cpp
@@ -28,7 +28,7 @@
 
 #include <iostream>
 
-#include "ndn-rtt-estimator.h"
+#include "ndn-rtt-estimator.hpp"
 #include "ns3/simulator.h"
 #include "ns3/double.h"
 #include "ns3/integer.h"
diff --git a/utils/ndn-rtt-mean-deviation.cpp b/utils/ndn-rtt-mean-deviation.cpp
index 88cebaa..8e99069 100644
--- a/utils/ndn-rtt-mean-deviation.cpp
+++ b/utils/ndn-rtt-mean-deviation.cpp
@@ -25,7 +25,7 @@
 // Georgia Tech Network Simulator - Round Trip Time Estimation Class
 // George F. Riley.  Georgia Tech, Spring 2002
 
-#include "ndn-rtt-mean-deviation.h"
+#include "ndn-rtt-mean-deviation.hpp"
 #include "ns3/simulator.h"
 #include "ns3/double.h"
 #include "ns3/integer.h"
diff --git a/utils/ndn-rtt-mean-deviation.hpp b/utils/ndn-rtt-mean-deviation.hpp
index fc48173..428bff8 100644
--- a/utils/ndn-rtt-mean-deviation.hpp
+++ b/utils/ndn-rtt-mean-deviation.hpp
@@ -29,7 +29,7 @@
 #ifndef NDN_RTT_MEAN_DEVIATION_H
 #define NDN_RTT_MEAN_DEVIATION_H
 
-#include <ns3/ndnSIM/utils/ndn-rtt-estimator.h>
+#include "ndn-rtt-estimator.hpp"
 
 namespace ns3 {
 namespace ndn {
diff --git a/utils/tracers/l2-rate-tracer.cpp b/utils/tracers/l2-rate-tracer.cpp
index a4c86b9..41ae00b 100644
--- a/utils/tracers/l2-rate-tracer.cpp
+++ b/utils/tracers/l2-rate-tracer.cpp
@@ -18,7 +18,7 @@
  * Author:  Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "l2-rate-tracer.h"
+#include "l2-rate-tracer.hpp"
 #include "ns3/node.h"
 #include "ns3/packet.h"
 #include "ns3/config.h"
diff --git a/utils/tracers/l2-rate-tracer.hpp b/utils/tracers/l2-rate-tracer.hpp
index bdf2263..275b213 100644
--- a/utils/tracers/l2-rate-tracer.hpp
+++ b/utils/tracers/l2-rate-tracer.hpp
@@ -21,7 +21,7 @@
 #ifndef L2_RATE_TRACER_H
 #define L2_RATE_TRACER_H
 
-#include "l2-tracer.h"
+#include "l2-tracer.hpp"
 
 #include "ns3/nstime.h"
 #include "ns3/event-id.h"
diff --git a/utils/tracers/l2-tracer.cpp b/utils/tracers/l2-tracer.cpp
index 3338309..631db7c 100644
--- a/utils/tracers/l2-tracer.cpp
+++ b/utils/tracers/l2-tracer.cpp
@@ -18,7 +18,7 @@
  * Author:  Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "l2-tracer.h"
+#include "l2-tracer.hpp"
 #include "ns3/node.h"
 #include "ns3/config.h"
 #include "ns3/names.h"
diff --git a/utils/tracers/ndn-app-delay-tracer.cpp b/utils/tracers/ndn-app-delay-tracer.cpp
index 6eeeeb9..01a5af4 100644
--- a/utils/tracers/ndn-app-delay-tracer.cpp
+++ b/utils/tracers/ndn-app-delay-tracer.cpp
@@ -18,16 +18,16 @@
  * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-app-delay-tracer.h"
+#include "ndn-app-delay-tracer.hpp"
 #include "ns3/node.h"
 #include "ns3/packet.h"
 #include "ns3/config.h"
 #include "ns3/names.h"
 #include "ns3/callback.h"
 
-#include "ns3/ndn-app.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
+#include "ns3/ndn-app.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
 #include "ns3/simulator.h"
 #include "ns3/node-list.h"
 #include "ns3/log.h"
diff --git a/utils/tracers/ndn-cs-tracer.cpp b/utils/tracers/ndn-cs-tracer.cpp
index 2fb1337..74fa3dd 100644
--- a/utils/tracers/ndn-cs-tracer.cpp
+++ b/utils/tracers/ndn-cs-tracer.cpp
@@ -19,17 +19,17 @@
  *         Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-cs-tracer.h"
+#include "ndn-cs-tracer.hpp"
 #include "ns3/node.h"
 #include "ns3/packet.h"
 #include "ns3/config.h"
 #include "ns3/names.h"
 #include "ns3/callback.h"
 
-#include "ns3/ndn-app.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
-#include "ns3/ndn-content-store.h"
+#include "ns3/ndn-app.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
+#include "ns3/ndn-content-store.hpp"
 #include "ns3/simulator.h"
 #include "ns3/node-list.h"
 #include "ns3/log.h"
diff --git a/utils/tracers/ndn-l3-aggregate-tracer.cpp b/utils/tracers/ndn-l3-aggregate-tracer.cpp
index 5a2d662..556a792 100644
--- a/utils/tracers/ndn-l3-aggregate-tracer.cpp
+++ b/utils/tracers/ndn-l3-aggregate-tracer.cpp
@@ -18,17 +18,17 @@
  * Author:  Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-l3-aggregate-tracer.h"
+#include "ndn-l3-aggregate-tracer.hpp"
 
 #include "ns3/node.h"
 #include "ns3/packet.h"
 #include "ns3/config.h"
 #include "ns3/callback.h"
-#include "ns3/ndn-app.h"
-#include "ns3/ndn-face.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
-#include "ns3/ndn-pit-entry.h"
+#include "ns3/ndn-app.hpp"
+#include "ns3/ndn-face.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
+#include "ns3/ndn-pit-entry.hpp"
 
 #include "ns3/simulator.h"
 #include "ns3/node-list.h"
diff --git a/utils/tracers/ndn-l3-aggregate-tracer.hpp b/utils/tracers/ndn-l3-aggregate-tracer.hpp
index dadd6ff..a94d2f5 100644
--- a/utils/tracers/ndn-l3-aggregate-tracer.hpp
+++ b/utils/tracers/ndn-l3-aggregate-tracer.hpp
@@ -21,7 +21,7 @@
 #ifndef NDN_L3_AGGREGATE_TRACER_H
 #define NDN_L3_AGGREGATE_TRACER_H
 
-#include "ndn-l3-tracer.h"
+#include "ndn-l3-tracer.hpp"
 
 #include <ns3/nstime.h>
 #include <ns3/event-id.h>
diff --git a/utils/tracers/ndn-l3-rate-tracer.cpp b/utils/tracers/ndn-l3-rate-tracer.cpp
index 7951213..ca80bef 100644
--- a/utils/tracers/ndn-l3-rate-tracer.cpp
+++ b/utils/tracers/ndn-l3-rate-tracer.cpp
@@ -18,7 +18,7 @@
  * Author:  Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-l3-rate-tracer.h"
+#include "ndn-l3-rate-tracer.hpp"
 #include "ns3/node.h"
 #include "ns3/packet.h"
 #include "ns3/config.h"
@@ -27,11 +27,11 @@
 #include "ns3/log.h"
 #include "ns3/node-list.h"
 
-#include "ns3/ndn-app.h"
-#include "ns3/ndn-face.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
-#include "ns3/ndn-pit-entry.h"
+#include "ns3/ndn-app.hpp"
+#include "ns3/ndn-face.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
+#include "ns3/ndn-pit-entry.hpp"
 
 #include <fstream>
 #include <boost/lexical_cast.hpp>
diff --git a/utils/tracers/ndn-l3-rate-tracer.hpp b/utils/tracers/ndn-l3-rate-tracer.hpp
index 8e5b1d5..1a6a401 100644
--- a/utils/tracers/ndn-l3-rate-tracer.hpp
+++ b/utils/tracers/ndn-l3-rate-tracer.hpp
@@ -21,7 +21,7 @@
 #ifndef CCNX_RATE_L3_TRACER_H
 #define CCNX_RATE_L3_TRACER_H
 
-#include "ndn-l3-tracer.h"
+#include "ndn-l3-tracer.hpp"
 
 #include "ns3/nstime.h"
 #include "ns3/event-id.h"
diff --git a/utils/tracers/ndn-l3-tracer.cpp b/utils/tracers/ndn-l3-tracer.cpp
index 47e67a4..c69a4d3 100644
--- a/utils/tracers/ndn-l3-tracer.cpp
+++ b/utils/tracers/ndn-l3-tracer.cpp
@@ -18,20 +18,20 @@
  * Author:  Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
-#include "ndn-l3-tracer.h"
+#include "ndn-l3-tracer.hpp"
 #include "ns3/node.h"
 #include "ns3/packet.h"
 #include "ns3/config.h"
 #include "ns3/names.h"
 #include "ns3/callback.h"
-#include "ns3/ndn-forwarding-strategy.h"
+#include "ns3/ndn-forwarding-strategy.hpp"
 
 #include <boost/lexical_cast.hpp>
 
-#include "ns3/ndn-face.h"
-#include "ns3/ndn-interest.h"
-#include "ns3/ndn-data.h"
-#include "ns3/ndn-pit-entry.h"
+#include "ns3/ndn-face.hpp"
+#include "ns3/ndn-interest.hpp"
+#include "ns3/ndn-data.hpp"
+#include "ns3/ndn-pit-entry.hpp"
 
 using namespace std;
 
diff --git a/utils/trie/multi-policy.hpp b/utils/trie/multi-policy.hpp
index 314a2a0..125df02 100644
--- a/utils/trie/multi-policy.hpp
+++ b/utils/trie/multi-policy.hpp
@@ -21,9 +21,9 @@
 #ifndef MULTI_POLICY_H_
 #define MULTI_POLICY_H_
 
-#include "detail/multi-type-container.h"
-#include "detail/multi-policy-container.h"
-#include "detail/functor-hook.h"
+#include "detail/multi-type-container.hpp"
+#include "detail/multi-policy-container.hpp"
+#include "detail/functor-hook.hpp"
 
 #include <boost/mpl/size.hpp>
 #include <boost/mpl/at.hpp>
diff --git a/utils/trie/trie-with-policy.hpp b/utils/trie/trie-with-policy.hpp
index 2ab147d..f09f13b 100644
--- a/utils/trie/trie-with-policy.hpp
+++ b/utils/trie/trie-with-policy.hpp
@@ -21,7 +21,7 @@
 #ifndef TRIE_WITH_POLICY_H_
 #define TRIE_WITH_POLICY_H_
 
-#include "trie.h"
+#include "trie.hpp"
 
 namespace ns3 {
 namespace ndn {