model: Initial attempt to optimize Interest/Data encoding/decoding via a custom packet format
diff --git a/model/ndn-name-components.h b/model/ndn-name-components.h
index 4a479ac..c2076d1 100644
--- a/model/ndn-name-components.h
+++ b/model/ndn-name-components.h
@@ -30,6 +30,7 @@
 #include <algorithm>
 #include <list>
 #include "ns3/object.h"
+#include "ns3/buffer.h"
 
 #include <boost/ref.hpp>
 
@@ -128,6 +129,26 @@
   void Print (std::ostream &os) const;
 
   /**
+   * @brief Get serialized size for ndnSIM packet encoding
+   */
+  size_t
+  GetSerializedSize () const;
+  
+  /**
+   * @brief Serialize Name in ndnSIM packet encoding
+   * @param[in] start buffer to contain serialized name 
+   */
+  uint32_t
+  Serialize (Buffer::Iterator start) const;
+  
+  /**
+   * \brief Deserialize Name in ndnSIM packet encoding
+   * @param[in] start buffer that contains serialized name
+   */ 
+  uint32_t
+  Deserialize (Buffer::Iterator start);
+  
+  /**
    * \brief Returns the size of NameComponents
    */
   inline size_t