26 #ifndef NFD_DAEMON_FACE_LINK_SERVICE_HPP
27 #define NFD_DAEMON_FACE_LINK_SERVICE_HPP
132 sendNack(
const ndn::lp::Nack& nack);
186 doSendInterest(
const Interest& interest) = 0;
191 doSendData(
const Data& data) = 0;
196 doSendNack(
const lp::Nack& nack) = 0;
200 doReceivePacket(
const Block& packet,
const EndpointId& endpoint) = 0;
234 return m_transport->
getMtu();
240 doReceivePacket(packet, endpoint);
246 m_transport->
send(packet);
253 typename std::enable_if<std::is_base_of<LinkService, T>::value &&
254 !std::is_same<LinkService, T>::value, std::ostream&>::type
257 return os << FaceLogHelper<LinkService>(flh.
obj);
represents a counter of number of packets
generalization of a network interface
For internal use by FaceLogging macros.
counters provided by LinkService
PacketCounter nOutData
count of outgoing Data packets
PacketCounter nOutInterests
count of outgoing Interests
PacketCounter nOutNacks
count of outgoing Nacks
PacketCounter nInInterests
count of incoming Interests
PacketCounter nInData
count of incoming Data packets
PacketCounter nInNacks
count of incoming Nacks
PacketCounter nInterestsExceededRetx
count of Interests dropped by reliability system for exceeding allowed number of retx
void sendData(const Data &data)
Send Data.
const Transport * getTransport() const
signal::Signal< LinkService, Interest, EndpointId > afterReceiveInterest
signals on Interest received
void receiveNack(const lp::Nack &nack, const EndpointId &endpoint)
delivers received Nack to forwarding
void receiveInterest(const Interest &interest, const EndpointId &endpoint)
delivers received Interest to forwarding
void notifyDroppedInterest(const Interest &packet)
signal::Signal< LinkService, Interest > onDroppedInterest
signals on Interest dropped by reliability system for exceeding allowed number of retx
void receiveData(const Data &data, const EndpointId &endpoint)
delivers received Data to forwarding
void receivePacket(const Block &packet, const EndpointId &endpoint)
performs LinkService specific operations to receive a lower-layer packet
signal::Signal< LinkService, lp::Nack, EndpointId > afterReceiveNack
signals on Nack received
const Face * getFace() const
void sendNack(const ndn::lp::Nack &nack)
Send Nack.
void sendPacket(const Block &packet)
send a lower-layer packet via Transport
signal::Signal< LinkService, Data, EndpointId > afterReceiveData
signals on Data received
void sendInterest(const Interest &interest)
Send Interest.
virtual ssize_t getEffectiveMtu() const
LinkServiceCounters Counters
counters provided by LinkService
virtual const Counters & getCounters() const
void setFaceAndTransport(Face &face, Transport &transport)
set Face and Transport for LinkService
The lower half of a Face.
void send(const Block &packet)
Send a link-layer packet.
std::ostream & operator<<(std::ostream &os, const FaceLogHelper< Face > &flh)
uint64_t EndpointId
Identifies a remote endpoint on the link.
Copyright (c) 2014-2015, Regents of the University of California, Arizona Board of Regents,...