NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.3: NDN, CCN, CCNx, content centric networks
API Documentation
nfd::face::GenericLinkService Class Reference

GenericLinkService is a LinkService that implements the NDNLPv2 protocol. More...

#include <generic-link-service.hpp>

Inheritance diagram for nfd::face::GenericLinkService:
Collaboration diagram for nfd::face::GenericLinkService:

Classes

class  Options
 Options that control the behavior of GenericLinkService. More...
 

Public Types

using Counters = GenericLinkServiceCounters
 counters provided by GenericLinkService More...
 
- Public Types inherited from nfd::face::LinkService
typedef LinkServiceCounters Counters
 counters provided by LinkService More...
 

Public Member Functions

 GenericLinkService (const Options &options=Options())
 
const OptionsgetOptions () const
 get Options used by GenericLinkService More...
 
void setOptions (const Options &options)
 sets Options used by GenericLinkService More...
 
const CountersgetCounters () const override
 
- Public Member Functions inherited from nfd::face::LinkService
 LinkService ()
 
virtual ~LinkService ()
 
void setFaceAndTransport (Face &face, Transport &transport)
 set Face and Transport for LinkService More...
 
const FacegetFace () const
 
const TransportgetTransport () const
 
TransportgetTransport ()
 
void sendInterest (const Interest &interest)
 send Interest More...
 
void sendData (const Data &data)
 send Data More...
 
void sendNack (const ndn::lp::Nack &nack)
 send Nack More...
 
void receivePacket (Transport::Packet &&packet)
 performs LinkService specific operations to receive a lower-layer packet More...
 

Friends

class LpReliability
 

Additional Inherited Members

- Public Attributes inherited from nfd::face::LinkService
signal::Signal< LinkService, InterestafterReceiveInterest
 signals on Interest received More...
 
signal::Signal< LinkService, DataafterReceiveData
 signals on Data received More...
 
signal::Signal< LinkService, lp::NackafterReceiveNack
 signals on Nack received More...
 
signal::Signal< LinkService, InterestafterSendInterest
 signals on Interest sent More...
 
signal::Signal< LinkService, DataafterSendData
 signals on Data sent More...
 
signal::Signal< LinkService, lp::NackafterSendNack
 signals on Nack sent More...
 
- Protected Member Functions inherited from nfd::face::LinkService
void receiveInterest (const Interest &interest)
 delivers received Interest to forwarding More...
 
void receiveData (const Data &data)
 delivers received Data to forwarding More...
 
void receiveNack (const lp::Nack &nack)
 delivers received Nack to forwarding More...
 
void sendPacket (Transport::Packet &&packet)
 sends a lower-layer packet via Transport More...
 
- Protected Attributes inherited from nfd::face::LinkServiceCounters
PacketCounter nInInterests
 count of incoming Interests More...
 
PacketCounter nOutInterests
 count of outgoing Interests More...
 
PacketCounter nInData
 count of incoming Data More...
 
PacketCounter nOutData
 count of outgoing Data More...
 
PacketCounter nInNacks
 count of incoming Nacks More...
 
PacketCounter nOutNacks
 count of outgoing Nacks More...
 
- Protected Attributes inherited from nfd::face::GenericLinkServiceCounters
PacketCounter nFragmentationErrors
 count of failed fragmentations More...
 
PacketCounter nOutOverMtu
 count of outgoing LpPackets dropped due to exceeding MTU limit More...
 
PacketCounter nInLpInvalid
 count of invalid LpPackets dropped before reassembly More...
 
SizeCounter< LpReassemblernReassembling
 count of network-layer packets currently being reassembled More...
 
PacketCounter nReassemblyTimeouts
 count of dropped partial network-layer packets due to reassembly timeout More...
 
PacketCounter nInNetInvalid
 count of invalid reassembled network-layer packets dropped More...
 
PacketCounter nAcknowledged
 count of network-layer packets that did not require retransmission of a fragment More...
 
PacketCounter nRetransmitted
 count of network-layer packets that had at least one fragment retransmitted, but were eventually received in full More...
 
PacketCounter nRetxExhausted
 count of network-layer packets dropped because a fragment reached the maximum number of retransmissions More...
 

Detailed Description

GenericLinkService is a LinkService that implements the NDNLPv2 protocol.

See also
https://redmine.named-data.net/projects/nfd/wiki/NDNLPv2

Definition at line 88 of file generic-link-service.hpp.

Member Typedef Documentation

Constructor & Destructor Documentation

nfd::face::GenericLinkService::GenericLinkService ( const Options options = Options())
explicit

Member Function Documentation

const GenericLinkService::Options & nfd::face::GenericLinkService::getOptions ( ) const
inline

get Options used by GenericLinkService

Definition at line 259 of file generic-link-service.hpp.

Referenced by nfd::FaceManager::setConfigFile().

void nfd::face::GenericLinkService::setOptions ( const Options options)

sets Options used by GenericLinkService

Definition at line 53 of file generic-link-service.cpp.

References ndn::lp::Packet::add(), nfd::face::GenericLinkService::Options::allowFragmentation, nfd::face::GenericLinkService::Options::allowLocalFields, nfd::face::GenericLinkService::Options::allowReassembly, ndn::tlv::Data, nfd::face::GenericLinkService::Options::fragmenterOptions, nfd::face::LpFragmenter::fragmentPacket(), ndn::lp::Packet::get(), ndn::lp::Nack::getHeader(), ndn::lp::Nack::getInterest(), nfd::face::Transport::getMtu(), ndn::TagHost::getTag(), nfd::face::LinkService::getTransport(), nfd::face::LpReliability::handleOutgoing(), ndn::lp::Packet::has(), ndn::tlv::Interest, nfd::face::LpReliability::Options::isEnabled, nfd::face::MTU_UNLIMITED, NFD_LOG_FACE_TRACE, NFD_LOG_FACE_WARN, nfd::face::GenericLinkServiceCounters::nFragmentationErrors, nfd::face::GenericLinkServiceCounters::nInLpInvalid, nfd::face::GenericLinkServiceCounters::nInNetInvalid, nfd::face::GenericLinkServiceCounters::nOutOverMtu, nfd::face::LpReliability::piggyback(), nfd::face::LpReliability::processIncomingPacket(), nfd::face::GenericLinkService::Options::reassemblerOptions, nfd::face::LinkService::receiveData(), nfd::face::LpReassembler::receiveFragment(), nfd::face::LinkService::receiveInterest(), nfd::face::LinkService::receiveNack(), nfd::face::GenericLinkService::Options::reliabilityOptions, nfd::face::LpReliability::RESERVED_HEADER_SPACE, nfd::face::LinkService::sendPacket(), ndn::lp::Packet::set(), ndn::lp::Nack::setHeader(), nfd::face::LpFragmenter::setOptions(), nfd::face::LpReassembler::setOptions(), nfd::face::LpReliability::setOptions(), ndn::TagHost::setTag(), ndn::Block::type(), ndn::Data::wireEncode(), and ndn::Interest::wireEncode().

const GenericLinkService::Counters & nfd::face::GenericLinkService::getCounters ( ) const
inlineoverridevirtual

Reimplemented from nfd::face::LinkService.

Definition at line 265 of file generic-link-service.hpp.

Friends And Related Function Documentation

friend class LpReliability
friend

Definition at line 255 of file generic-link-service.hpp.


The documentation for this class was generated from the following files: