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>
114 getStrategyChoiceManager();
125 addFace(shared_ptr<Face>
face);
145 getFaceByNetDevice(Ptr<NetDevice> netDevice)
const;
157 injectInterest(
const Interest& interest);
168 static Ptr<L3Protocol>
169 getL3Protocol(Ptr<Object> node);
172 typedef void (*InterestTraceCallback)(
const Interest&,
const Face&);
173 typedef void (*DataTraceCallback)(
const Data&,
const Face&);
175 typedef void (*SatisfiedInterestsCallback)(
const nfd::pit::Entry& pitEntry,
const Face& inFace,
const Data& data);
189 NotifyNewAggregate();
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;
219 TracedCallback<
const nfd::pit::Entry&,
const Face&,
const Data&> m_satisfiedInterests;
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.
static const uint16_t ETHERNET_FRAME_TYPE
Ethernet Frame Type of Ndn.
implement the Strategy Choice Management of NFD Management Protocol.
std::function< std::unique_ptr< nfd::cs::Policy >)> PolicyCreationCallback
represents a CS replacement policy
Copyright (c) 2011-2015 Regents of the University of California.
Copyright (c) 2011-2015 Regents of the University of California.
boost::property_tree::ptree ConfigSection
ndn L3Protocol
Copyright (c) 2011-2015 Regents of the University of California.
Implementation network-layer of NDN stack.
uint64_t FaceId
identifies a face