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, const EndpointId &endpointId) |
send Interest to endpointId More... | |
void | sendData (const Data &data, const EndpointId &endpointId) |
send Data to endpointId More... | |
void | sendNack (const lp::Nack &nack, const EndpointId &endpointId) |
send Nack to endpointId 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, EndpointId > & | afterReceiveInterest |
signals on Interest received More... | |
signal::Signal< LinkService, Data, EndpointId > & | afterReceiveData |
signals on Data received More... | |
signal::Signal< LinkService, lp::Nack, EndpointId > & | 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 |
Definition at line 184 of file face.hpp.
Referenced by nfd::copyFaceProperties(), nfd::makeFaceStatus(), nfd::makeUpdateFaceResponse(), and nfd::updateLinkServiceOptions().
|
inline |
Definition at line 190 of file face.hpp.
Referenced by nfd::copyMtu().
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 214 of file face.hpp.
Referenced by nfd::fw::Strategy::afterNewNextHop(), nfd::fw::NccStrategy::afterReceiveInterest(), nfd::fw::MulticastStrategy::afterReceiveInterest(), nfd::fw::asf::AsfStrategy::afterReceiveInterest(), nfd::fw::asf::AsfStrategy::afterReceiveNack(), nfd::fw::SelfLearningStrategy::afterReceiveNack(), nfd::fw::asf::AsfStrategy::beforeSatisfyInterest(), nfd::copyFaceProperties(), nfd::fw::asf::ProbingModule::getFaceToProbe(), nfd::fw::isNextHopEligible(), nfd::makeUpdateFaceResponse(), nfd::matchFilter(), nfd::face::operator<<(), nfd::operator<<(), nfd::fw::ProcessNackTraitsBase::processNack(), and nfd::fw::Strategy::sendDataToAll().
|
inline |
|
inline |
Definition at line 238 of file face.hpp.
Referenced by nfd::copyFaceProperties(), nfd::makeCreateFaceResponse(), nfd::matchFilter(), and nfd::face::operator<<().
|
inline |
Definition at line 244 of file face.hpp.
Referenced by nfd::copyFaceProperties(), nfd::makeCreateFaceResponse(), nfd::matchFilter(), and nfd::face::operator<<().
|
inline |
Definition at line 250 of file face.hpp.
Referenced by nfd::copyFaceProperties(), nfd::fw::AdmitLocalUnsolicitedDataPolicy::decide(), nfd::fw::AdmitNetworkUnsolicitedDataPolicy::decide(), nfd::matchFilter(), nfd::updateLinkServiceOptions(), and nfd::fw::wouldViolateScope().
|
inline |
Definition at line 256 of file face.hpp.
Referenced by nfd::copyFaceProperties(), nfd::makeUpdateFaceResponse(), and nfd::matchFilter().
|
inline |
|
inline |
Definition at line 268 of file face.hpp.
Referenced by nfd::fw::MulticastStrategy::afterReceiveInterest(), nfd::copyFaceProperties(), nfd::fw::isNextHopEligible(), and nfd::matchFilter().
|
inline |
|
inline |
time::steady_clock::TimePoint::max() | the face has an indefinite lifetime |
Definition at line 280 of file face.hpp.
Referenced by nfd::makeFaceStatus().
|
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 |
Definition at line 292 of file face.hpp.
Referenced by nfd::makeFaceStatus().
signal::Signal<LinkService, Interest, EndpointId>& nfd::face::Face::afterReceiveInterest |
signals on Interest received
Definition at line 81 of file face.hpp.
Referenced by nfd::Forwarder::Forwarder().
signal::Signal<LinkService, Data, EndpointId>& nfd::face::Face::afterReceiveData |
signals on Data received
Definition at line 85 of file face.hpp.
Referenced by nfd::Forwarder::Forwarder().
signal::Signal<LinkService, lp::Nack, EndpointId>& nfd::face::Face::afterReceiveNack |
signals on Nack received
Definition at line 89 of file face.hpp.
Referenced by nfd::Forwarder::Forwarder().
signal::Signal<LinkService, Interest>& nfd::face::Face::onDroppedInterest |
signals on Interest dropped by reliability system for exceeding allowed number of retx
Definition at line 93 of file face.hpp.
Referenced by nfd::Forwarder::Forwarder().
signal::Signal<Transport, FaceState, FaceState>& nfd::face::Face::afterStateChange |
signals after face state changed
Definition at line 151 of file face.hpp.
Referenced by nfd::face::connectFaceClosedSignal().