20 #ifndef NDN_L3_PROTOCOL_H 
   21 #define NDN_L3_PROTOCOL_H 
   23 #include "ns3/ndnSIM/model/ndn-common.hpp" 
   24 #include "ns3/ndnSIM/model/ndn-face.hpp" 
   30 #include "ns3/net-device.h" 
   31 #include "ns3/nstime.h" 
   32 #include "ns3/traced-callback.h" 
   34 #include <boost/property_tree/ptree_fwd.hpp> 
  104   shared_ptr<nfd::Forwarder>
 
  110   shared_ptr<nfd::FibManager>
 
  116   shared_ptr<nfd::StrategyChoiceManager>
 
  129   addFace(shared_ptr<Face> face);
 
  158   static Ptr<L3Protocol>
 
  176   initializeManagement();
 
  180   std::unique_ptr<Impl> m_impl;
 
  185   TracedCallback<const Interest&, const Face&>
 
  187   TracedCallback<const Interest&, const Face&>
 
  190   TracedCallback<const Data&, const Face&> m_outData; 
 
  191   TracedCallback<const Data&, const Face&> m_inData;  
 
  194   TracedCallback<const nfd::pit::Entry&> m_timedOutInterests;
 
shared_ptr< Face > getFaceByNetDevice(Ptr< NetDevice > netDevice) const 
Remove face from ndn stack (remove callbacks) 
 
static const uint16_t IP_STACK_PORT
TCP/UDP port for NDN stack. 
 
shared_ptr< nfd::Forwarder > getForwarder()
Get smart pointer to nfd::Forwarder installed on the node. 
 
static const uint16_t ETHERNET_FRAME_TYPE
Ethernet Frame Type of Ndn. 
 
nfd::ConfigSection & getConfig()
Get NFD config (boost::property_tree) 
 
shared_ptr< Face > getFaceById(nfd::FaceId face) const 
Get face by face ID. 
 
shared_ptr< nfd::FibManager > getFibManager()
Get smart pointer to nfd::FibManager, used by node's NFD. 
 
virtual void NotifyNewAggregate()
This function will notify other components connected to the node that a new stack member is now conne...
 
static TypeId GetTypeId()
Interface ID. 
 
nfd::FaceId addFace(shared_ptr< Face > face)
Add face to NDN stack. 
 
boost::property_tree::ptree ConfigSection
 
L3Protocol()
Default constructor. 
 
shared_ptr< nfd::StrategyChoiceManager > getStrategyChoiceManager()
Get smart pointer to nfd::StrategyChoiceManager, used by node's NFD. 
 
Implementation network-layer of NDN stack. 
 
static Ptr< L3Protocol > getL3Protocol(Ptr< Object > node)
 
void initialize()
Initialize NFD instance. 
 
virtual void DoDispose(void)
Do cleanup.