Strategy implementing per-outgoing face limits. More...
#include <per-out-face-limits.h>
Public Member Functions | |
PerOutFaceLimits () | |
Default constructor. | |
virtual void | WillEraseTimedOutPendingInterest (Ptr< pit::Entry > pitEntry) |
Event fired just before PIT entry is removed by timeout. More... | |
virtual void | AddFace (Ptr< Face > face) |
Event fired every time face is added to NDN stack. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get TypeId of the class. | |
static std::string | GetLogName () |
Helper function to retrieve logging name for the forwarding strategy. | |
Protected Member Functions | |
virtual bool | CanSendOutInterest (Ptr< Face > inFace, Ptr< Face > outFace, Ptr< const Interest > interest, Ptr< pit::Entry > pitEntry) |
Method to check whether Interest can be send out on the particular face or not. More... | |
virtual void | WillSatisfyPendingInterest (Ptr< Face > inFace, Ptr< pit::Entry > pitEntry) |
Even fired just before Interest will be satisfied. More... | |
Static Protected Attributes | |
static LogComponent | g_log = LogComponent (PerOutFaceLimits<Parent>::GetLogName ().c_str ()) |
Logging variable. | |
Strategy implementing per-outgoing face limits.
Definition at line 45 of file per-out-face-limits.h.
|
inlinevirtual |
Event fired every time face is added to NDN stack.
face | face to be removed |
Reimplemented in ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< SmartFlooding > >, ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< BestRoute > >, and ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< Flooding > >.
Definition at line 76 of file per-out-face-limits.h.
|
protectedvirtual |
Method to check whether Interest can be send out on the particular face or not.
In the base class, this method perfoms two checks:
inFace | incoming face of the Interest |
outFace | proposed outgoing face of the Interest |
interest | Interest packet |
pitEntry | reference to PIT entry (reference to corresponding FIB entry inside) |
Reimplemented in ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< SmartFlooding > >, ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< BestRoute > >, and ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< Flooding > >.
Definition at line 134 of file per-out-face-limits.h.
|
virtual |
Event fired just before PIT entry is removed by timeout.
pitEntry | PIT entry to be removed |
Reimplemented in ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< SmartFlooding > >, ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< BestRoute > >, and ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< Flooding > >.
Definition at line 156 of file per-out-face-limits.h.
References ns3::ndn::Limits::ReturnLimit().
|
protectedvirtual |
Even fired just before Interest will be satisfied.
Note that when Interest is satisfied from the cache, incoming face will be 0
inFace | incoming face |
pitEntry | an existing PIT entry, corresponding to the duplicated Interest |
Reimplemented in ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< SmartFlooding > >, ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< BestRoute > >, and ns3::ndn::fw::PerFibLimits< ::ns3::ndn::fw::PerOutFaceLimits< Flooding > >.
Definition at line 175 of file per-out-face-limits.h.
References ns3::ndn::Limits::ReturnLimit().