nfd::face::LinkService Class Referenceabstract

the upper part of a Face More...

#include <daemon/face/link-service.hpp>

+ Inheritance diagram for nfd::face::LinkService:
+ Collaboration diagram for nfd::face::LinkService:

Public Types

typedef LinkServiceCounters Counters
 counters provided by LinkService More...
 

Public Member Functions

 LinkService ()
 
virtual ~LinkService ()
 
virtual const CountersgetCounters () const
 
virtual ssize_t getEffectiveMtu () const
 
const FacegetFace () const
 
const TransportgetTransport () const
 
TransportgetTransport ()
 
void receivePacket (const Block &packet, const EndpointId &endpoint)
 performs LinkService specific operations to receive a lower-layer packet More...
 
void sendData (const Data &data)
 Send Data. More...
 
void sendInterest (const Interest &interest)
 Send Interest. More...
 
void sendNack (const ndn::lp::Nack &nack)
 Send Nack. More...
 
void setFaceAndTransport (Face &face, Transport &transport)
 set Face and Transport for LinkService More...
 

Public Attributes

signal::Signal< LinkService, Data, EndpointIdafterReceiveData
 signals on Data received More...
 
signal::Signal< LinkService, Interest, EndpointIdafterReceiveInterest
 signals on Interest received More...
 
signal::Signal< LinkService, lp::Nack, EndpointIdafterReceiveNack
 signals on Nack received More...
 
signal::Signal< LinkService, Interest > onDroppedInterest
 signals on Interest dropped by reliability system for exceeding allowed number of retx More...
 

Protected Member Functions

void notifyDroppedInterest (const Interest &packet)
 
void receiveData (const Data &data, const EndpointId &endpoint)
 delivers received Data to forwarding More...
 
void receiveInterest (const Interest &interest, const EndpointId &endpoint)
 delivers received Interest to forwarding More...
 
void receiveNack (const lp::Nack &nack, const EndpointId &endpoint)
 delivers received Nack to forwarding More...
 
void sendPacket (const Block &packet)
 send a lower-layer packet via Transport More...
 

Protected Attributes

PacketCounter nInData
 count of incoming Data packets More...
 
PacketCounter nInInterests
 count of incoming Interests More...
 
PacketCounter nInNacks
 count of incoming Nacks More...
 
PacketCounter nInterestsExceededRetx
 count of Interests dropped by reliability system for exceeding allowed number of retx More...
 
PacketCounter nOutData
 count of outgoing Data packets More...
 
PacketCounter nOutInterests
 count of outgoing Interests More...
 
PacketCounter nOutNacks
 count of outgoing Nacks More...
 

Detailed Description

the upper part of a Face

See also
Face

Definition at line 75 of file link-service.hpp.

Member Typedef Documentation

◆ Counters

counters provided by LinkService

Definition at line 80 of file link-service.hpp.

Constructor & Destructor Documentation

◆ LinkService()

nfd::face::LinkService::LinkService ( )

Definition at line 34 of file link-service.cpp.

◆ ~LinkService()

nfd::face::LinkService::~LinkService ( )
virtual

Definition at line 40 of file link-service.cpp.

Member Function Documentation

◆ getCounters()

const LinkService::Counters & nfd::face::LinkService::getCounters ( ) const
inlinevirtual

Reimplemented in nfd::face::GenericLinkService.

Definition at line 226 of file link-service.hpp.

◆ getEffectiveMtu()

ssize_t nfd::face::LinkService::getEffectiveMtu ( ) const
inlinevirtual

Reimplemented in nfd::face::GenericLinkService.

Definition at line 232 of file link-service.hpp.

◆ getFace()

const Face * nfd::face::LinkService::getFace ( ) const
inline
Returns
Face to which this LinkService is attached

Definition at line 208 of file link-service.hpp.

◆ getTransport() [1/2]

const Transport * nfd::face::LinkService::getTransport ( ) const
inline
Returns
Transport to which this LinkService is attached

Definition at line 214 of file link-service.hpp.

◆ getTransport() [2/2]

Transport * nfd::face::LinkService::getTransport ( )
inline
Returns
Transport to which this LinkService is attached

Definition at line 220 of file link-service.hpp.

◆ notifyDroppedInterest()

void nfd::face::LinkService::notifyDroppedInterest ( const Interest &  packet)
protected

Definition at line 118 of file link-service.cpp.

◆ receiveData()

void nfd::face::LinkService::receiveData ( const Data &  data,
const EndpointId endpoint 
)
protected

delivers received Data to forwarding

Definition at line 98 of file link-service.cpp.

◆ receiveInterest()

void nfd::face::LinkService::receiveInterest ( const Interest &  interest,
const EndpointId endpoint 
)
protected

delivers received Interest to forwarding

Definition at line 88 of file link-service.cpp.

◆ receiveNack()

void nfd::face::LinkService::receiveNack ( const lp::Nack &  nack,
const EndpointId endpoint 
)
protected

delivers received Nack to forwarding

Definition at line 108 of file link-service.cpp.

◆ receivePacket()

void nfd::face::LinkService::receivePacket ( const Block &  packet,
const EndpointId endpoint 
)
inline

performs LinkService specific operations to receive a lower-layer packet

Definition at line 238 of file link-service.hpp.

◆ sendData()

void nfd::face::LinkService::sendData ( const Data &  data)

Send Data.

Precondition
setTransport has been called

Definition at line 66 of file link-service.cpp.

◆ sendInterest()

void nfd::face::LinkService::sendInterest ( const Interest &  interest)

Send Interest.

Precondition
setTransport has been called

Definition at line 55 of file link-service.cpp.

◆ sendNack()

void nfd::face::LinkService::sendNack ( const ndn::lp::Nack &  nack)

Send Nack.

Precondition
setTransport has been called

Definition at line 77 of file link-service.cpp.

◆ sendPacket()

void nfd::face::LinkService::sendPacket ( const Block &  packet)
inlineprotected

send a lower-layer packet via Transport

Definition at line 244 of file link-service.hpp.

◆ setFaceAndTransport()

void nfd::face::LinkService::setFaceAndTransport ( Face face,
Transport transport 
)

set Face and Transport for LinkService

Precondition
setFaceAndTransport has not been called

Definition at line 45 of file link-service.cpp.

Member Data Documentation

◆ afterReceiveData

signal::Signal<LinkService, Data, EndpointId> nfd::face::LinkService::afterReceiveData

signals on Data received

Definition at line 140 of file link-service.hpp.

◆ afterReceiveInterest

signal::Signal<LinkService, Interest, EndpointId> nfd::face::LinkService::afterReceiveInterest

signals on Interest received

Definition at line 136 of file link-service.hpp.

◆ afterReceiveNack

signal::Signal<LinkService, lp::Nack, EndpointId> nfd::face::LinkService::afterReceiveNack

signals on Nack received

Definition at line 144 of file link-service.hpp.

◆ nInData

PacketCounter nfd::face::LinkServiceCounters::nInData
inherited

count of incoming Data packets

Definition at line 57 of file link-service.hpp.

◆ nInInterests

PacketCounter nfd::face::LinkServiceCounters::nInInterests
inherited

count of incoming Interests

Definition at line 45 of file link-service.hpp.

◆ nInNacks

PacketCounter nfd::face::LinkServiceCounters::nInNacks
inherited

count of incoming Nacks

Definition at line 65 of file link-service.hpp.

◆ nInterestsExceededRetx

PacketCounter nfd::face::LinkServiceCounters::nInterestsExceededRetx
inherited

count of Interests dropped by reliability system for exceeding allowed number of retx

Definition at line 53 of file link-service.hpp.

◆ nOutData

PacketCounter nfd::face::LinkServiceCounters::nOutData
inherited

count of outgoing Data packets

Definition at line 61 of file link-service.hpp.

◆ nOutInterests

PacketCounter nfd::face::LinkServiceCounters::nOutInterests
inherited

count of outgoing Interests

Definition at line 49 of file link-service.hpp.

◆ nOutNacks

PacketCounter nfd::face::LinkServiceCounters::nOutNacks
inherited

count of outgoing Nacks

Definition at line 69 of file link-service.hpp.

◆ onDroppedInterest

signal::Signal<LinkService, Interest> nfd::face::LinkService::onDroppedInterest

signals on Interest dropped by reliability system for exceeding allowed number of retx

Definition at line 148 of file link-service.hpp.