Classes | |
class | Channel |
represent a channel that communicates on a local endpoint More... | |
class | DatagramTransport |
Implements Transport for datagram-based protocols. More... | |
class | EthernetChannel |
Class implementing Ethernet-based channel to create faces. More... | |
class | EthernetFactory |
protocol factory for Ethernet More... | |
class | EthernetTransport |
Base class for Ethernet-based Transports. More... | |
class | Face |
generalization of a network interface More... | |
class | FaceCounters |
gives access to counters provided by Face More... | |
class | FaceLogHelper |
for internal use by FaceLogging macros More... | |
class | FaceSystem |
entry point of the face system More... | |
class | GenericLinkService |
GenericLinkService is a LinkService that implements the NDNLPv2 protocol. More... | |
class | GenericLinkServiceCounters |
counters provided by GenericLinkService More... | |
class | InternalClientTransport |
implements a client-side transport that can be paired with another More... | |
class | InternalForwarderTransport |
implements a forwarder-side transport that can be paired with another More... | |
class | InternalTransportBase |
abstracts a transport that can be paired with another More... | |
class | LinkService |
the upper part of a Face More... | |
class | LinkServiceCounters |
counters provided by LinkService More... | |
class | LpFragmenter |
fragments network-layer packets into NDNLPv2 link-layer packets More... | |
class | LpReassembler |
reassembles fragmented network-layer packets More... | |
class | LpReliability |
provides for reliable sending and receiving of link-layer packets More... | |
struct | Multicast |
class | MulticastEthernetTransport |
A multicast Transport that uses raw Ethernet II frames. More... | |
class | MulticastUdpTransport |
A Transport that communicates on a UDP multicast group. More... | |
class | PcapHelper |
Helper class for dealing with libpcap handles. More... | |
class | ProtocolFactory |
Provides support for an underlying protocol. More... | |
struct | ProtocolFactoryCtorParams |
Parameters to ProtocolFactory constructor. More... | |
class | StreamTransport |
Implements Transport for stream-based protocols. More... | |
class | TcpChannel |
Class implementing TCP-based channel to create faces. More... | |
class | TcpFactory |
protocol factory for TCP over IPv4 and IPv6 More... | |
class | TcpTransport |
A Transport that communicates on a connected TCP socket. More... | |
class | Transport |
the lower part of a Face More... | |
class | TransportCounters |
counters provided by Transport More... | |
class | UdpChannel |
Class implementing UDP-based channel to create faces. More... | |
class | UdpFactory |
protocol factory for UDP over IPv4 and IPv6 More... | |
struct | Unicast |
class | UnicastEthernetTransport |
A unicast Transport that uses raw Ethernet II frames. More... | |
class | UnicastUdpTransport |
A Transport that communicates on a unicast UDP socket. More... | |
class | UnixStreamChannel |
Class implementing a local channel to create faces. More... | |
class | UnixStreamFactory |
protocol factory for stream-oriented Unix sockets More... | |
class | UnixStreamTransport |
A Transport that communicates on a stream-oriented Unix domain socket. More... | |
class | WebSocketChannel |
Class implementing WebSocket-based channel to create faces. More... | |
class | WebSocketFactory |
protocol factory for WebSocket More... | |
class | WebSocketTransport |
A Transport that communicates on a WebSocket connection. More... | |
class | WebSocketTransportCounters |
counters provided by WebSocketTransport More... | |
Typedefs | |
typedef function< void(const shared_ptr< Face > &newFace)> | FaceCreatedCallback |
Prototype for the callback that is invoked when a face is created (in response to an incoming connection or after a connection is established) More... | |
typedef function< void(uint32_t status, const std::string &reason)> | FaceCreationFailedCallback |
Prototype for the callback that is invoked when a face fails to be created. More... | |
typedef uint64_t | FaceId |
identifies a face More... | |
typedef TransportState | FaceState |
indicates the state of a face More... | |
Enumerations | |
enum | TransportState { TransportState::NONE, TransportState::UP, TransportState::DOWN, TransportState::CLOSING, TransportState::FAILED, TransportState::CLOSED } |
indicates the state of a transport More... | |
Functions | |
std::ostream & | operator<< (std::ostream &os, const Face &face) |
void | connectFaceClosedSignal (Face &face, const std::function< void()> &f) |
invokes a callback when the face is closed More... | |
NFD_REGISTER_PROTOCOL_FACTORY (EthernetFactory) | |
std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< Face > &flh) |
std::tuple< shared_ptr< Face >, shared_ptr< ndn::Face > > | makeInternalFace (ndn::KeyChain &clientKeyChain) |
make a pair of forwarder-side face and client-side face that are connected with each other More... | |
static void | asyncReceive (InternalTransportBase *recipient, const Block &packet) |
std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< LinkService > &flh) |
template<typename T > | |
std::enable_if< std::is_base_of< LinkService, T >::value &&!std::is_same< LinkService, T >::value, std::ostream & >::type | operator<< (std::ostream &os, const FaceLogHelper< T > &flh) |
std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< LpFragmenter > &flh) |
std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< LpReassembler > &flh) |
shared_ptr< Face > | makeNullFace (const FaceUri &uri) |
NFD_REGISTER_PROTOCOL_FACTORY (TcpFactory) | |
std::ostream & | operator<< (std::ostream &os, TransportState state) |
std::ostream & | operator<< (std::ostream &os, const FaceLogHelper< Transport > &flh) |
template<typename T > | |
std::enable_if< std::is_base_of< Transport, T >::value &&!std::is_same< Transport, T >::value, std::ostream & >::type | operator<< (std::ostream &os, const FaceLogHelper< T > &flh) |
NFD_REGISTER_PROTOCOL_FACTORY (UdpFactory) | |
static ndn::optional< ndn::net::NetworkAddress > | getV4Address (const ndn::net::NetworkInterface &netif) |
NFD_REGISTER_PROTOCOL_FACTORY (UnixStreamFactory) | |
NFD_REGISTER_PROTOCOL_FACTORY (WebSocketFactory) | |
static bool | isLoopback (const boost::asio::ip::address &addr) |
typedef function<void(const shared_ptr<Face>& newFace)> nfd::face::FaceCreatedCallback |
Prototype for the callback that is invoked when a face is created (in response to an incoming connection or after a connection is established)
Definition at line 35 of file channel.hpp.
typedef function<void(uint32_t status, const std::string& reason)> nfd::face::FaceCreationFailedCallback |
Prototype for the callback that is invoked when a face fails to be created.
Definition at line 44 of file channel.hpp.
typedef uint64_t nfd::face::FaceId |
typedef TransportState nfd::face::FaceState |
|
strong |
indicates the state of a transport
Enumerator | |
---|---|
NONE | |
UP |
the transport is up and can transmit packets |
DOWN |
the transport is temporarily down, and is being recovered |
CLOSING |
the transport is being closed gracefully, either by the peer or by a call to close() |
FAILED |
the transport is being closed due to a failure |
CLOSED |
the transport is closed, and can be safely deallocated |
Definition at line 41 of file transport.hpp.
|
inline |
Definition at line 89 of file ndn-common.hpp.
References nfd::face::Face::getLocalUri().
void nfd::face::connectFaceClosedSignal | ( | Face & | face, |
const std::function< void()> & | f | ||
) |
invokes a callback when the face is closed
face | the face |
f | the callback to be invoked when the face enters CLOSED state |
This function connects a callback to the afterStateChange signal on the face
, and invokes f
when the state becomes CLOSED.
Definition at line 40 of file channel.cpp.
References nfd::face::Face::afterStateChange, and CLOSED.
Referenced by nfd::FaceTable::addReserved(), nfd::face::TcpChannel::connect(), nfd::face::EthernetFactory::createMulticastFace(), nfd::face::UdpFactory::createMulticastFace(), nfd::face::Channel::getUri(), nfd::face::UdpChannel::listen(), nfd::face::UnixStreamChannel::listen(), nfd::face::EthernetChannel::listen(), and nfd::face::WebSocketChannel::WebSocketChannel().
nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | EthernetFactory | ) |
std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
const FaceLogHelper< Face > & | flh | ||
) |
Definition at line 47 of file face.cpp.
References nfd::face::Face::getId(), nfd::face::Face::getLocalUri(), and nfd::face::Face::getRemoteUri().
std::tuple< shared_ptr< Face >, shared_ptr< ndn::Face > > nfd::face::makeInternalFace | ( | ndn::KeyChain & | clientKeyChain | ) |
make a pair of forwarder-side face and client-side face that are connected with each other
Network-layer packets sent by one face will be received by the other face after io.poll().
clientKeyChain | A KeyChain used by client-side face to sign prefix registration commands. |
Definition at line 35 of file internal-face.cpp.
References nfd::face::GenericLinkService::Options::allowLocalFields.
Referenced by nfd::ignoreRibAndLogSections(), and ns3::ndn::L3Protocol::setCsReplacementPolicy().
|
static |
Definition at line 77 of file internal-transport.cpp.
References nfd::getGlobalIoService(), nfd::detail::SimulatorIo::post(), and nfd::face::InternalTransportBase::receiveFromLink().
Referenced by nfd::face::InternalClientTransport::connectToForwarder().
std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
const FaceLogHelper< LinkService > & | flh | ||
) |
Definition at line 124 of file link-service.cpp.
References nfd::face::Face::getId(), nfd::face::Face::getLocalUri(), and nfd::face::Face::getRemoteUri().
std::enable_if<std::is_base_of<LinkService, T>::value && !std::is_same<LinkService, T>::value, std::ostream&>::type nfd::face::operator<< | ( | std::ostream & | os, |
const FaceLogHelper< T > & | flh | ||
) |
Definition at line 248 of file link-service.hpp.
std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
const FaceLogHelper< LpFragmenter > & | flh | ||
) |
Definition at line 150 of file lp-fragmenter.cpp.
std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
const FaceLogHelper< LpReassembler > & | flh | ||
) |
Definition at line 164 of file lp-reassembler.cpp.
Definition at line 37 of file null-face.cpp.
References ndn::nfd::FACE_SCOPE_LOCAL.
Referenced by nfd::Nfd::initialize(), and ns3::ndn::L3Protocol::~L3Protocol().
nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | TcpFactory | ) |
std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
TransportState | state | ||
) |
std::ostream & nfd::face::operator<< | ( | std::ostream & | os, |
const FaceLogHelper< Transport > & | flh | ||
) |
Definition at line 214 of file transport.cpp.
References nfd::face::Transport::getFace(), nfd::face::Face::getId(), nfd::face::Transport::getLocalUri(), nfd::face::Transport::getRemoteUri(), and INVALID_FACEID.
std::enable_if<std::is_base_of<Transport, T>::value && !std::is_same<Transport, T>::value, std::ostream&>::type nfd::face::operator<< | ( | std::ostream & | os, |
const FaceLogHelper< T > & | flh | ||
) |
Definition at line 468 of file transport.hpp.
nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | UdpFactory | ) |
|
static |
Definition at line 391 of file udp-factory.cpp.
References nfd::face::ProtocolFactory::addFace, nfd::face::UdpFactory::createMulticastFace(), ndn::net::NetworkInterface::getNetworkAddresses(), INVALID_FACEID, nfd::face::ProtocolFactory::netmon, NFD_LOG_DEBUG, and ndn::nullopt.
nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | UnixStreamFactory | ) |
nfd::face::NFD_REGISTER_PROTOCOL_FACTORY | ( | WebSocketFactory | ) |
|
static |
Definition at line 34 of file websocket-transport.cpp.
Referenced by nfd::face::WebSocketTransport::WebSocketTransport().
Definition at line 38 of file ethernet-channel.cpp.
Definition at line 35 of file ethernet-factory.cpp.
Definition at line 38 of file ethernet-transport.cpp.
Definition at line 34 of file face-system.cpp.
const FaceId nfd::face::INVALID_FACEID = 0 |
indicates an invalid FaceId
Definition at line 42 of file face.hpp.
Referenced by nfd::FaceTable::add(), nfd::FaceTable::addReserved(), nfd::fw::AccessStrategy::afterReceiveInterest(), nfd::fw::AccessStrategy::beforeSatisfyInterest(), nfd::face::EthernetFactory::createMulticastFace(), nfd::Forwarder::Forwarder(), getV4Address(), operator<<(), ns3::ndn::L3RateTracer::Print(), ns3::ndn::L3RateTracer::SatisfiedInterests(), nfd::FaceManager::setConfigFile(), and ns3::ndn::L3RateTracer::TimedOutInterests().
const FaceId nfd::face::FACEID_INTERNAL_FACE = 1 |
identifies the InternalFace used in management
Definition at line 44 of file face.hpp.
Referenced by nfd::ignoreRibAndLogSections(), and ns3::ndn::L3Protocol::setCsReplacementPolicy().
const FaceId nfd::face::FACEID_CONTENT_STORE = 254 |
identifies a packet comes from the ContentStore
Definition at line 46 of file face.hpp.
Referenced by nfd::Forwarder::Forwarder(), and nfd::Nfd::initialize().
const FaceId nfd::face::FACEID_NULL = 255 |
identifies the NullFace that drops every packet
Definition at line 48 of file face.hpp.
Referenced by nfd::Nfd::initialize(), and ns3::ndn::L3Protocol::~L3Protocol().
const FaceId nfd::face::FACEID_RESERVED_MAX = 255 |
upper bound of reserved FaceIds
Definition at line 50 of file face.hpp.
Referenced by nfd::FaceTable::add(), and nfd::FaceTable::addReserved().
Definition at line 32 of file generic-link-service.cpp.
Definition at line 32 of file internal-transport.cpp.
Definition at line 74 of file internal-transport.cpp.
Definition at line 32 of file link-service.cpp.
Definition at line 33 of file lp-fragmenter.cpp.
|
static |
maximum overhead on a single fragment, not counting other NDNLPv2 headers
Definition at line 44 of file lp-fragmenter.cpp.
|
static |
maximum overhead of adding fragmentation to payload, not counting other NDNLPv2 headers
Definition at line 52 of file lp-fragmenter.cpp.
Referenced by nfd::face::LpFragmenter::fragmentPacket().
Definition at line 33 of file lp-reassembler.cpp.
Definition at line 49 of file multicast-ethernet-transport.cpp.
Definition at line 32 of file multicast-udp-transport.cpp.
Definition at line 32 of file multicast-udp-transport.cpp.
Definition at line 32 of file multicast-udp-transport.cpp.
Definition at line 34 of file tcp-channel.cpp.
Definition at line 35 of file tcp-factory.cpp.
Definition at line 31 of file tcp-transport.cpp.
Definition at line 31 of file tcp-transport.cpp.
Definition at line 32 of file transport.cpp.
const ssize_t nfd::face::MTU_UNLIMITED = -1 |
indicates the transport has no limit on payload size
Definition at line 95 of file transport.hpp.
Referenced by nfd::face::InternalForwarderTransport::InternalForwarderTransport(), nfd::face::LpReliability::piggyback(), nfd::face::Transport::receive(), nfd::face::Transport::send(), nfd::face::GenericLinkService::setOptions(), nfd::face::TcpTransport::TcpTransport(), nfd::face::UnixStreamTransport::UnixStreamTransport(), and nfd::face::WebSocketTransport::WebSocketTransport().
const ssize_t nfd::face::MTU_INVALID = -2 |
(for internal use) indicates MTU field is unset
Definition at line 99 of file transport.hpp.
Definition at line 34 of file udp-channel.cpp.
Definition at line 46 of file udp-factory.cpp.
Definition at line 33 of file unicast-ethernet-transport.cpp.
Definition at line 39 of file unicast-udp-transport.cpp.
Definition at line 37 of file unix-stream-channel.cpp.
Referenced by nfd::face::UnixStreamChannel::Error::Error().
Definition at line 33 of file unix-stream-factory.cpp.
Definition at line 31 of file unix-stream-transport.cpp.
Definition at line 34 of file websocket-channel.cpp.
Definition at line 33 of file websocket-factory.cpp.
Definition at line 31 of file websocket-transport.cpp.