20 #ifndef NDN_L3_PROTOCOL_H 21 #define NDN_L3_PROTOCOL_H 23 #include "ns3/ndnSIM/model/ndn-common.hpp" 29 #include "ns3/net-device.h" 30 #include "ns3/nstime.h" 31 #include "ns3/traced-callback.h" 33 #include <boost/property_tree/ptree_fwd.hpp> 101 shared_ptr<nfd::Forwarder>
107 shared_ptr<nfd::FibManager>
113 shared_ptr<nfd::StrategyChoiceManager>
168 static Ptr<L3Protocol>
196 initializeManagement();
199 initializeRibManager();
203 std::unique_ptr<Impl> m_impl;
208 TracedCallback<const Interest&, const Face&>
210 TracedCallback<const Interest&, const Face&>
213 TracedCallback<const Data&, const Face&> m_outData;
214 TracedCallback<const Data&, const Face&> m_inData;
216 TracedCallback<const lp::Nack&, const Face&> m_outNack;
217 TracedCallback<const lp::Nack&, const Face&> m_inNack;
220 TracedCallback<const nfd::pit::Entry&> m_timedOutInterests;
static const uint16_t IP_STACK_PORT
TCP/UDP port for NDN stack.
Copyright (c) 2011-2015 Regents of the University of California.
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.
implement the Strategy Choice Management of NFD Management Protocol.
nfd::ConfigSection & getConfig()
Get NFD config (boost::property_tree)
void(* InterestTraceCallback)(const Interest &, const Face &)
std::function< std::unique_ptr< nfd::cs::Policy >)> PolicyCreationCallback
void(* DataTraceCallback)(const Data &, const Face &)
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...
shared_ptr< Face > getFaceByNetDevice(Ptr< NetDevice > netDevice) const
Remove face from ndn stack (remove callbacks)
static TypeId GetTypeId()
Interface ID.
represents a CS replacement policy
void setCsReplacementPolicy(const PolicyCreationCallback &policy)
Set the replacement policy of NFD's CS.
Copyright (c) 2011-2015 Regents of the University of California.
nfd::FaceId addFace(shared_ptr< Face > face)
Add face to NDN stack.
Copyright (c) 2011-2015 Regents of the University of California.
void(* TimedOutInterestsCallback)(const nfd::pit::Entry &pitEntry)
boost::property_tree::ptree ConfigSection
a config file section
L3Protocol()
Default constructor.
void(* SatisfiedInterestsCallback)(const nfd::pit::Entry &pitEntry, const Face &inFace, const Data &data)
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)
virtual void DoDispose(void)
Do cleanup.
void injectInterest(const Interest &interest)
Inject interest through internal Face.
uint64_t FaceId
identifies a face
shared_ptr< Face > getFaceById(nfd::FaceId face) const
Get face by face ID.