generalization of a network interface More...
#include <face.hpp>
Public Member Functions | |
Face (unique_ptr< LinkService > service, unique_ptr< Transport > transport) | |
LinkService * | getLinkService () const |
Transport * | getTransport () const |
void | sendInterest (const Interest &interest) |
sends Interest on Face More... | |
void | sendData (const Data &data) |
sends Data on Face More... | |
void | sendNack (const lp::Nack &nack) |
sends Nack on Face More... | |
FaceId | getId () const |
void | setId (FaceId id) |
sets face ID More... | |
void | setMetric (uint64_t metric) |
uint64_t | getMetric () const |
FaceUri | getLocalUri () const |
FaceUri | getRemoteUri () const |
ndn::nfd::FaceScope | getScope () const |
ndn::nfd::FacePersistency | getPersistency () const |
void | setPersistency (ndn::nfd::FacePersistency persistency) |
changes face persistency setting More... | |
ndn::nfd::LinkType | getLinkType () const |
FaceState | getState () const |
time::steady_clock::TimePoint | getExpirationTime () const |
void | close () |
request the face to be closed More... | |
const FaceCounters & | getCounters () const |
Public Attributes | |
signal::Signal< LinkService, Interest > & | afterReceiveInterest |
signals on Interest received More... | |
signal::Signal< LinkService, Data > & | afterReceiveData |
signals on Data received More... | |
signal::Signal< LinkService, lp::Nack > & | afterReceiveNack |
signals on Nack received More... | |
signal::Signal< LinkService, Interest > & | onDroppedInterest |
signals on Interest dropped by reliability system for exceeding allowed number of retx More... | |
signal::Signal< Transport, FaceState, FaceState > & | afterStateChange |
signals after face state changed More... | |
generalization of a network interface
A face generalizes a network interface. It provides best-effort network-layer packet delivery services on a physical interface, an overlay tunnel, or a link to a local application.
A face combines two parts: LinkService and Transport. Transport is the lower part, which provides best-effort TLV block deliveries. LinkService is the upper part, which translates between network-layer packets and TLV blocks, and may provide additional services such as fragmentation and reassembly.
nfd::face::Face::Face | ( | unique_ptr< LinkService > | service, |
unique_ptr< Transport > | transport | ||
) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 233 of file face.hpp.
Referenced by nfd::fw::NccStrategy::afterReceiveInterest(), nfd::fw::MulticastStrategy::afterReceiveInterest(), nfd::fw::asf::AsfStrategy::afterReceiveInterest(), nfd::fw::AccessStrategy::afterReceiveInterest(), nfd::fw::BestRouteStrategy2::afterReceiveInterest(), nfd::fw::asf::AsfStrategy::afterReceiveNack(), nfd::fw::Strategy::afterReceiveNack(), nfd::fw::asf::AsfStrategy::beforeSatisfyInterest(), nfd::fw::AccessStrategy::beforeSatisfyInterest(), nfd::fw::Strategy::beforeSatisfyInterest(), nfd::fw::asf::ProbingModule::getFaceToProbe(), nfd::fw::isNextHopEligible(), nfd::fw::Strategy::onDroppedInterest(), nfd::fw::ProcessNackTraitsBase::processNack(), and nfd::fw::asf::FaceInfo::recordRtt().
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 269 of file face.hpp.
Referenced by nfd::fw::AdmitLocalUnsolicitedDataPolicy::decide(), nfd::fw::AdmitNetworkUnsolicitedDataPolicy::decide(), and nfd::fw::wouldViolateScope().
|
inline |
|
inline |
|
inline |
Definition at line 287 of file face.hpp.
Referenced by nfd::fw::MulticastStrategy::afterReceiveInterest(), and nfd::fw::isNextHopEligible().
|
inline |
|
inline |
|
inline |
request the face to be closed
This operation is effective only if face is in UP or DOWN state, otherwise it has no effect. The face changes state to CLOSING, and performs cleanup procedure. The state will be changed to CLOSED when cleanup is complete, which may happen synchronously or asynchronously.
|
inline |
signal::Signal<LinkService, Interest>& nfd::face::Face::afterReceiveInterest |
signal::Signal<LinkService, Data>& nfd::face::Face::afterReceiveData |
signal::Signal<LinkService, lp::Nack>& nfd::face::Face::afterReceiveNack |
signal::Signal<LinkService, Interest>& nfd::face::Face::onDroppedInterest |
signal::Signal<Transport, FaceState, FaceState>& nfd::face::Face::afterStateChange |